ImageVerifierCode 换一换
格式:PPT , 页数:52 ,大小:1.57MB ,
文档编号:2272279      下载积分:28 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-2272279.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(三亚风情)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(第一讲-CAD二次开发概述课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

第一讲-CAD二次开发概述课件.ppt

1、 一、一、为什么要开发为什么要开发CADCAD专用软件专用软件 随着计算机在工程领域的广泛应用,随着计算机在工程领域的广泛应用,CADCAD软件的软件的需求量与日俱增,尤其是适合于生产实际的需求量与日俱增,尤其是适合于生产实际的CADCAD专专用软件。市场上有许多商品化的用软件。市场上有许多商品化的CADCAD软件,在这些软件,在这些软件中,除少数是由专业单位针对本行业的使用条软件中,除少数是由专业单位针对本行业的使用条件开发的应用软件外,绝大多数软件都是由软件公件开发的应用软件外,绝大多数软件都是由软件公司开发的通用性司开发的通用性CADCAD支撑软件,如支撑软件,如AutoCADAutoC

2、AD、UGUG等。等。 在应用这些软件的过程中,我们仍然会感到不方便,在应用这些软件的过程中,我们仍然会感到不方便,譬如:特定曲线、常用机械零件的绘制,设计数譬如:特定曲线、常用机械零件的绘制,设计数据的查询,设计公式的应用等。因此,设计人员据的查询,设计公式的应用等。因此,设计人员应根据本单位的实际情况,在已有应根据本单位的实际情况,在已有CADCAD软件的基软件的基础上进行二次开发,以扩充其实用的功能。础上进行二次开发,以扩充其实用的功能。 上一页下一页结 束 首先根据本单位的产品开发与设计要求,列出总体首先根据本单位的产品开发与设计要求,列出总体设计,零部件设计,结构分析,参数化绘图,设

3、计资料设计,零部件设计,结构分析,参数化绘图,设计资料数据库与标准件图形库等内容。然后依照所选通用数据库与标准件图形库等内容。然后依照所选通用CADCAD软件能否满足要求的情况,确定软件二次开发的内容。软件能否满足要求的情况,确定软件二次开发的内容。这些内容也可以抽象地归纳为:数据查询与输入,设计这些内容也可以抽象地归纳为:数据查询与输入,设计计算、图形处理三部分。包含上述要求的计算、图形处理三部分。包含上述要求的CADCAD专用软件,专用软件,通常都具有以下特点:通常都具有以下特点:1 1)集数据查询、计算、绘图于一身)集数据查询、计算、绘图于一身2 2)用户界面友好,具有较好的人机交互功能

4、)用户界面友好,具有较好的人机交互功能3 3)简便、实用。)简便、实用。 上一页下一页结 束 (1 1)根据设计任务和功能要求编写各种用户自定义函数、)根据设计任务和功能要求编写各种用户自定义函数、设计人机交互界面、建立所需的幻灯片、图块和数据文设计人机交互界面、建立所需的幻灯片、图块和数据文件,并形成若干件,并形成若干LISPLISP、DCLDCL、SLDSLD、DWGDWG、DATDAT或或FASFAS文件。文件。 l(2 2)建立符合自己要求的管理菜单文件)建立符合自己要求的管理菜单文件MNUMNU,一般可在,一般可在 AutoCADAutoCAD原菜单文件内添加自己的内容,对于原菜单文

5、件内添加自己的内容,对于 AutoCAD200 xAutoCAD200 x版本还可增加部分菜单文件,然后经交互版本还可增加部分菜单文件,然后经交互方式加入到系统中。方式加入到系统中。l(3 3)在系统的)在系统的ACAD.LSPACAD.LSP或类似文件中加入某些内容以或类似文件中加入某些内容以便进行各种初始化操作等。便进行各种初始化操作等。 上一页下一页结 束(1 1)正确性:满足功能要求,结果正确;)正确性:满足功能要求,结果正确;(2 2)可靠性:运行正常,容错性好;)可靠性:运行正常,容错性好;(3 3)完整性:程序和文档资料齐全;)完整性:程序和文档资料齐全;(4 4)实用性:界面友

6、好,操作简便,实用;)实用性:界面友好,操作简便,实用;(5 5)可维护性:便于修改、扩充。)可维护性:便于修改、扩充。 上一页下一页结 束 当前当前AutoCADAutoCAD的二次开发工具主要有:的二次开发工具主要有:VisualLispVisualLisp、VBAVBA、ObjectARXObjectARX和和.NET API.NET API等。其中,等。其中,VisualLispVisualLisp与与VBAVBA较为简单,特别是较为简单,特别是VisualLispVisualLisp,使用方便且开发速度较快,但其功能相比使用方便且开发速度较快,但其功能相比ObjectARXObjec

7、tARX有所不足,尤其是对面向对象的功能支有所不足,尤其是对面向对象的功能支持不好。而持不好。而ObjectARXObjectARX基于基于VCVC平台,在平台,在C+C+的支持的支持下,其功能非常强大,可以很好地运用各种面向下,其功能非常强大,可以很好地运用各种面向对象技术,但其缺点是开发速度比较慢,同时对对象技术,但其缺点是开发速度比较慢,同时对开发人员的能力要求较高。下面对此作简单介绍:开发人员的能力要求较高。下面对此作简单介绍:上一页下一页结 束 AutoLISPAutoLISP的全名是的全名是LIST Processing LanguageLIST Processing Langua

8、ge,它出现于它出现于19851985年推出的年推出的AutoCAD R2.18AutoCAD R2.18中,是一中,是一种嵌入在种嵌入在AutoCADAutoCAD内部的编程语言,是内部的编程语言,是LISPLISP原版原版的一个子集,一直是低版本的一个子集,一直是低版本AutoCADAutoCAD的首选编程的首选编程语言。它是一种表处理语言,是被解释执行的,语言。它是一种表处理语言,是被解释执行的,任何一个语句键入后就能马上执行,它对于交互任何一个语句键入后就能马上执行,它对于交互式的程序开发非常方便。其缺点是继承了式的程序开发非常方便。其缺点是继承了LISPLISP语语言的编程规则而导致

9、繁多的括号。言的编程规则而导致繁多的括号。 上一页下一页结 束 ADS的全名是AutoCAD Development System,它是AutoCAD的C语言开发系统,ADS本质上是一组可以用C语言编写AutoCAD应用程序的源文件和目标库,它直接利用用户熟悉的各种流行的C语言编译器,将应用程序编译成可执行的文件在AutoCAD环境下运行,这种可以在AutoCAD环境中直接运行的可执行文件叫做ADS应用程序。ADS由于其速度快,又采用结构化的编程体系,因而很适合于高强度的数据处理,如二次开发的机械设计CAD、工程分析CAD、建筑结构CAD、土木工程CAD、化学工程CAD、电气工程CAD等。 上

10、一页下一页结 束 ObjectARX是一种崭新的开发AutoCAD应用程序的工具,它以C+为编程语言,采用先进的面向对象的编程原理,提供可与AutoCAD直接交互的开发环境,能使用户方便快捷地开发出高效简洁的Auto CAD应用程序。ObjectARX并没有包含在AutoCAD中,可在AutoDESK公司网站中去下载,其最初版本是ObjectARX for AutoCAD 2000,它能够对AutoCAD的所有事务进行完整的、先进的、面向对象的设计与开发,并且开发的应用程序速度更快、集成度更高、稳定性更强。 上一页下一页结 束 VisualLISP已经被完整地集成到AutoCAD 2000以上

11、版本中,它为开发者提供了崭新的、增强的集成开发环境,一改过去在AutoCAD中内嵌AtuoLISP运行引擎的机制,这样开发者可以直接使用AutoCAD中的对象和反应器,进行更底层的开发。过去AutoLISP 最大的不足是不能编译,现在已经被 VLISP 圆满解决了,用Visual LISP将其编译成VLX程序包或者FAS程序,这样处理之后的AutoLISP程序,将具有与ARX程序相同的高保密性,也将具有比解释运行明显提高的运行效率。而且,AutoLISP程序设计的复杂程度和运行风险大大低与ARX,绝少在程序崩溃后连带AutoCAD崩溃。 上一页下一页结 束 VBA 即Mcrosoft offi

12、ce中的Visual Basic for Applications,它被集成到AutoCAD中。VBA为开发者提供了一种新的选择,也为用户访问AutoCAD中丰富的技术框架打开一条新的通道。VBA和AutoCAD 2000以上版本中强大的ActiveX自动化对象模型的结合,代表了一种新型的定制AutoCAD的模式构架。通过VBA,我们可以操作AutoCAD,控制ActiveX和其它一些应用程序,使之相互之间发生互易活动。上一页下一页结 束l AutoCAD的强大生命力在于它的通用性、多种工业标准和开放的体系结构。其通用性使得它在机械、电子、航空、船舶、建筑、服装等领域得到了极为广泛的应用。但是

13、,不同的行业标准使得各领域在使用AutoCAD的过程中均需根据自身特点进行定制或开发。AutoCAD的各种开发工具可满足广大用户的需求。l目前,AutoLISP已被Visual LISP完全替代,ADS在AutoCAD 2000以上版本中已不再支持,基于对象的ARX、VBA对开发者的能力有较高的要求,且程序运行容易受版本或错误影响而崩溃。所以,VisualLISP将成为今后AutoCAD二次开发的基本选择。而具体选择哪一种作为开发工具,主要还应根据用户应用程序的需要和开发人员的能力和编程经验决定。 在机械设计过程中,常常需要引用有关的数据资料,如经验数表、实验曲线、各种标准和规范等。在传统的设

14、计中,这些数据资料通常是以设计手册或工具书的形式提供的。而在计算机辅助设计时,就必须将这些数据资料作相应的处理,以便程序运行时计算机能按照设计要求自动检索和调用,这就是所谓的数据资料程序化的问题。上一页下一页结 束 数据就是对客观世界、实体对象的性质和关系的描述。例如一个机械产品,它可能包括性能数据、几何尺寸数据、工艺过程数据等,这些数据联系在一起就组成了对一个机械产品信息的描述。机械设计中的数据形式是多种多样的,既有公式表达的数据,又有线图或数据表等形式表达的数据,公式表达的数据信息可直接编入程序中,而线图和数表则需经过处理才能使之程序化,供计算机识别。上一页下一页结 束1) 公式化 利用设

15、计资料的原始公式,或将线图和数表通过一定方法处理拟合成计算公式,直接编在程序中。 这种方法编程简单,占用内存小,缺点是线图或数表有所改变时则需重新进行数据处理、重新编程。 例如:已知运动构件的力F和速度V,其传递的功率可用公式表达为 P=FV/1000. 编程代码可写为:(setq P (/ (* F V) 1000.0))对于线图和数表,如果也能用公式表达,显然很简单。上一页下一页结 束2)将线图或数表建成一维或二维数组,直接编入程序中,运行时自动检索;编程难度大3)将数表和线图做成图片或幻灯片,需要时打开直接查取。简单、直观,但速度慢4)文件化,将数表和线图数据编制成一个个独立的数据文件,

16、供程序运行时自动调用;这种数据形式独立、可靠、易于修改。5)将数表和线图数据建成数据库,以便于检索和管理。适合于大型数据系统的管理上一页下一页结 束数表有一维数表、二维数表。在机械设计中的数表多属于二维数表,如带传动工作情况系数表:上一页下一页结 束 处理这类数据可采用数组,如K(I,J)。最为简单的是找出其规律,用一个公式来描述。如:KA=1+0.1(K1+K2), 其中原动机工况K1取值为0、1、2,工作机工况K2取值为0、1、2、3。例1、带传动工作情况系数KA的确定:上一页下一页结 束 (defun KAtest ()(initget 5 0 1 2)(setq K1 (getkwor

17、d “n原动机工况: 0-10h:)(initget 5 0 1 2 3)(setq K2 (getkword “n工作机工况: 0-载荷变动微小,1-变动小, 2-变动较大,3-变动很大) (setq k1 (read k1) k2 (read k2) (setq KA (+ 1 (* 0.1 (+ k1 k2) (princ nKA=) (princ KA) (princ);end上一页下一页结 束将前式(setq KA (+ 1 (* 0.1 (+ k1 k2)变为:(setq KA (cond(= k1 0) (nth k2 (1 1.1 1.2 1.3)(= k1 1) (nth k

18、2 (1.1 1.2 1.3 1.4)(= k1 2) (nth k2 (1.2 1.3 1.4 1.5) 其效果是一样的,不同的是没有采用公式,而是直接用的数组,且用条件函数通过K1、K2来检索数据。上一页下一页结 束 若利用BASIC语言编程检索,则程序如下: DIM K(4,3) FOR I=1 TO 4 FOR J=1 TO 3 READ K(I,J) NEXT J,I DATA 1, 1.1, 1.2, 1.1, 1.2, 1.3, 1.2, 1.3, 1.4, 1.3, 1.4, 1.5 INPUT I, J PRINT “KA=“ ; K(I, J) END这里采用了二维数组,如

19、K(2,3)=1.3上一页下一页结 束 例2:V带的基准长度系列及长度系数KL的确定上一页下一页结 束编程检索如下:先建立基准长度和长度系数的数组关系。上一页下一页结 束 检索时根据初算的基准长度Ld1在数表Ldb中确定出最接近的Ld,再定出相应的长度系数KL。上一页下一页结 束 在机械设计手册中,经常要用到表示各参数间关系的线图。编制程序时必须将线图程序化。程序化的方法有两种:其一是将线图公式化,其二是将线图数组化。 例如:V带传动中,带型号的选择就是通过线图来实现的。上一页下一页结 束上一页下一页结 束根据计算功率Pca及小带轮转速n1由下图选定带型l根据计算功率Pca和主动轮转速n1,选

20、择V带型号的线图有如下关系: 一、直线图的公式化上一页下一页结 束cKABAKABAKAKAKABABncPPPPnnnnnnPPnnPP10lglg)lg)(lglg(lglglglglglglglglglglg所以有:故:l(defun dxh (p n)l (setq paa (1 1 1 1 1.7 3 8.1 22 50)lnaa (780 480 200 100 100 100 100 100 100)lpbb (3.8 5 8 10 14 20 40 100 170)lnbb (3150 2500 2000 1250 1100 950 640 600 500)l(setq dd1

21、 (50 63 71 80 90 100 80 85 90 95 100 l 112 118 125 132 140 125 132 140l 160 170 180 200 l 200 212 224 236 250 265 280 315”l 355 375 400 500) 于是,根据已知的P和n,可以编写选择V带型号的程序如下:上一页下一页结 束l (setq i -1 nk 5000) ;循环搜索区域l (while ( p pb) ( n nb) (setq nk (- n 10)l );while上一页下一页结 束l ;检索带型号及其相应的小带轮基准直径l (setq dx (n

22、th i (Z Z A A B B C D E)l (setq d1 (nth i dd1)l (princ nDXH=)l (princ dx)l (princ nd1=)l (princ d1)l (princ)l )上一页下一页结 束 对于一些曲线线图或由曲线表示的近似数据,同样可将其数组化或公式化。常用的方法有插值法和最小二乘拟合法。 插值法的基本思想是:设法构造一个简单的函数y=p(x),作为曲线函数f(x)的近似表达式,然后计算p(x)的值以得到f(x)的近似值。使得:上一页下一页结 束 二、曲线线图的公式化成立nixpxfii,.,3 , 2 , 1)()( 即两点插值。已知插值

23、点P的相邻两点:y1=f(x1), y2=f(x2), 如图所示。可近似认为在此区间函数呈线性变化,插值点P对应于 x的函数值为:上一页下一页结 束 1) 线性插值21211212)()(yxxxxyxxxxy编程时,只要将节点数据和插值编程时,只要将节点数据和插值公式编制其中,就可在输入一个公式编制其中,就可在输入一个x x后,计算出相应的后,计算出相应的y y值。值。 例、普通V带传动设计中包角系数K的确定:上一页下一页结 束 线性插值应用举例:上一页下一页结 束 编制V带传动包角系数的检索函数: 线性插值的误差较大,为了提高插值精度,可采用多点插值。若插值节点取n,则拉格朗日插值多项式的

24、一般表达式为:上一页下一页结 束 2) 拉格朗日插值)()()()()()(21211niiininiiixxxxxxxxxxxxxAyxAy 其中:当插值节点取n=3时,得到二次插值多项式,即抛物线插值。上一页下一页结 束 拉格朗日插值编程应用举例:这是一个通用程序,其中数表xi ,yi中的数据可以根据具体情况更换。该例中的数据取自机械设计教材p194动载系数8级精度曲线。上一页下一页结 束 续前上一页下一页结 束 续前 插值法的实质是在几何上用严格通过各个节点的曲线来近似代替线图曲线。但没有通过节点的数据往往误差比较大,因此,在工程上常采用拟合的方法来构造近似曲线。此曲线并不严格通过所有节

25、点,而是尽可能反映所给数据的趋势。这种方法称为数据的曲线拟合, 其理论基础为最小二乘法。上一页下一页结 束 3) 曲线拟合法1)设定一条平滑的拟合曲线方程2)从y=f(x)曲线图上取出n组数据xi,yi。与拟合曲线上对应数据的偏差为:上一页下一页结 束用最小二乘法拟合的步骤用最小二乘法拟合的步骤:nnxaxaxaaxP 2210)()()()(2210nniiiixaxaxaayxPxfD 3)根据最小二乘法定理,为了达到最好拟合,应使各节点的偏差平方和为最小。上一页下一页结 束 0)(20)(201)(21222102122101122100nininiiinininiiinniniiixx

26、axaxaayaSxxaxaxaayaSxaxaxaayaS222102)()(niniiiixaxaxaayDS 4)上列方程整理得到线性方程组:上一页下一页结 束 211412311201113122111001121211100ininininiininininiininininixyxaxaxaxyxaxaxaxyxaxaxa求解该线性方程组,得到系数a0、 a1、 a2。5)将各个系数代入拟合方程,即得到方程表达式上一页下一页结 束说明:对于同一条曲线,同一组数据,可以选用不同的方程去拟合它。如:直线、抛物线、指数方程、对数方程或K次多项式等。最好依照曲线的特征选用,得到的拟合方程即

27、可方便地编入程序中。nnxaxaxaaxP 2210)(前述各种方法都是将数据资料编入程序,使用起来方便、快捷。但它的缺陷是数据依赖于程序而存在,若要修改数据,则要修改程序,各程序之间所需相同数据资料无法共享。因此,对于数据量较大,且需要共享的数据,通常采用数据文件的形式来存储。数据文件有自己固定的存取格式,可在各种编辑器中建立,而数据文件的管理,数据的检索则通常采用高级语言中的文件管理功能来实现。上一页下一页结 束1)数据资料的正确组织2)正确录入数据3)数据文件的保存、建档和管理。 若开发的软件为大型CAD系统软件,且数据量大,结构复杂,操作要求高,采用数据文件的管理方式也难以满足要求。这

28、时,就要采用更科学、先进、有效的数据管理技术数据库技术。上一页下一页结 束下面以普通V带传动设计过程为例,说明工程数据处理的方法及应用。带传动设计主要是根据给定的已知数据,如:传递的功率P、传动比或转速、工作情况等,确定带的型号、基准长度,带的根数、带轮直径大小及其结构尺寸,中心距等。上一页下一页结 束 例1、单根V带基本额定功率P0的确定 (见机械设计P152表8-4a):上一页下一页结 束上一页下一页结 束 步骤:1)建立数据文件vp0.dat上一页下一页结 束 2)编程检索节点数据,再用线性插值确定出P0 例2、编程检索单根V带额定功率增量P0上一页下一页结 束数据文件dltap0.dat 建立如下:上一页下一页结 束程序文件jsdp0.lsp 建立如下:

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|