[求助]如何得到AcDbBlockReference图块对象的图块名称?
找了好多函数,好像没有直接得到的啊。或者怎么转换成AcDbBlockTableRecord对象,然后调用GetName(),但是如何根据AcDbBlockReference对象得到AcDbBlockTableRecord对象呢?
AcDbBlockReference *pBlkRef = AcDbBlockReference::cast(ent.object());
AcDbObjectId pBlkTblRecId;
pBlkTblRecId = pBlkRef->blockTableRecord();
AcDbBlockTableRecord *pBlkTblRec;
es = acdbOpenObject(pBlkTblRec, pBlkTblRecId, AcDb::kForRead);
让王斑竹费心了。。。谢谢。。。辛苦了。。。
因为我是在遍历中需要得到块表记录,直接利用
pIter->getRecord(pRecord,AcDb::kForRead)
就可以了,而我多此一举,pBtrIter->getEntity (pEnt, AcDb::kForRead)
所以才会有上面的问题了。
顺便问一下,
AcDbBlockReference和以及AcDbAttribute有什么区别啊,怎么个用法,能不能简单介绍介绍?
对cad的对象有个大概了解吧?
AcDbBlockReference和是两种对象,即块和属性定义,两者组合成属性块,想要操作属性块可能是要用到AcDbAttribute类吧.
vba对象模型中有这几种实体:
CAD对象这个结构图哪里有啊?谢谢! 截图是AutoCAD ActiveX vba的对象模型,你可以在电脑上搜索acadauto.chm这个文件,是英文的,
《ActiveX 和 VBA 参考》由乐筑天下翻译.chm,中文是2006版,由乐筑天下翻译的。
高版本有在线版本。附上2019的链接
https://help.autodesk.com/view/O ... 2-B674-1FE200B9FE30
页:
[1]