模具知识|对AutoCAD进行二次开发

   日期:2017-01-20     来源:建材之家    作者:模具之家    浏览:51    评论:0    
核心提示:一、引言 AutoCAD一直是CAD市场中的主流产品。随着AutoCAD的日益普及,在其上进行二次开发的工具也不断更新。从早期的Auto Lisp、ADS、 DCL到现在流行的 Object ARX、ActiveX Automation、Visual Lisp,均可十分方便地对AutoCAD进行二次开发。本文主要讨论关于运用Visual Basic对AutoCAD基于ActiveX Automa

模具知识|数控铣床安全操作规程

推荐简介:1、 上班必须按要求穿工作服,否则不许进入车间。   2、 禁止带手套操作机床,若长发要戴帽子或发网。   3、 所有实验步骤须在实训教师指导下进行,未经指导教师同意,不许开动机床。  4、 机床开动期间严禁离开工作岗位做与操作无关的事情。   5、 严禁在车间内嬉红戏、打闹。机床开动时,严禁在机床间穿梭。   6、 未经指导教师确认程序正确前,不许动操作箱上已设置好的“机床锁住”状态键。  7......
模具之家讯:一、引言
AutoCAD一直是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对象模型的层次结构树,其中父对象与子对象之间的关系并不是对象继承关系,而是包含关系。 

三、ActiveX Automation的使用方法
1. Application对象
如果在计算机系统上安装了AutoCAD,则Windows会自动将其所有的信息注册到系统注册表里。那么在启动Visual Basic后,用户可以象调用VB自己的对象一样调用AutoCAD所提供的ActiveX。
在编程、调试或运行时至少应该有一个AutoCAD副本在运行。可以通过以下的代码创建AutoCAD对象。
Dim AcadApp as Object ’定义一个对象
On ErrorResume 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) ’创建文本对象

模具之家为您提供最全面的塑胶,塑料,模具,模具设计,塑胶模具品牌的装修知识点和各种塑胶模具的导购与在线购买服务,拥有最便宜的塑胶模具价格和最优质的售后服务,敬请登陆模具之家:http://muju.jc68.com/
广告
 
打赏
 
更多>文章标签:塑料 ;相关产品:
更多>同类头条资讯
0相关评论

推荐图文更多...
点击排行更多...
模具商圈内事更多...
最新视频更多...
推荐产品更多...
建材风水 | 木板之家 | 电工之家 | 壁纸之家 | 净化之家 | 安防之家 | 水暖之家 | 洁具之家 | 窗帘头条 | 家饰之窗 | 老姚之家 | 灯饰之家 | 电气之家 | 全景头条 | 陶瓷之家 | 照明之家 | 防水之家 | 防盗之家 | 博一建材 | 卫浴之家 | 区快洞察 | 郑州建材 | 驻马店建材 | 周口建材 | 信阳建材 | 商丘建材 | 南阳建材 | 三门峡建材 | 漯河建材 | 许昌建材 | 濮阳建材 | 焦作建材 | 新乡建材 | 鹤壁建材 | 安阳建材 | 平顶山建材 | 洛阳建材 | 开封建材 | 武汉建材 | 神农架建材 | 天门建材 |
建材 | 720全景 | 企业之家 | 移动社区 | 关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图 | 排名推广 | 广告服务 | 积分换礼 | RSS订阅 | sitemap |
(c)2015-2017 BO-YI.COM SYSTEM All Rights Reserved
Powered by 模具头条