找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 131|回复: 0

ARX 实体的偏移

[复制链接]

1

主题

0

回帖

37

积分

管理员

积分
37
发表于 2024-5-2 22:46:31 | 显示全部楼层 |阅读模式
  1. static void TESToffentcmd()
  2. {
  3. ads采用real dis;
  4. if(acedGetReal(采用T("\n输入偏移距离"),&dis) != RTNORM)
  5. {
  6. return;
  7. }
  8. ads采用name en;
  9. ads采用point pt;
  10. if(acedEntSel(采用T("\n选择要偏移的实体"),en,pt) != RTNORM)
  11. {
  12. acutPrintf(采用T("\n选择实体失败"));
  13. return;
  14. }
  15. AcDbObjectId id;
  16. if(acdbGetObjectId(id,en) != Acad::ErrorStatus::eOk)
  17. {
  18. acutPrintf(采用T("\n实体ID获取失败"));
  19. return;
  20. }
  21. AcDbEntity* pEnt;
  22. if(acdbOpenObject(pEnt,id,AcDb::OpenMode::kForRead) != Acad::ErrorStatus::eOk)
  23. {
  24. acutPrintf(采用T("\n实体打开失败"));
  25. return;
  26. }
  27. if(pEnt->isKindOf(AcDbCurve::desc()))
  28. {
  29. AcDbCurve* pCur = (AcDbCurve*)pEnt;
  30. AcDbVoidPtrArray ptArr;
  31. pCur->getOffsetCurves(dis,ptArr);
  32. int len = ptArr.length();
  33. acutPrintf(采用T("\n有%d个实体"),len);
  34. for(int i = 0;i < len;i ++)
  35. {
  36. AcDbEntity* pEnt2 = (AcDbEntity*)ptArr.at(i);
  37. LoadEntity(pEnt2);
  38. }
  39. }
  40. pEnt->close();
  41. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|膜结构网

GMT+8, 2025-1-4 12:34 , Processed in 0.115361 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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