Civil 3D 二次开发 创建AutoCAD对象—— 00 ——

本文通过创建直线、图层和布局等简单实例介绍了AutoCAD二次开发的基础过程。讲解了如何利用向导创建项目、添加类,并实现具体的功能方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不积跬步无以至千里,不积小流无以成江海。虽然创建一条直线、添加一个图层这样的小程序没有什么实际意义(内部命令很简单就可以完成),但对于初学二次开发的您来说,这可是一大步,这一步跨出去,您就跨进了二次开发的大门。

闲话少说,言归正传。这一节我们通过两个简单和一个相对复杂的例子来了解创建AutoCAD对象的基本过程。为了增加面向对象程序设计的印象,本节实例的代码比AutoCAD managed .NET developer’s guide 中的例子稍微复杂一些,希望我能为您讲解明白。

首相利用向导创建项目,之后向项目中添加类,示例代码中类名为CreateEntityDemo。

接下来为类添加三个字段:

    Document doc;

    Editor ed;

    Database db;

这三个字段是在各方法中经常用到的。添加字段的同时注意using相应的命名空间,VS会给出相应的提示,只要用鼠标点击即可。

再接下来创建几个方法:

    public CreateEntityDemo(){}

    public void CreateLine(){}

    public void CreateLayer(){}

    public void CreateLayouts(){}

    private void AddEntToModelSpace(Entity ent){}

第一个方法CreateEntityDemo是类的构造函数,我们将在这个构造函数中初始化刚才添加的3个字段;第二个方法CreateLine将用来创建一条直线;第三个方法CreateLayer将创建一个图层;第四个方法CreateLayouts将创建多个布局及视口;第五个方法

 

5‑1 类图

AddEntToModelSpace将实体添加到模型空间,将在CreateLine中调用。编写创建视口代码过程中,还会出现更多的方法,为了简单明了,在此暂不列出。

在解决方法资源管理中,选中项目,单击鼠标右键,从右键菜单中选择查看→查看类图,找到类CreateEntityDemo,将其展开,应该与右图类似:

让我们回到文本编辑器,您的代码应该与下面代码类似:

01 public class CreateEntityDemo

02 {

03     Document doc;

04     Editor ed;

05     Database db;

06     public CreateEntityDemo(){}

07     public void CreateLine(){}

08     public void CreateLayer(){}

09     public void CreateLayouts(){}

10     private void AddEntToModelSpace(Entity ent){}

11 }

 

我们现在完成类的构造函数,注意此方法与其他方法的不同,其他方法除了public或private关键字外,还有类型修饰符,例如void、bool、double等等,而构造函数只有public修饰符。在方法内部添加以下代码,对三个字段进行初始化。

01 public CreateEntityDemo()

02 {

03     doc = Application.DocumentManager.MdiActiveDocument;

04     ed = doc.Editor;

05     db = doc.Database;

06 }

 

至此,本节示例的准备工作就完成了,接下来就让我们完成其他的方法。首先让我来创建一条直线。

转载于:https://www.cnblogs.com/myzw/p/6924183.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值