C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五)

2021-04-18 16:28

阅读:407

1、创建一个图形对象的步骤如下见上一篇博客(三)
2、添加删除实体的工具函数见上一篇博客(四)

3、添加圆的例子(完整源代码请加云幽学院免费课yunyun.ke.qq.com)

 

    [CommandMethod("MKCircle")]
        public void MKCircle()
        {
            //(1)获取当前活动图形数据库
            Database db = HostApplicationServices.WorkingDatabase;
            //(2)新建一个circle对象 
            Point3d cenPt = new Point3d(0, 100, 0); //圆心
            Circle cir= new Circle(cenPt, Vector3d.ZAxis, 100);
      
            //(3)定义一个指向当前数据库的事务处理,以添加直线
            using (Transaction trans = db.TransactionManager.StartTransaction())
            {
                //(3-1)以读方式打开块表..
                BlockTable bt = (BlockTable)trans.GetObject(db.BlockTableId, OpenMode.ForRead);

                //(3-2)以写方式打开模型空间块表记录
                BlockTableRecord btr = (BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);

                //(3-3)将图形对象的信息添加到块表记录中,并返回ObjectId对象.
                btr.AppendEntity(cir);

                //(3-4)把对象添加到事务处理中.
                trans.AddNewlyCreatedDBObject(cir, true);

                //(3-5)提交事务处理
                trans.Commit();
            }
        }

 

这个例子非常简单,想学习AutoCAD二次开发(c#、C++等语言)、BIM软件二次开发、Java、python等在线课程的同学,请关注云幽学院的视频课程 yunyou.ke.qq.com。

 

 


评论


亲,登录后才可以留言!