网站大量收购闲置独家精品文档,联系QQ:2885784924

Arx编程对实体的基本操作.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Arx编程对实体的基本操作

// // ObjectARX defined commands, created by [2010-9-30], , #include StdAfx.h #include StdArx.h #include dbents.h #include geassign.h #include dbpl.h #define PI 3.141592653589793238462643383279502884197169399375105820974944592308 BOOL AddEntityToDBS(AcDbEntity *pEntity, AcDbObjectId Id) { //获取块表 AcDbBlockTable *pBlockTable = NULL; if (acdbHostApplicationServices()-workingDatabase()-getBlockTable(pBlockTable, AcDb::kForRead) != Acad::eOk) { return FALSE; } //获取模型空间的快表记录 AcDbBlockTableRecord *pBlkTabRec = NULL; if (pBlockTable-getAt(ACDB_MODEL_SPACE, pBlkTabRec, AcDb::kForWrite) != Acad::eOk) { pBlockTable-close(); return FALSE; } pBlkTabRec-appendAcDbEntity(Id, pEntity); pEntity-close(); pBlockTable-close(); pBlkTabRec-close(); return TRUE; } //-----------绘制直线----------------------------------------------------- // This is command CLINE, by [2010-9-30], , void EICADDrawCLine() { #ifdef OARXWIZDEBUG acutPrintf (\nOARXWIZDEBUG - EICADDrawCLine() called.); #endif // OARXWIZDEBUG // TODO: Implement the command ads_point pt0; ads_point pt; AcDbObjectId EntId; if (ads_getpoint(NULL, _T(\n请指定起始点:), pt0) !=RTNORM) return; if (ads_getpoint(pt0, _T(\n请指定终点:), pt) != RTNORM) return; AcDbLine *pLine = new AcDbLine(asPnt3d(pt0), asPnt3d(pt)); AddEntityToDBS(pLine, EntId); pLine-close(); } //-----------编辑直线起点----------------------------------------------------- // This is command EDITLSTARTPOINT, by [2010-9-30], , void EICADDRAWEditlstartpoint() { #ifdef OARXWIZDEBUG acutPrintf (\nOARXWIZDEBUG - EICADDRAWEditlstartpoint() called.); #endif // OARXWIZDEBUG // TODO: Implement the command ads_point pt0; ads_point pt; ads_name Ent; AcDbObjectId EntId; AcDbLine *pLine = NULL; if (ads_entsel(_T(\n请选择对象:), Ent, pt0) != RTNORM) return; if (ads_getpoint(NULL, _T(\n请选择起点:), pt) != RTNORM) return; if (acdbGetObjectId(EntId, Ent) != Acad::eOk) return; if (acdbOpenObject(pLine, EntId, AcDb::kForWrite) != Acad::eOk) return;

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档