首 页 - ┆ 小小说社会科学搜榜改进建议哲学宗教政治法律文化科教语言文字医学管理资源艺术资料数理化天文地球专业技术教育资源建筑房地产
当前位置:e书联盟 > 专业技术 > 机械化工 > 机械化工ppt
AutoCAD 2000二次开发.ppt
运行环境:Win9X/Win2000/WinXP/Win2003/
技术语言:简体中文
技术类型:国产软件 - 机械化工 - 机械化工ppt
授权方式:共享版
技术大小:210 KB
推荐星级:
更新时间:2019-12-30 16:57:12
联系方式:暂无联系方式
官方主页:Home Page
解压密码:点击这里
  • 好的评价 此技术真真棒!就请您
      0%(0)
  • 差的评价 此技术真差劲!就请您
      0%(0)

AutoCAD 2000二次开发.ppt介绍

AutoCAD 2000ObjectARX二次开发技术 AutoCAD二次开发技术综述 ObjectARX开发的一般步骤 菜单设计 综合实例:参数化齿轮设计 AutoCAD二次开发技术综述 AutoCAD为目前在微机上应用最广泛的CAD软件,但它为通用软件,即支撑系统,只提供了一个初步设计和绘图的环境。利用它完成具体项目开发时还要查阅手册、标准等,较为繁琐。 Autodesk采用了开放的软件设计风格,留有了包括C/C++在内的多种二次开发接口,允许用户定制、开发本软件,使之更适应某一设计领域,可大大减少设计人员的工作量。 各种开发方法的比较 第一代:利用AutoLisp语言开发: AutoLisp为解释型语言,可完成参数化程序设计及重复性工作、客户化开发、编制AutoCAD菜单及命令注册。当开发的程序被加载后,它作为一个单独的进程,通过进程间通讯与AutoCAD交互。它的特点就是简单但速度较慢,难以开发大型程序。 第二代:以ADS、ARX、ADSRX为代表的C环境下的开发语言 ADS(AutoCAD Development System)应用C开发环境,与ADS库、标准C库连接即可生成可执行文件(EXE文件)。89年,在AutoCAD R11中,提供了c语言的编程接口。它增加了专门用于对AutoCAD操作的函数。但它仍然用AutoLisp解释器加载,而且采用进程间通讯,当软件规模较大时,速度较慢。但因使用c编译器,所以在源程序安全性、内存操作的效率、文件大小及运行速度上要好于AutoLisp。 第二代:以ADS、ARX、ADSRX为代表的C环境下的开发语言 ARX:在95年的AutoCAD R13中,autodesk向开发用户提供了一种能够直接存取的面向对象的内核,即ARX(AutoCAD Runtime eXtension)。ARX为一用C++开发的动态连接库,用其开发的应用程序能在AutoCAD运行时存取其内核及内存地址,从而共享AutoCAD的地址空间。因此,其应用程序就不需要再通过进程间通讯与AutoCAD通讯了,这样速度就加快了。 第二代:以ADS、ARX、ADSRX为代表的C环境下的开发语言 ADSRX:在出现ObjectARX后,原ADS库就变成为ADSRX,它像ObjectARX一样,要VC++编译器生成动态连接库文件(DLL)。在执行等方面都与ObjectARX兼容。 第三代:Visual LISP、 ObjectARX、 VBA等新型开发方法 Visual LISP是一种新型LISP编程工具,它提供了完整的集成开发环境,是AutoLISP的扩展和延伸,与AutoLISP完全兼容,是一种编译型的应用程序接口。 基于ActiveX Automation技术的VBA是在96年产生ActiveX Automation技术后,Autodesk公司增加了ActiveX Automation服务器的功能,使许多语言和应用程序可通过ActiveX 与AutoCAD通讯,操纵AutoCAD功能。AutoCAD将其各功能封装在AutoCAD ActiveX对象中,供编程时各语言或应用程序调用。各应用程序通过Automation对象的属性、方法和事件来实现对AutoCAD的操作,其过程如下页图所示: ObjectARX开发:为面向对象的AutoCAD运行时扩展,在vc++环境下开发,是在ADS基础上发展起来的,它包含一组动态连接库,可直接访问AutoCAD核心数据结构、图形系统、CAD几何造型,在运行时可扩展新命令。在编译时,它不生成EXE文件,而是生成DLL(动态连接库)文件。 各种开发方法的比较综述: 速度方面:直接与AutoCAD通讯比进程间通讯快,编译型比解释型快。因此,ObjectARX程序运行速度比AutoLisp快。 稳定性:当因严重错误而导致应用程序进程崩溃时,Autolisp因进程的独立性强,不会影响AutoCAD的进程。但因ObjectARX的应用程序与AutoCAD本身的核心进程共享内存空间,所以当应用程序崩溃时,容易影响到AutoCAD自身的进程,但若应用程序经过严格测试,则不会发生问题。 性能:ObjectARX实时扩展AutoCAD,共享其内存地址,可随意调用其核心数据库,功能强大。而其他方法仅限于使用AutoCAD命令或系统定义的函数,功能有限。 技术难度:VBA、AutoLisp等方法较容易,学习周期短;而ObjectARX依赖于C++,需经严格的编译、连接,学习的周期长。 2. ObjectARX开发的一般步骤与应用程序加载 ObjectARX开发概述 开发的基本过程及应用程序加载 开发Win32 Dynamic-Link Library型工程  开发MFC Appwizard(dll)型工程 ObjectARX开发概述 应用ObjectARX所开发的应用程序称为ObjectARX应用程序,为Windows DLL程序。而AutoCAD本身为Windows程序。Windows程序与DLL之间采用Windows消息传递机制通讯,如下图所示: ObjectARX开发概述 在ObjectARX应用程序加载时,AutoCAD传递消息AcRx::kInitAppMsg给应用程序,这时通过acedRegCmds宏的addCommand命令注册一个命令,同时指定命令所要调用的函数,然后定义此函数。卸载时,传递AcRx::kUnloadAppMsg,同样调用acedRegCmd宏的removeGroup函数,完成应用程序的卸载。 开发的基本过程及应用程序加载 定制开发环境 编辑应用程序 编译、连接、生成arx文件及应用程序加载 定制开发环境   分两部分:每个工程都需要的部分和单独为某一工程单独定制的。 每个工程都需要的部分:进行ObjectARX开发时,需要使用ObjectARX开发工具包资源,并且每个工程项目中都要使用,因此可将其资源的目录设置于开发环境配置中。 方法:单击Tools|Options菜单,在弹出的对话框中单击Directories(目录)属性页,点击 show directories for下拉列表框的分别选择和添加OBJECTARX 2000目录下的INC和LIB两个路径,这样便包含了以后所要使用的头文件和库文件。 定制开发环境 为某一工程单独定制的部分:每个项目在建立后,还应设置ARX程序的编译开关,使程序能够按预定的编译方案进行编译。 步骤:单击菜单project|settings,在弹出的对话框project settings中 1. 选择c/c++属性页,选择category为Code Generation,使Use run-time library为Debug Mutilthreaded DLL。 定制开发环境 2. 选择Link属性页,选择Category为General。在Output file name文本框中,将文件扩展名改为arx,在Object/Library modules列表中添加输入库,需要加入哪些库由项目中用到的函数来确定。然后选择Category为Input,在Ignore libraries文本框中输入msvcrtd.lib。最后,选择Category为Output,在Base address文本框中输入0x1c000000。这样,便完成了应用程序的设置
AutoCAD 2000二次开发.ppt

下载此电子书资料需要扣除0点,

电子书评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

下载说明

* 即日起,本站所有电子书免费、无限量下载下载,去掉了每日50个下载的限制
* 本站尽量竭尽努力将电子书《AutoCAD 2000二次开发.ppt》提供的版本是完整的,全集下载
* 本站站内提供的所有电子书、E书均是由网上搜集,若侵犯了你的版权利益,敬请来信通知我们!
Copyright © 2005-2020 www.book118.com. All Rights Reserved