标题 | 基于VisualLISP技术的三维实体造型研究 |
范文 | 赵静雅 徐江红 刘涌 摘要:论文较为详细论述了基于VisualLISP技術的三维实体造型研究的意义、思路及过程方法等内容,具有较强的实用性。 关键词:VisualLISP,三维造型,AutoCAD 1绪论 1.1课题背景 计算机的飞速发展已经使得人们已经不再满足于表处理语言LISP的能力,在此基础上,便开发出了AutoLisp程序。但早期的Auto Lisp程序的编辑需要先在文本编辑工具里面进行编辑处理,然后在CAD中进行调试,太过于繁琐。于是,便有了Auto LISP的衍生物,Visual LISP的诞生。Visual Lisp是Auto Lisp的优化版,是对于Auto Lisp的延展。它具有十分强大的图形处理能力,可同时实现二维平面图和三维实体造型的设计与改良。 1.2研究意义 随着科技的发展,三维实体造型技术已经逐渐成为了当今CAD技术的主流核心,它不但弥补了二维图形设计的抽象性,还增加了许多二维设计所没有的能力。二维技术虽然可以大大提高作图的效率,但基本上只能用于进行平面投影,作为描述物体的工具。不同于二维设计,三维造型设计技术则是利用计算机提供的三维空间,直接在三维空间内进行三维物体模型的设计与制作,从而更加精确地表达出自己设计的想法及意图。 相对二维技术而言,三维空间对物体有着更加详细的描述和解析,比之传统的二维技术更具有真实准确性。以人最直观的角度来讲,人们脑海里所构建的物体图形就是三维的实体造型,因此,直接用三维实体的形式来表达所设计的造型是最简单而又有效的方式。因为三维模型可以通过多个角度来观察物体,所以,三维模型较之二维更能够最大程度的还原物体的真实性。因此,三维模型可生形成更加接近实体的图形。更加方便找到设计的不足之处并对之进行改良;可直接作为对象成型。因此,三维造型的设计是完成设计与制造一体化最为基本的根底。 采用VisualLisp技术,更是进一步的优化了AutoCAD的二次开发能力。使得Visual Lisp程序的运行更快于Auto CAD。由于Visual Lisp的编译器直接将Lisp的源程序全部编译于ARX里,因此Lisp的程序通过AutoCAD的接口(0bjeetARxl运行时,不但比Auto Lisp的加载运行快3~10倍,将每次打开新图所调用的时间更是直接节省了下来。 因为VisualLisp采用的是ObjectARX的接口平台,可以将AutoCAD和其他的应用程序如ActiveX、Windows以及Office等容纳到AutoLisp的源程序里面。不但改良了两者模型之间的接口特性,而且提升了应用程序的适用性以及灵活性。使用VisualLisp可以极大的避免Lisp程序调试过程的繁锁,间接提升了编程的速度,它不仅提供了更加优化强大编程工具给编程的工作人员,而且使得每一个AutoCAD使用者都使用上了更加简单便捷的Lisp工具。 1.3发展趋势 技术发展的前提是市场具有需求。近几年,CAD的市场的竞争,十分的激烈。三维设计已经成为了大部分行业中最不可或缺的部分。因为三维实体造型技术广泛应用于建筑、机械方面。可以进行建筑室内外三维效果的预览。所以,设计者可以通过三维设计软件将脑海中构建出来的几何模型,更加形象地映射在电脑的屏幕之上。对于设计人员来讲,三维造型更能够直白地体现出来设计人员的设计意图,由于三维实体造型可以直接表达出产品的重要信息,因此,可以将设计过程中各个重要的流程信息结合在一起,对于建模有着很大的帮助。由于CAD技术的飞速发展,三维实体造型在软件和硬件上也都有了进一步的改善。同时也使得各个行业有关三维实体造型的产品图形的构建、产品的制造以及发展都有了很大的飞跃,成为了现代产品制造业的最佳选择。 2基于Visual Lisp技术的三维实体造型的可行性 AutoLisp是一种图形编辑用于计算机辅助设计以及制造的编程语言。AutoLisp不但语法简洁程序控制结构灵活,而且拥有一般高级语言的基本结构和功能。而VisualLISP是对Au—toLISP的一次重大改进,同时增强了AutoCAD的二次开发能力。也可方便地用AutoLISP语言进行程序开发中的编写程序代码、调试程序等操作。 三维实体造型是对物体进行完整的几何描述,其基本思想是将一些形状规则简单的物体经过并、交、差等集合运算组成需要的复杂的物体,可以随时提取所需要的信息。这种用三维体进行拼合的实体造型技术有很多优点,可以最少的命令实现,避免人工干预,完成更多的形体修改,并且拓扑结构十分严密且几何形象直观,计算机自动处理程度最高,并且可以即时表达出物体的最真实图形特征。另外,根据物体的三维立体图形可以准确求出物体的动力学特性值,可以对物体进行有限元分析,实现此工作过程中的图形运行的轨迹。 Visual LISP具有强大的三维实体造型功能,在AutoCAD中,可以调用所需的常用函数(数学计算、几何、查询、字符串、符号操作等);补充函数(对象处理、符号表和词典处理、内存管理、错误处理等);扩展函数f特性处理、曲线测量、Active x数据转换、Active x集合操作、Active x方法调用等)以及反应器函数并通过编程的方式来保证所需的图形对象和非图形对象数据的创建、修改和删除。保证对物体进行完整的几何描述,更加直观地把所需物体的样子在计算机上表达出来,从而达到三维实体造型的效果。 3运用VisualLISP编程对AutoCAD实现二次开发的过程 当前在Windows系统中应用最为广泛且使用人数最多的CAD软件就是AutoCAD。但是它仅仅提供了CAD的最为基础的功能,如若想要实现更为具体的设计项目,就必须根据所了解到的数据一点点绘制出所需要的图形,但是当所有的设计全部完成之后进行修改时,就必须要对原来所有的工作进行重新完成,因而导致浪费了大量不必要的时间。但是如果使用AutoCAD的开发系统对AutoCAD进行二次开发的话,我们就可以将所有做过的工作全部通过程序编写出来。在需要时可以直接对这个程序命令进行调用,然后就直接可以自动完成之前所做过图形的绘制。从而大大缩短了图形设计的时间。更为方便的是还可以通过编写某些固定的程序来直接制作完成所需的固定模块。因此,只有对AutoCAD的开发系统进行二次开发,才能让AutoCAD真正适用于大部分模具、机械等领域,满足市场所需。 对于AutoCAD的开发有多种方式,其中,AutoLisp是对Au.toCAD进行二次开发最早的API(Application Programming Interface,应用程序编程接口),大多数用来完成重复性的任务,根据客户需求进行开发和编制AutoCAD菜单,并且可以通过十分简便的方式来为AutoCAD进行命令的扩充。由于Auto Lisp的语法简单易上手,截止到目前为止,还是存在着较多有需求的开发用户。因此,Autodesk公司再次提供了一种新的相关的编程工具:Visual Lisp。Visual Lisp是一种面向对象的新的开发环境,是AutoLISP的改良、完善的版本。VisualLisp存在于AutoCAD的集成环境之中。Visual Lisp是一种不完全编译的API形式的表现。由于编译的过程提升了运行速度和适用性的同时又与AutoLisp完全兼容,并且提供了AutoLisp的全部功能。同时,它也能够访问多文档环境下的AutoCAD,以及对COM/ActiveX技术的支持。VisualLisp(IDE)同时提供了完整的编辑环境,使得用户不但可以调试代码、括号匹配、进行源码语法的检查、函数提示等工具,而且方便构建并对Lisp程序进行调试。由于Lisp集成于AutoCAD内部环境中,并且可以通过AutoCAD的不断升级使得兼容性更加优良,这也使得Lisp更加受到广大编程爱好者的欢迎。 在运用Visual LISP对Auto CAD进行二次开发时,首先要启动AutoCAD选择“工具”-“Auto LISP”-“Visual LISP编辑器”选项。进入“Visual LISP编辑器”窗口,在文件一新建中打开“程序编辑窗口”,编写程序代码。然后在“程序代码编辑”窗口输入所需代码。加载和调试Auto LISP程序,单击“加载活动编辑窗口”按钮,对刚刚编制的代码进行运行。加载成功后,返回Auto CAD界面,在命令行输入Lisp,接着自动运行程序Lisp,若与预期效果一样,说明程序编制没有逻辑错误。如果存在逻辑错误还需返回进行调试。至此就完成了简单的CAD二次开发的全过程,并将程序保存,以便下次加载使用。 4复杂形体的三维造型方法 复杂形体的三维造型多用于建筑方面,零件的制作以及图形处理视图变换。是集成机械学、几何学、材料学、机械制图和机构学等于一身的造型设计。简单三维实体造型系统所构建出来的几何图形都有固定的尺寸和形状,复杂形体的三维造型是以实体造型为基础,是三维实体造型技术的延展。以参数化特征造型为例,它同时包含了参数化造型以及特征造型的所有特性,所有数据均可随时修改,不仅具有几何信息,还记录了三维实体造型形成的过程,是真正意义上的产品信息模型。以参数化设计为基础,基本思路大体有三种:造型树法、边界表示法(Brep)以及扫描表示法.下面,简单的介绍三种基本思路的特點。 造型树法多用于建模中,例如树木形态结构的建模方法分析。关键之处就在于树干,它们是构建3D模型的重要因素。首先,要对所得到的二维图像进行全面的分析和处理,从二维图像上把细小的内容和架构以树干的形式来分割出来。虽然得到的图形集成度很高,但这种方法过于繁琐,而且得到的模型精确性不强。 边界表示法全称fBoundary Representation)。用来表达三维图形物体移动和几何压缩。这种表示方法要求每个图形的信息都要通过三张表来表示出来。分别是顶点表、边表以及面表。通过这种分开的方式来表达三维图形,可以很有效地节省存储空间,其次是图形的显示更加形象具体化。但该方法也有一定的缺点,首先它所存储的数据量很大,结构也很繁琐;其次,对图形整体的描述能力很差,无法进行三维实体造型形成的过程记录表示。 至于扫描表示法,则是将空间上的某一个点、边、面沿着某一个特定方向进行扫描,采用所扫描到的轨迹来表示这个三维物体。该方法最重要的就是需要给予所扫描的物体和其运动轨迹以定义。其扫描方法大多广义、旋转、以及平移扫描三种方式。 基于这三种表示方法的核心就是在设计思路中必须要使用到参数化设计。所谓参数化设计即是指能够随意拆卸、构建出所需要的三维立体实物。使用尺寸和拓扑来定义改变几何模型,同时优化CAD系统,使CAD拥有了自动绘图和交叉绘图的能力。 5结论 就当今社会而言,三维实体造型所涉及的行业只会越来越多,极尽简化了产品的设计以及其它相关设计,Visual LISP技术的运用确保了产品模型的精简合理化,使得CAD技术也有了飞跃式发展。既方便了设计者,也方便了生产者,使得设计生产效率有了极大的提高。 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。