欢迎加我的QQ群:193522571,一起来讨论、交流!

AutoCAD.Net/C#.Net QQ群:193522571 DBText对象中有ID,BlockId还有OwnerId,区别是什么?

 

            DBText entResult = (DBText)trans.GetObject(sh.ResultObjectId, OpenMode.ForRead);
                        //可能有问题,将BlockId修改成OwnerId后没有问题
                        //下面这个就有问题,得到的是BlockTableRecord,不能强制转换成BlockReference
                        //BlockReference blkResult = (BlockReference)trans.GetObject(entResult.BlockId, OpenMode.ForRead);
                        //下面这个没有问题
                        BlockReference blkResult = (BlockReference)trans.GetObject(entResult.OwnerId, OpenMode.ForRead);
            BlockTableRecord btr = (BlockTableRecord)trans.GetObject(blkResult.BlockTableRecord, OpenMode.ForRead);

ID:指其本身的objectid

BlockId:指其所在的块定义的id

OwnerId:指其所在的块参照的id

初学者肯定比较晕

 

posted @ 2019-08-08 11:37  swtool  阅读(454)  评论(0编辑  收藏  举报
欢迎加我的QQ群:193522571,一起来讨论、交流!