直线——line,圆——circle当然还有其的类,圆弧、多段线、样条曲线、椭圆、文字、标注、块、点。想画一条线的话就需要先给出两个点。

Point3d pt1 = new Point3d(0, 0, 0);
Point3d pt2 = new Point3d(10, 0, 0);
Line l1 = new Line(pt1,pt2);

代码中的直线画出来后,运行程序,cad的模型空间中并不会出现这条直线。此时需要将直线添加到模型空间中。下面是将图元添加到模型空间的函数。

public static ObjectId AddToModelSpace(this Database db, Entity ent)
{ObjectId entId;using (Transaction trans = db.TransactionManager.StartTransaction()){BlockTable bt = (BlockTable)trans.GetObject(db.BlockTableId, OpenMode.ForRead);BlockTableRecord btr =(BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);entId = btr.AppendEntity(ent);trans.AddNewlyCreatedDBObject(ent, true);trans.Commit();}return entId;
}

下面是完整的画线&圆代码。

Point3d pt1 = new Point3d(0, 0, 0);
Point3d pt2 = new Point3d(100, 0, 0);
Line l1 = new Line(pt1,pt2);
Vector3d ve = new Vector3d(0, 0, 1);
Circle cir = new Circle(pt1,ve,120);
//cir.ColorIndex = 2;
//l1.ColorIndex = 2;
db.AddToModelSpace(l1);
db.AddToModelSpace(cir);

实际上,画线/圆之类的,固定的复杂形状,cad本身可以用块的方法解决。二次开发可以实现,但是没有明显简便很多。书上还有详细的各种类及函数的用法,同时也有复制,阵列,缩放,移动图元的介绍,按需查找使用即可。

cad二次开发c#学习记录2——画一条线相关推荐

  1. cad二次开发c#学习记录1——hello carrot!

    准备工作:安装Autocad和VS2015.过程略.购买参考书<Autocad开发基础与实例教程c#版>,个人感觉看完这本书基本可以做些自己相关的实用的cad二次开发了. 打开vs,新建- ...

  2. auto CAD 二次开发 c#.net 之JIG画多段线(polyline)

    在CAD 命令中画多段线的命令为:pline.下面将介绍一种JIG画多段线的方法. 首先,来介绍一下JIG这个东西. EntityJig(实体动态预览),按照指定步骤模仿特定类型的单个实体对象.首先, ...

  3. autocad.net 画多段线_auto CAD 二次开发 c#.net 之JIG画多段线(polyline)

    在CAD 命令中画多段线的命令为:pline.下面将介绍一种JIG画多段线的方法. 首先,来介绍一下JIG这个东西. EntityJig(实体动态预览),按照指定步骤模仿特定类型的单个实体对象.首先, ...

  4. cad二次开发C#学习记录5——导出属性块信息

    一个cad文件中有很多图纸,如何一下子得到每张贴纸图纸的名称,材质及数量呢?贴纸图纸如下图. 代码如下:拿上上次的套一下哎. [CommandMethod("qq")]//less ...

  5. cad二次开发c#学习记录4——导出图纸标注的尺寸

    通过遍历多边形可以得到每个多边形的面积,那么是不是遍历图纸上的每个尺寸就可以得到尺寸标注的数值呢?当然可以.事实上,你基本上可以得到"特性"内的所有信息. 尺寸类:dimensio ...

  6. c# CAD二次开发入门学习二

    获取到一个图形对象 : AcadDocument oAcadDocument = oAcadApplication.Documents.Open(FileName, null, null); 有了图形 ...

  7. C# CAD二次开发通过代码模拟 人工 画齿轮的算法思路

    [CommandMethod("FirstLine")]public void FirstLine(){Editor ed = Application.DocumentManage ...

  8. 【CAD二次开发】最完美EntityJig画polyline arc实例

    下面是效果图 2021/10/11更新添加可以捕捉拐点的功能 public static class JigCommand{public static void RunBulgePolyJig(str ...

  9. c#CAD二次开发全套视频目录

    本人非专业编程人员,设计院画图民工一名.自学CAD编程,也写了一些小程序!初期学习lisp编程语言,基本了解CAD各中开发模块,写过一些程序!前段时间自学C#CAD二次开发,遍布网上无教学视频.经过自 ...

  10. cad 二次开发 插入图片_C#之CAD二次开发(2) 直线对象创建及添加

    0. 前言 从本文开始就正式登上开往CAD二次开发幼儿园的大巴车了!你准备好了吗?车门已经焊死! 还有,本系列笔记是默认大家都有C#的基础的了.这个系列笔记是我自己学习CAD二次开发的一些记录,可能存 ...

最新文章

  1. 《数据科学家养成手册》--第十一章算法学2---(非监督,监督贝叶斯概率以及损失函数)
  2. zeptojs-跑马灯效果
  3. python运行方式特点_编程必修课:一文弄懂python的运行机制
  4. Centos7 上安装mysql遇上的问题:mysql无法正常启动
  5. Adobe AIR for html/js人员
  6. hackgame汇总
  7. 平衡二叉树(AVL树)-详解平衡调整
  8. Redis数据库的连接
  9. 设计素材模板|春节要来了,素材准备好了么?
  10. Angular07 利用angular打造管理系统页面
  11. sql limit 子句_SQL有子句–综合指南
  12. 计算机算法基础:分治法
  13. python pandas 教程下载_如何用Python处理Excel?Pandas视频教程官方文档来啦~
  14. cmf php,php cmf
  15. 读书笔记-反省使人成长
  16. Android-常用基本控件
  17. 手眼标定——九点标定
  18. 微软edge浏览器安装包下载地址-Microsoft edge download
  19. 判断各类无盘软件是否处于超管状态
  20. 产品经理的六大工作职责

热门文章

  1. java使用POI导出Excel,下拉列表联动,单元格合并,日期校验,锁定指定列禁止修改
  2. Ubuntu 14.04安装 skype
  3. Skype for Business Server前端高可用原理分析
  4. Python TCP接收/发送信息
  5. hdu 6080 度度熊保护村庄(floydS使用技巧)
  6. 安装Alfa Awus 1900 驱动到 Kali Linux
  7. 朗强:HDMI分配延长器的作用
  8. 2020年9月各城市程序员工资统计
  9. 人物画像及“七步人物角色法”
  10. 图像智能处理黑科技,让图像处理信手拈来