找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2082|回复: 6

[你问我答] 用LISP获得region的型心

[复制链接]

已领礼包: 145个

财富等级: 日进斗金

发表于 2013-5-13 22:30:17 | 显示全部楼层 |阅读模式

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

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

×

问:Polyline转换成region后,可以通过MASSPROP获得信息,使用系统变量PERIMETER,AREA得到周长和面积,但是没有型心,如何用LISP程序获得region的型心?

答:
使用ActiveX 接口获得region的型心,看下面代码演示。

[sell=5]
[pcode=lisp,true](defun GetCentroid ()
(vl-load-com)
(setq anEnt (entsel "\nSelect A Region: "))
(if anEnt
    (progn
      (setq anObj (vlax-ename->vla-object (car anEnt)))
      (princ (strcat "\nObject Name: " (setq objName (vla-Get-ObjectName
anObj))))
      (if (equal objName "AcDbRegion")
        (progn
          (setq vCentroid (vla-Get-Centroid anObj))
          (setq strCentroidProp (vl-princ-to-string (setq CentroidLst
(vlax-safearray->list (vlax-variant-value vCentroid)))))
          (if (< (length CentroidLst) 3)
           (setq CentroidLst (append CentroidLst (list 0.0)))
          )
          (princ (strcat "\nRegion Centroid: " strCentroidProp))
          (setvar "PDMODE" 3)
          (setq *MS* (vla-Get-ModelSpace (setq acadDoc
(vla-Get-ActiveDocument (setq acadApp (vlax-get-acad-object))))))
          (setq ptObj (vla-AddPoint *MS* (vlax-3d-Point CentroidLst)))]
          (vla-Put-Color ptObj acYellow)
        )
        (princ "\nRegion was not selected !")
      )
    )
)
(princ)
)

(princ "\nGetCentroid loaded, type (GetCentroid) to run.")
(princ)]
[/pcode]
[/sell]

评分

参与人数 1D豆 +5 收起 理由
xshrimp + 5 出题引导交流奖!

查看全部评分

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

已领礼包: 604个

财富等级: 财运亨通

发表于 2013-5-14 08:23:53 | 显示全部楼层
我原来认为,只有highflybir才能写出这样的程序。江山代有才人出...
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 218个

财富等级: 日进斗金

发表于 2013-5-14 09:02:59 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-5-14 08:23
我原来认为,只有highflybir才能写出这样的程序。江山代有才人出...

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

使用道具 举报

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

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

 楼主| 发表于 2013-5-14 11:29:19 | 显示全部楼层
PLgis 发表于 2013-5-14 11:02
不知XDCAD回购D豆做什么?
不是舍不得,而是浪费时间

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

使用道具 举报

已领礼包: 218个

财富等级: 日进斗金

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

使用道具 举报

已领礼包: 568个

财富等级: 财运亨通

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-23 01:18 , Processed in 0.422273 second(s), 45 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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