



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用用 VBVB 对对 AutoCADAutoCAD 进行二次开发进行二次开发 用用 VBVB 对对 AutoCADAutoCAD 进行二次开发进行二次开发 A utoCAD 一直是 CAD 市场中的主流产品 随着 AutoCAD 的日益普及 在其上进行二次 开发的工具也不断更新 从早期的 Auto Lisp ADS DCL 到现在流行的 Object ARX ActiveX Automation Visual Lisp 均可十分方便地对 AutoCAD 进行二次开发 本文主要讨论关于运用 Visual Basic 对 AutoCAD 基于 ActiveX Automation 的二次开 发技术 选用 ActiveX 有两个原因 一是因为 Visual Basic 的普及性与易用性 二是 采用这种方法进行二次开发可方便地实现与其它图形软件的接口 如与 Solid Works 实现实体造型与二维绘图的结合 以及根据用户的特殊需要开发出一定功能的软件 二 ActiveX Automation 技术 AutoCAD 中的 ActiveX Automation 是微软公司 ActiveX 规范的具体应用 它通过 基于 ActiveX 的自动化对象 为其他应用程序提供了访问 AutoCAD 内部功能的方法 是 AutoCAD 最新的开发接口 在运行时 AutoCAD 与其他应用程序之间的关系是服务器 与客户的关系 开发人员使用支持 ActiveX 规范的编程语言 如 VB Dephi 等 能通过 访问 AutoCAD 的对象模型 把 AutoCAD 的强大功能集成到应用程序中 AutoCAD 的对象 模型是一种树型结构模型 根为 AutoCAD Application AutoCAD 中的所有对象都是 AutoCAD Application 的子对象 图 1 所示为 AutoCAD 对象模型的层次结构树 其中父 对象与子对象之间的关系并不是对象继承关系 而是包含关系 图 1 AutoCAD 中 ActiveX 对象的总结构图 三 ActiveX Automation 的使用方法 1 Application 对象 如果在计算机系统上安装了 AutoCAD 则 Windows 会自动将其所有的信息注册到系 统注册表里 那么在启动 Visual Basic 后 用户可以象调用 VB 自己的对象一样调用 AutoCAD 所提供的 ActiveX 在编程 调试或运行时至少应该有一个 AutoCAD 副本在运行 可以通过以下的代 码创建 AutoCAD 对象 Dim AcadApp as Object 定义一个对象 On Error Resume Next Set AcadApp GetObject AutoCAD Application If Err Then 如果没有一个 AutoCAD 副本在运行 Err Clear Set AcadApp CreateObject AutoCAD Application AcadApp Visable True 启动一个 AutoCAD 副本并设为可见 If Err Then MsgBox Err Description 如果失败 给出错误提示 Exit Sub End If End If 2 Preferences 与 Document 对象 与 AutoCAD 中的 Preferences 对话框的作用相同 通过 Preferences 对象可以读 取或设置 AutoCAD 的一些基本设置 Preferences 对象通过 Application 的 Preferences 属性返回 Dim AcadPref as Object Set AcadPref AcadApp Preferences 比如 用户可通过 Preferences 对象进行如下的设置 AcadPref Cursorsize 100 AcadPref DisplayScreenMenu acTrue AcadPref DisplayScrollBars Check1 value Document 对象表示 AutoCAD 中中当前打开的文档 对 AutoCAD 中的任何其它操作 都需用到 Document 对象 该对象可以通过 ActiveDocument 属性返回 Dim AcadDoc as Object Set AcadDoc AcadApp ActiveDocument AutoDesk 公司使用了集合的概念 在 Document 对象中有 14 个集合 具体如图 1 所示 与 VB 中的集合一样 这些集合都支持 Add Item 方法与 Count 属性 例如 Add 方法可以向该集合中添加一个对象 Item X 可以的得到该集合中的第 X 个对象 Count 属性可以得到该集合中的对象的个数 在一个 AutoCAD 副本运行时 只能同时打开一个 Document 可以调用 Document 的 New Save 方法以及 Saved 属性来打开或保存一个 AutoCAD 文档 If Not AcadDoc Saved Then AcadDoc Save Else Set AcadDoc AcadDoc New acad End If 3 创建 查询与修改 AutoCAD 图形对象 在创建 AutoCAD 图形对象之前 首先必须定义并创建 ModelSpace 与 PaperSpace 集合对象 这两个对象可通过 Document 对象的 ModelSpace 属性与 PaperSpace 属性返 回 Dim moSpace as Object paSpace as Object Set moSpace AcadDoc ModelSpace Set paSpace AcadDoc PaperSpace 所有关于图形对象操作的方法与属性都包含在这两个对象中 创建文本对象 Dim moSpace as Object Set moSpace AcadDoc ModelSpace Dim Pnt 0 to 2 as Double 定义一个 AutoCAD 三维点 Dim TextH as Double 定义字符高度 Dim Textstr as String 定义字符变量 Dim TextObj as Object 定义一个 AutoCAD 文本对象 Pnt 0 2 Pnt 1 4 Pnt 2 0 初始化坐标 TextH 1 TexrStr This is a test Set TextObj moSpace AddText TextStr Pnt TextH 创建文本对象 查询与修改图形对象 有时用户不但要创建图形对象 更多的情况是修改或控制已存在的 对象 这就需要对已创建的对象进行查询 从而得到所要操作的对象 可以通过属性来得到图形对象的个数 Dim noMSOBJ as String noPSOBJ as String NoMSOBJ Str moSpace Count NoPSOBJ Str paSpace Count MsgBox Object Mspace Pspace 其次 AutoCAD 首次实现了面向对象的开发技术 用户可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO 1120:2025 EN Conveyor belts - Determination of strength of mechanical fastenings for textile conveyor belts- Static test method
- T/CI 172-2023扑翼飞行机器人机载视觉系统
- 商场安全员培训课件
- 2025年汽车行业智能网联技术发展前景研究报告
- 2025年可再生能源行业可再生能源发电技术及市场前景研究报告
- 2025年风电行业风能利用技术发展前景研究报告
- 2025年电信通讯行业5G技术应用前景研究报告
- 2025年区块链行业区块链数字资产交易市场前景研究报告
- 定海区2025年浙江舟山市定海区环境卫生管理中心编外招聘2人笔试历年参考题库附带答案详解
- 大足区2025重庆大足区某机关事业单位招聘2人笔试历年参考题库附带答案详解
- 离子检验-教案-
- GB/T 12643-2025机器人词汇
- Unit 5 Lesson 20 The Spring Festival Is Coming!(说课稿)-2024-2025学年冀教版(三起)英语五年级上册
- 智能悬架系统集成开发关键技术与实践-2024-12-技术资料
- 应用PDCA降低药占比
- 分包商安全管理规定(4篇)
- 超重与失重+说课高一上学期物理人教版(2019)必修第一册
- 公司收取管理费协议书范本
- JTS-165-6-2008滚装码头设计规范-PDF解密
- 设备维修与保养(课件)
- 医院培训课件:《和谐医患关系的建构与医疗纠纷的应对》
评论
0/150
提交评论