您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > ObjectARX开发
版权说明本图书的版权属于CAD大观园站长张帆,作者保留该图书的所有权利。本图书在未来会作为纸版图书出版,一切对该图书的非法复制和其他商业行为都会追究法律责任!以电子版发布此书的目的是提高国内CAD开发者的普遍水平,让入门者更快地能够编写代码,让初级程序员更快达到中高级程序员的水平。为国内CAD开发整体水平的提高,我们愿意尽一份微薄之力。我们会不定期发布该图书的新章节,也会发布.NETObjectARX方面的电子图书,请留意我们在网站上的新公告。我们非常愿意在CAD大观园()和ObjectARX编程站论坛()与大家讨论书中的问题和该图书进一步写作的建议,也很欢迎大家与我们讨论其他的问题。大家可以通过网站论坛与我们取得联系,也可以发送电子邮件到zf9568@263.net与我们沟通,祝大家读书愉快!张帆2007-7-15第1章ObjectARX编程基础2第1章ObjectARX编程基础初学ObjectARX编程,需要了解其开发和调试环境的构建,本章首先帮助读者建立起开发环境,进而介绍加载和运行ObjectARX应用程序的方法,昀后仍然以Hello,World来作为进入ObjectARX开发的第一个程序。1.1ObjectARX开发环境1.1.1说明使用ObjectARX,首先要确定你的目标平台,获得适当的开发环境。如果你是在AutoCAD2002平台上开发,你就需要具备下面的工具和软件:AutoCAD2002中文版或英文版。VC++6.0英文版。ObjectARX2002开发包。一般来说,ObjectARX开发包的版本和AutoCAD的版本是对应的。在开发工具方面,AutoCADR14、AutoCAD2000和AutoCAD2002平台上使用的开发工具是VC++6.0,AutoCAD2004和AutoCAD2005平台上使用的开发工具是VC.NET2002。本节将要介绍ObjectARX开发环境的构建,包括开发包的获得、开发包的组成部分、ObjectARX向导的安装,以及自动提示和显示ObjectARX关键字的方法。1.1.2思路本章的内容不涉及具体的编程,此部分从略。1.1.3步骤在开始本书的旅行之前,首先要指出,本书所有的程序都是基于AutoCAD2002中文版,因此构建的开发环境为“VC++6.0英文版+AutoCAD2002中文版+ObjectARX2002”。按照下面的步骤,一步一步构建开发环境:(1)安装AutoCAD2002中文版和VC++6.0英文版。软件的安装可以参考相关软件的说明文件,不再介绍。提示:微软公司在中国从未推出正式的VC++6.0中文版,如果你使用了某些外挂1.1ObjectARX开发环境3的平台来实现VC++的中文汉化,那么可能无法用本书所说的方法实现ObjectARX关键字的自动提示和高亮显示。(2)获得ObjectARX开发包。可以到Autodesk公司的官方网站下载开发包,下载的页面是。解压下载得到的压缩文件,能够得到下面几个文件夹:arxlabs:包含了ObjectARX的教程,和对应的示例文件。classmap:包含一个DWG图形,其中显示了ObjectARX类层次的结构。docs:包含所有的联机帮助文件。docsamps:包含在《ObjectARX开发者向导》(在docs文件夹中,为英文的资料)中所提到的源代码和说明文件。inc:包含ObjectARX的头文件。lib:包含ObjectARX的库文件。redistrib:包含一些动态链接库(DLL),其中一些可能是运行ObjectARX应用程序所必需的。samples:包含了许多ObjectARX应用程序的例子。utils:包含扩展ObjectARX的应用程序,例如用于边界表示的brep程序。提示:为便于访问,一般可以将ObjectARX2002放置在驱动器的根目录下,例如E:\ObjectARX2002\等。(3)安装ObjectARX开发向导。按照开发包中的路径\utils\ObjARXWiz\,找到一个名称为wizards.exe的自解压文件,将其解压到一个文件夹中,运行其中的WizardSetup.exe文件,系统弹出如图1.1所示的对话框,单击【Install】按钮开始安装向导。图1.1安装ObjectARX开发向导经过一段时间,系统弹出如图1.2所示的对话框,单击【确定】按钮完成ObjectARX向导的安装。第1章ObjectARX编程基础4图1.2向导安装完成此时启动VC++6.0,选择【File/New】菜单项,系统会弹出【New】对话框,其中的项目列表中已经包含了ObjectARX2000/2000i/2002AppWizard,如图1.3所示。图1.3ObjectARX开发向导被添加到列表中(4)配置ObjectARX的帮助信息。安装ObjectARX开发向导之后,除了【New】对话框的项目列表增加了对ObjectARX项目的支持,还增加了一个专门的嵌入工具栏,如图1.4所示。图1.4ObjectARX的嵌入工具栏单击ObjectARX嵌入工具栏的“ObjectARXAddInConfiguration”按钮,系统会弹出如图1.5所示的对话框。如果你愿意,可以取消选择【AddInconfiguration】选项组的【EnableLiveUpdatefortheObjectARX2000(i)Wizard】复选框,避免每次启动VC++时ObjectARX向导的自动更新。在【Helpconfiguration】选项组的第一个文本框中输入ObjectARX帮助文档的位置,也1.1ObjectARX开发环境5可以单击文本框右侧的按钮从计算机中查找该文件。昀好选择arxdoc.chm,这个文件包含了其他的几个文件。图1.5添加帮助文件的位置在VC++6.0中,选择【Tools/Customize】菜单项,系统会弹出如图1.6所示的对话框。切换到【Keyboard】选项卡中,从【Category】列表中选择【Add-ins】选项,从【Commands】列表中选择【ObjectARXAddInArdHelp】选项,也就是对应了ObjectARX嵌入工具栏的帮助按钮。在【Pressnewshortcut】文本框中单击左键,然后按下快捷键Alt+F1(为了避免和VC++本身的F1快捷键冲突,你可以自己选择适当的快捷键),单击【Assign】按钮,然后单击【Close】按钮完成设置。第1章ObjectARX编程基础6图1.6为帮助文件指定快捷键这时,在VC++中编写ObjectARX代码时,就可以按下快捷键Alt+F1,获得ObjectARX的相关帮助。(5)高亮显示、自动提示ObjectARX关键字。答案很简单,安装工具软件VisualAssist6.0(也称VC助手)。安装该软件之后,不禁能够完成显示和自动提示ObjectARX关键字的功能,而且能够设置编辑器的环境,自动提示自定义类的成员变量和函数,非常方便。如果没有VC助手的帮助,那么起码还要在枯燥的编程工作中摸索更长时间。1.1.4效果由于本节内容的特殊性,这里的实例效果没有意义,故略去。1.1.5小结虽然本书介绍的是ObjectARX2002,但是ObjectARX的开发包除若干全局函数的名称和类的数量有所变化之外,总体构架没有太大改变,因此本书的绝大部分实例稍加更改后即可运行于AutoCAD2000以上的各个版本。如果你使用的是VC++.NET2002,配置开发环境的方法与之类似。1.2ObjectARX应用程序的加载和运行1.2.1说明本节介绍在开发ObjectARX程序阶段加载和运行应用程序的方法,这是调试程序的基1.2ObjectARX应用程序的加载和运行7础,也是程序员所使用的方法。在创建打包程序的部分,还要介绍一些自动加载ObjectARX应用程序的方法,那些则是用户使用的方法。1.2.2思路加载ObjectARX应用程序可以通过多种方法:使用APPLOAD命令。使用ARX命令。直接拖放ARX文件。执行ObjectARX应用程序仅可在命令行输入程序中注册的命令。1.2.3步骤下面的步骤演示加载和运行ObjectARX应用程序的方法:(1)使用APPLOAD命令加载程序。在AutoCAD2004中,选择【工具/加载应用程序】菜单项,系统会弹出如图1.7所示的【加载/卸载应用程序】对话框。图1.7加载应用程序从文件列表中选择所要加载的程序,单击【加载】按钮,就可以将选择的程序加载到AutoCAD2004中。需要注意的是,所有二次开发的程序必须加载后才能使用。如果要经常使用某个程序,就可以让AutoCAD2004在启动时自动加载该程序。在【加载/卸载应用程序】对话框中单击【内容】按钮,系统会弹出如图1.8所示的【启动组】对话框。单击【添加】按钮,系统会弹出【将文件添加到启动组中】对话框,在此对话框中选择所要添加到启动组中的程序。回到【启动组】对话框后,单击【关闭】按钮,返回【加载第1章ObjectARX编程基础8/卸载应用程序】对话框,此时启动组中的程序已经被加载。图1.8将程序添加到启动组提示:将程序添加到启动组,使其在AutoCAD启动时自动加载,对于ObjectARX程序的调试很有帮助。(2)使用ARX命令加载程序。在命令行执行ARX命令,按照命令提示进行操作:命令:arx输入选项[?/加载(L)/卸载(U)/命令(C)/选项(O)]:l〖输入L并按下Enter键,系统弹出如图1.9所示的对话框〗图1.9选择所要加载的文件ARX命令还能够完成多种功能:查看当前已经加载的ARX文件。查看系统中已经定义的外部命令。卸载应用程序。1.2ObjectARX应用程序的加载和运行9(3)直接将ARX文件拖放到AutoCAD窗口中。如果指定的ARX成功加载,会在命令行得到如图1.10所示的结果。图1.10成功加载ARX文件的提示(4)要运行ObjectARX程序中注册的命令,可以直接在命令行键入命令名称并按下Enter键,前提是指定的程序已经加载到AutoCAD中。使用ARX命令可以查看系统中已经注册的外部命令,假设已经加载了本章第3节创建的程序(参见1.3节程序的运行结果),那么可以使用ARX命令查看已经注册的命令,运行过程和结果如图1.11所示。图1.11查看已经注册的命令要运行该程序,便可以直接在命令行键入Hello并按下Enter键,得到如图1.12所示的结果。图1.12执行ARX程序的结果1.2.4效果参见上一节的内容。第1章ObjectARX编程基础101.2.5小结学习本节内容之后,读者应该掌握使用APPLOAD命令加载ObjectARX应用程序的方法,以及运行ARX程序的方法。1.3手工创建Hello,World程序1.3.1说明几乎所有程序设计的书籍都从“Hello,World”程序开始,虽然它很简单,但是用来描述程序的基本结构却非常合适。本节将介绍一个完全手工创建的“Hello,World”程序,剖析ObjectARX程序的组成结构。程序所要展示的效果非常简单:当用户加载该程序并在命令行执行相应的命令时,AutoCAD会在命令行输出“Hello,World”。1.3.2思路虽然ObjectARX程序输出文件的后缀是.arx,但是它实际上是一种动态链接库(DLL)。与常规的Windows动态链接库相同,ObjectARX程序是在AutoCAD调用它时加载的,与AutoCAD应用程序自身的代码相互独立。ObjectARX是专门用于AutoCAD应用程序的动态链接库,因此创建ARX程序时需要进行一些设置工作:设置编译器的参数:包括代码的生成方式、ObjectARX头文件的路径。设置链接器的参数:包括输出文件的名称、添加链接库文件、指定ObjectAR
本文标题:ObjectARX开发
链接地址:https://www.777doc.com/doc-4580824 .html