Delphi二次开发AutoCAD(三)—了解 AutoCAD 对象模型

全屏阅读

2012-04-08 00:04:33 作者: 所属分类:程序设计 阅读:2879 评论:0

标签:

1.1 对象概述

对象是所有 ActiveX 应用程序的主要构造块。每一个显示的对象均精确代表一个 AutoCAD 组件。AutoCAD ActiveX 接口中有许多不同类型的对象。例如:

?  直线、圆弧、文字和标注等图形对象都是对象。

?  线型与标注样式等样式设置都是对象。

?  图层、编组和块等组织结构都是对象。

?  视图与视口等图形显示都是对象。

?  甚至图形、AutoCAD 应用程序本身也是对象。

每一个对象都有其相应的特性、方法,可以读取或改变其特性,可以用方法来控制对象的动作。利用该项技术做AutoCAD二次开发,或者编写基

 AutoCAD的数据库程序,有着显而易见的优越性,尤其与专用语言AutoLISP相比。对象按照分层结构来组织,其根是 Application 对象。这种层次结构的视图称为“对象模型”。对象模型给出了上级对象与下级对象之间的访问关系。

下面的图标诠释了对象与属性之间的关系:

1.2 Application 对象

Application 对象是 AutoCAD ActiveX Automation 对象模型的根对象。通过 Application 对象,用户可以访问任何其他的对象或任何对象指定的特性或方法。

例如,Application 对象具有 Preferences 特性,该特性可以返回 Preferences 对象。通过此对象可以访问“选项”对话框中存储在注册表中的设置。(DatabasePreferences 对象包含存储在图形中的设置,稍后将会讨论这些内容。)通过 Application 对象的其他特性,用户可以访问与应用程序相关的数据,例如应用程序的名称和版本,以及 AutoCAD 大小、位置和可见性。Application 对象的方法可以执行与应用程序相关的操作,例如列表显示、加载和卸载 ADS  ARX 应用程序,以及退出 AutoCAD

Application 对象还提供指向 AutoCAD 图形(通过 Documents 集合)、AutoCAD 菜单和工具栏(通过MenuBar  MenuGroups 集合)以及 VBA IDE(通过 VBE 特性)的链接。
 

Application 对象还是 ActiveX 接口的全局对象,这表示 Application 对象的所有方法和特性都可以用于全局名称空间。

1.3 Document对象

Document 对象(实际上就是 AutoCAD 图形)可以在 Documents 集合中找到。通过它,可以访问所有图形和大部分非图形 AutoCAD 对象。通过 ModelSpace  PaperSpace 集合可以访问图形对象(直线、圆、圆弧等),而通过具有类似名称的集合(例如 LayersLinetypes  TextStyles)则可以访问非图形对象(如:图层、线型、文本样式等)。通过 Document 对象还可以访问 Plot  Utility 对象。

要访问图形特性,请使用 Document 对象的 SummaryInfo 特性。

1.4 集合对象

AutoCAD 将大部分对象进行编组,组成集合。虽然这些集合包含了不同类型的数据,但是可以使用相似的技术来处理它们。每一个集合都提供了向其中添加对象的方法。大多数集合是通过 Add 方法完成的。但添加图元对象通常使用名为 Add<图元名> 的方法。例如,要添加直线,请使用 AddLine 方法。

集合还有一些其他的常用方法和特性。Count 特性用于获取集合中的对象个数(从零开始)。Item 方法用于获取集合中的任何对象。

1.4 图形和非图形对象

图形对象(也称为图元)是组成图形的可见对象(例如直线、圆、光栅图像等)。要创建这些对象,请使用相应的 Add<Entityname> 方法。要修改或查询这些对象,请使用对象本身的方法或特性。每一个图形对象都拥有允许应用程序执行大部分 AutoCAD 编辑命令(例如复制、删除、移动、镜像等)的方法。这些对象还提供了一些方法,用来设置和检索对象的扩展数据,亮显和更新对象,以及检索对象边框。图形对象具有诸如LayerLinetypeColor  Handle 之类的典型特性。还具有一些特有的特性,它们因对象类型不同而有所不同,例如 CenterRadius  Area

非图形对象是指属于图形的一部分但不可见的(提示性的)对象,例如LayersLinetypesDimStylesSelectionSets 等。要创建这些对象,请使用其上级集合对象的 Add 方法。要修改或查询这些对象,请使用对象本身的方法或特性。每一个非图形对象都有用于特定目的的方法和特性,都有设置和检索扩展数据以及删除自己的方法。

1.5 PreferencesPlot  Utility 对象

 Preferences 对象下有一组对象,分别对应&ldquo;选项&rdquo;对话框中的一个选项卡。这些对象提供对&ldquo;选项&rdquo;对话框中所有存储在注册表中的设置的访问。DatabasePreferences 对象包含存储在图形中的设置。还可以利用SetVariable  GetVariable 方法设置和修改选项(以及不属于&ldquo;选项&rdquo;对话框的系统变量)。关于设置选项的详细信息,请参见设置 AutoCAD 系统配置。

可以通过 Plot 对象访问&ldquo;打印&rdquo;对话框中的设置,而且应用程序可以通过此对象使用各种方法打印图形。关于打印的详细信息,请参见打印图形。

Utility 对象提供用户输入和转换函数。用户输入函数是提示用户在 AutoCAD 命令行中输入各种类型的数据(例如字符串、整数、实数、点等)的方法。转换函数是操作 AutoCAD 特有的数据类型(例如点和角度)以及处理字符串和数值的方法。关于用户输入函数的详细信息,请参见提示用户输入。

顶一下
(0)
100%
订阅 回复
踩一下
(0)
100%
» 郑重声明:本文由不吃醋的猫发布,所有内容仅代表个人观点。版权归懒猫窝窝不吃醋的猫共有,欢迎转载, 但未经作者同意必须保留此段声明,并给出文章连接,否则保留追究法律责任的权利! 如果本文侵犯了您的权益,请留言。
  • 目前有 0 条留言 其中:访客:0 条, 博主:0 条

    给我留言