找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2920|回复: 4

[求助] C# 自定义实体对象

[复制链接]

已领礼包: 2个

财富等级: 恭喜发财

发表于 2018-9-28 11:44:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
。net 能搞cad 自定义实体吗,可有例子,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2018-10-30 09:57:18 | 显示全部楼层
class AddSolid {
            
             public void Add()
             {
                 Solid3d T = Torus(200, 30);
                 Move(T, new Point3d(100, 100, 0));
                 ToModelSpace(T); Solid3d B = Box(100, 300,100);
                 Move(B, new Point3d(-300, -300, 0)); ToModelSpace(B);
             }
             /// <summary> /// 添加对象到模型空间
             /// </summary>
             /// <param name="ent">要添加的对象</param>
             /// <returns></returns>
             public static ObjectId ToModelSpace(Entity ent) {
                 Database db = HostApplicationServices.WorkingDatabase;
                 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;
             }
             /// <summary> /// 圆环 /// </summary>
             /// <param name="MajorRadius">主圆半径</param>
            /// <param name="MinorRadius">圆环半径</param>
             /// <returns></returns>
             public static Solid3d Torus(double MajorRadius, int MinorRadius)
             {
                 Solid3d Solid = new Solid3d();
                 Solid.CreateTorus(MajorRadius, MinorRadius);
                 return Solid;
             }
             /// <summary> /// 创建长方体 /// </summary>
             /// <param name="X">长</param>
             /// <param name="Y">宽</param>
             /// <param name="Z">高</param> ///
             /// <returns></returns>
             public static Solid3d Box(double X, double Y, double Z)
             {
                 Solid3d Solid = new Solid3d();
                 Solid.CreateBox(X, Y, Z);
                 return Solid;
             }
             /// <summary> /// 以原点为基点,指定目标点移动实体 /// </summary>
             /// <param name="ent">实体对象</param>
             /// <param name="pt">目标点</param>
             public static void Move(Entity ent, Point3d pt)
             {
                 Matrix3d mt = Matrix3d.Displacement(pt - new Point3d());
                 ent.TransformBy(mt);
             }
         }
    }
虽然不知道你是不是要3d的实体。试试这段代码吧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2018-11-26 10:31:01 | 显示全部楼层
可用ObjectArx 自定义实体,然后用CLI 包装,供C#调用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2019-4-23 11:14:14 | 显示全部楼层
wangchao73class 发表于 2018-11-26 10:31
可用ObjectArx 自定义实体,然后用CLI 包装,供C#调用

大神能否给个具体操作的例子吗 比如说自定义矩形实体之类 然后如何用CLI封装以及怎么调用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2019-4-23 11:15:23 | 显示全部楼层
wangchao73class 发表于 2018-11-26 10:31
可用ObjectArx 自定义实体,然后用CLI 包装,供C#调用

大神能否给个具体例子 比如自定义矩形实体
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 21:51 , Processed in 0.221539 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表