找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 649|回复: 9

[求助] 【已解决】在arx 如何获得闭合多段线的各个顶点坐标? 这里先谢谢各位大佬!!

[复制链接]
发表于 2018-7-26 10:46:36 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 大愚 于 2018-8-6 10:41 编辑

  1. void CChicunUtil::chicuntiqu( AcDbObjectId pentId )
  2. {
  3.         
  4.         AcDbEntity* pEnt;

  5.         if (acdbOpenObject(pEnt,pentId,AcDb::kForRead)!=Acad::eOk)

  6.                 return FALSE;

  7.         if (pEnt->isKindOf(AcDbPolyline::desc()))
  8.         {
  9.                 AcDbPolyline* pPoly = (AcDbPolyline*)pEnt;

  10.                 AcGePoint2dArray& pts[4];

  11.                 pPoly->getPointAt(0,pts[1]);
  12.                
  13.          

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

已领礼包: 13个

财富等级: 恭喜发财

发表于 2018-7-26 13:15:34 | 显示全部楼层
根据顶点数,循环就行了

  1. AcDbPolyline* pPoly = (AcDbPolyline*)pEnt;

  2. AcGePoint2dArray pts;
  3. AcGePoint2d pt;
  4. for (int i=0;i<pPoly->numVerts();i++)
  5. {
  6.         if (pPoly->getPointAt(i,pt) == eOk)
  7.         {
  8.                 pts.append(pt);
  9.         }
  10. }

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

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

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

使用道具 举报

 楼主| 发表于 2018-7-27 15:05:35 | 显示全部楼层
LoveArx 发表于 2018-7-26 13:15
根据顶点数,循环就行了

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

使用道具 举报

 楼主| 发表于 2018-7-27 15:08:11 | 显示全部楼层

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

使用道具 举报

已领礼包: 28个

财富等级: 恭喜发财

发表于 2018-7-27 16:44:49 来自手机 | 显示全部楼层
st788796 发表于 2018-7-26 11:10
Getstretchpoint

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

使用道具 举报

 楼主| 发表于 2018-8-10 16:41:33 | 显示全部楼层
1121443108qaz 发表于 2018-7-27 16:44
大神,getstretchpoint和getgrippoint有什么不同啊

不好意思  我也是菜鸟   查了一下 getstretchpoint是求多段线的延伸点(比如你找到多段线上的某一个点,通过这个方法就可以找到其余的顶点),getgrippoints是CAD支持的夹点对象(这个我也不太明白)     也就理解这么多了   
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2018-8-10 17:21:54 | 显示全部楼层
1121443108qaz 发表于 2018-7-27 16:44
大神,getstretchpoint和getgrippoint有什么不同啊

stretchpoint 是你用 stretch命令 能拉伸的那些点

grippoint 是你能捕捉的那些点

拿个矩形测试

命令: (setq a (xdrx_entity_getstretchpoint (entlast)))
((-215473.0 402808.0 0.0) (-201381.0 402808.0 0.0) (-201381.0 411688.0 0.0) (-215473.0 411688.0 0.0))

命令:
命令: *取消*

命令: (setq a (xdrx_entity_getgrippoint (entlast)))
((-215473.0 402808.0 0.0) (-208427.0 402808.0 0.0) (-201381.0 402808.0 0.0) (-201381.0 407248.0 0.0) (-201381.0 411688.0 0.0) (-208427.0 411688.0 0.0) (-215473.0 411688.0 0.0) (-215473.0 407248.0 0.0))


stretchpoint 4个点
grippoint 8个点, 多了4个 中间捕捉点

搜狗截图20180810172027.png

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2018-8-16 16:34:57 | 显示全部楼层
学习学习了,解释的很全面啊!形象生动易懂啊!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 18:38 , Processed in 0.258484 second(s), 50 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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