通过Evan Yares,软件高级编辑和分析师
第一个CAD系统创建于20世纪60年代早期。现代CAD程序从未跟上。
1963年1月,麻省理工学院的博士候选人Ivan Sutherland提交了他的论文,题为“Sketchpad:一个人机图形通信系统”,描述了他在创建现在公认的第一个交互式CAD系统中的工作。
画板在麻省理工学院林肯实验室的TX-2电脑上运行。在当时,它是世界上最大的机器之一,拥有306千字节的核心内存。它不同于大多数当代计算机,因为它被设计用来测试人机交互。除了标准的I/O设备外,TX-2还有用于输入命令的可编程按钮、示波器/视频显示屏(可寻址到1024×1024像素)、用于输入的光笔和用于输出的笔式绘图仪。在某种程度上,这是第一台个人电脑,尽管它占据了一整栋楼。
与早期面向批处理的计算机应用程序不同,Sketchpad是交互式的。使用光笔和输入按钮,您可以使用十字准星光标直接在屏幕上绘制。该程序支持点、线段和弧线作为基本元素,但允许将它们保存到主图中,可以复制或实例化。这个设备被用来创建字母数字字符符号和电气原理图符号。
使Sketchpad真正脱颖而出的一件事是它的约束管理子系统。它不仅支持显式约束(在实体绘制后添加到实体中),还支持隐式约束(在实体绘制时创建)。例如,如果您开始画一条线,并将光标移到另一条线的端点附近,它将锁定该端点。它会记住这两条线是相连的。如果在编辑时,您移动了一行,那么另一行也会随之移动。
Sketchpad包含17种不同类型的约束,包括垂直、水平、垂直、重合、平行、对齐、大小相等等等。这些本地(或“原子”)约束可以组合起来,以创建更复杂的关系。Sketchpad甚至允许在屏幕上可视化地显示约束,使用图标(符号)来表示每种类型。
使用约束系统,可以松散地绘制形状,然后添加几何和拓扑关系,将其修改为所需的确切形状。甚至可以使用约束来对格架进行结构分析,例如在悬臂桥和拱桥上可能会发现的结构分析。
从视觉上看,Sketchpad具有令人惊讶的交互性。在绘制或编辑实体时,它支持橡皮带(rubberbanding)(因此实体会随着您移动光标而拉伸)。它支持实体的动态移动、旋转和缩放(这意味着当您移动光标时,实体也会移动、旋转和缩放)。它不仅支持缩放和平移(当然是动态的),而且是透明的——即使你正在进行另一个绘图或编辑操作。
Sketchpad被设计为可扩展的,可以添加新的图形元素类型和新的约束类型。在Sutherland提交了他的Sketchpad论文后不久,Timothy E Johnson提交了他的硕士论文,描述了Sketchpad III,一个3D版本的程序。大约在同一时间,Lawrence G. Roberts提交了他的博士论文,其中他为Sketchpad添加了3D固体的支持,包括组装和实时隐藏线移除。
虽然Sketchpad本身可能已经获得了足够的关注,但萨瑟兰、约翰逊和罗伯茨都制作了16毫米的电影,展示了他们的工作。1964年,波士顿WBGH电视台在一个30分钟的节目中使用了这些电影的组合。(YouTube上有一个剪辑过的视频。此外,萨瑟兰和约翰逊都在1963年春季联合计算机会议上发表了关于他们工作的论文。
Sketchpad开创了计算中一些最重要的概念,包括图形用户界面、非过程式编程和面向对象编程。如果你使用电脑或智能手机,你使用的是Sketchpad首创的技术。
萨瑟兰在《画板》之后并没有满足于自己的成就。他后来管理ARPA (DARPA的前身)。他参与创造了第一个虚拟现实和增强现实头戴式显示器。他联合创立了Evans和Sutherland,在实时硬件、加速3D图形和打印机语言领域做出了开创性的工作。他是Sun Microsystems的研究员和副总裁。他曾任教于哈佛大学、犹他大学和加州理工学院。现在,74岁的他在波特兰州立大学(Portland State University)领导异步计算研究。
由于他在Sketchpad上的工作,以及他随后对计算的许多贡献,Sutherland获得了一系列令人眼花缭乱的荣誉,包括国家工程院第一Zworykin奖,IEEE Emanuel R. Piore奖,ACM Steven a . Coons奖,ACM图灵奖,IEEE John von Neumann奖章,以及最近的京都奖。
艾伦·凯因其在计算机领域的开创性工作而获得了许多荣誉,他曾将Sketchpad描述为“有史以来最重要的论文”。有一次,他问萨瑟兰:“你怎么可能在一年之内完成第一个交互式图形程序、第一个非过程性编程语言和第一个面向对象的软件系统?”萨瑟兰的回答是“嗯,我不知道这很难。”
CAD怎么样?
从Sketchpad直接追溯苹果和微软的影响线很容易,但要追溯从Sketchpad到今天的现代CAD系统的影响线就有点困难了。主要是因为这些台词无处不在。
任何在20世纪六七十年代从麻省理工学院进入CAD行业的人——确实有很多人这样做——都受到了Sketchpad的影响。就连上世纪80年代中期麻省理工学院(MIT)毕业生、后来创立SolidWorks的乔恩•赫施蒂克(Jon Hirschtick)也受到了Sketchpad的影响。
尽管Sketchpad很重要,但没有现代CAD系统的根源可以追溯到Sketchpad。有几个很好的理由:首先,Sketchpad是一个人机交互的概念验证程序。萨瑟兰从未打算将其作为商业产品的基础。其次,Sketchpad被设计在TX-2上运行,这是一台非商业研究计算机。将其移植到商用电脑上是很困难的(而且当时是否有足够容量运行Sketchpad的商用电脑也是个问题)。
高昂的计算成本和缺乏足够好的图形显示硬件使得Sketchpad的商业化成为不可能。直到1969年,Applicon和Computervision才能够开始交付能够真正经济地生成图纸的商业CAD系统。
更深层次的故事
到目前为止,我所写的关于Sketchpad的内容可以在维基百科上找到,或者在CAD行业的大多数简单历史中找到。但还有一个更深层次的故事。这要从以下观察开始:Sutherland从未将Sketchpad称为计算机辅助设计系统。尽管事实上,在监督他在Sketchpad上的工作的人中,正是创造了计算机辅助设计这个术语并定义了要求的人。
1959年12月,麻省理工学院电气工程系的机械工程系和电子系统实验室开展了一个由美国空军赞助的联合项目,以探索他们所谓的“计算机辅助设计”的可能性。
第二年,1960年10月,电子系统实验室计算机应用小组的负责人道格拉斯·罗斯发表了一份题为《计算机辅助设计:目标声明》的技术备忘录,阐述了他的愿景。一个月后,机械工程系设计与图形组的Steven Coons和Robert Mann发表了一份补充备忘录,题为“与工程设计过程相关的计算机辅助设计”,阐述了他们的方法哲学。虽然每个小组都有不同的理念,但他们的共同目标是发展出一个人机系统,使人类设计师能够一起解决创造性的设计问题。
在当时,麻省理工学院是唯一有资格承担这项研究项目的。他们有TX-0,一台用于探索人机交互的研究计算机,以及位于麻省理工学院林肯实验室的TX-2,一台更大的研究计算机。
在1960年到1961年的冬天,伊万·萨瑟兰花了一些时间研究TX-0,使用它的显示器和光笔。他产生了一个想法,认为将计算机应用于绘制线描将是一个有趣的博士论文主题。1961年秋天,克劳德·香农教授签约指导萨瑟兰的计算机绘图论文。他的论文委员会成员包括马文·明斯基和史蒂文·库恩斯。
虽然萨瑟兰不是麻省理工学院计算机辅助设计项目的一部分,但他得到了巨大的支持。当时在林肯实验室负责计算机应用的韦斯利·克拉克(Wesley Clark)同意让他使用TX-2。1961年11月,萨瑟兰完成了第一个版本的Sketchpad。这个版本基于库恩斯撰写的内部项目备忘录,可以画水平线和垂直线,并支持缩放显示。在他的论文中,萨瑟兰说:“这种早期的努力实际上提供了传统绘图的t字型和三角形功能。”它更像是一个计算机辅助绘图系统而不是计算机辅助设计系统。
Sutherland论文中描述的Sketchpad版本比第一个版本要先进得多。根据Shannon的建议,它同时支持线段和弧线。萨瑟兰还结合了计算机辅助设计项目成员开发的概念,包括复合编程(现代面向对象编程的前身)、语言算法理论、操作符理论和引导图片语言。这个版本的Sketchpad还包括一个由Lawrence Roberts开发的约束求解器。
萨瑟兰在1963年春季联合计算机会议上发表了关于Sketchpad的演讲。同样发言的还有Coons,他的演讲题目是“计算机辅助设计系统的需求概要”,Ross和Jorge rodriguez,他们的演讲题目是“计算机辅助设计系统的理论基础”,Robert Stotz,他们的演讲题目是“计算机辅助设计的人机控制台设施”。
萨瑟兰,像其他许多取得伟大成就的人一样,站在巨人的肩膀上。克拉克设计了TX-2,这是一台非常适合创建交互式绘图程序的计算机。林肯实验室的工程师优化了光笔的设计。香农创造了信息论。罗伯茨贡献了求解技术。但正是罗斯和库恩斯为萨瑟兰提供了许多概念基础,帮助Sketchpad真正脱颖而出。
尽管萨瑟兰不是MIT CAD项目的成员,但罗斯和库恩斯很乐意支持和推广他的工作。他们对计算机辅助设计有一个更大的愿景,但Sketchpad是一个很好的概念证明,并很好地反映了他们。
Ross在1967年写道:“Sutherland的技能、创造力和勤奋在一个平稳运行的系统中表达这些强大的概念,最大限度地利用TX-2计算机的强大功能,使Sketchpad为许多人带来了计算机辅助设计的巨大潜力。特别是Sketchpad在运行中广泛传播的影片,对整个计算机图形学领域产生了深远的影响。
Sketchpad的经验教训
萨瑟兰从未想过要创建一个计算机辅助设计系统。他想创建一个计算机绘图系统。这样一个系统可以用于绘图,或作为工程设计的工具,这对他来说是次要的。
萨瑟兰在他的论文《技术与勇气》中说:“没有乐趣,我们谁也不会坚持下去!”在Sketchpad中,他尽可能地使用电脑绘图软件,同时还能从中获得乐趣。把它做得更远更像是工作而不是乐趣(正如许多CAD开发人员在过去50年里发现的那样)。在创建Sketchpad的过程中,Sutherland发现,要实现这样一个系统,最具挑战性的障碍是显示系统的性能。1968年,他与人共同创立了埃文斯和萨瑟兰,解决了这个问题。
Sutherland创建了两个版本的Sketchpad:一个用于绘图,另一个用于设计。即使在今天,看过Sketchpad设计版电影的人也会被它的能力所折服。然而,当他们购买2D CAD软件时,他们寻找的是什么功能?起草。
随着时间的推移,许多公司开发了类似sketchpad的2D设计程序,其特点是约束草图。他们大多在市场上失败了。与此同时,AutoCAD,一个简单的2D绘图程序成长为世界上最受欢迎的CAD程序。它直到2010年才获得约束功能,比Sketchpad早了47年。
类似sketchpad的功能被接受的地方是基于3D特征的建模。Pro/E和SolidWorks等程序的草图模块非常类似于Sketchpad。至少在能力上是这样。与Sketchpad相比,它们失败的地方在于可扩展性。
可能从Sketchpad最有价值的教训可能是来自萨瑟兰实际上构建了两个版本的软件的观察。当他发现第一个版本不容易被修改以满足要求时,他重新开始,并建立在一个干净且精心设计的软件架构上。
如果您想了解更多关于CAD的历史,包括Sketchpad和MIT CAD项目,请访问m.fbvote.com/cadhistory.
在那里,你可以找到启动CAD行业的原始文件的副本,包括自1961年出版以来的第一次,由Doug Ross、Steven Coons和Robert Mann撰写的MIT计算机辅助设计原始技术备忘录的可下载版本。您还可以找到David Weisberg的667页CAD行业权威历史的免费下载版本,《工程设计革命》。
了下:3 d CAD,设计世界文章,软件,虚拟现实

从1978年至今,我一直在工程制图和设计领域工作。学习并使用Auto Cad。Calma Cad, Pro E等。这是一篇伟大的历史作品。把这个想法变成现实需要多么伟大的头脑啊。谢谢你,萨瑟兰博士。
好文章!我向埃文脱帽致敬。我从来不知道CAD的起源可以追溯到这么远的地方。
..
好
喜欢这篇历史简报文章