找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1061|回复: 8

[每日一码] 创建弧长标注

[复制链接]

已领礼包: 19个

财富等级: 恭喜发财

发表于 2016-10-3 21:09:01 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 Lisphk 于 2016-10-3 21:11 编辑

学习VLISP,写了个创建弧长标注的函数

参数
e: 可以是圆弧实体,也可以是圆心点
spt:圆弧标注起点
ept:圆弧标注终点
pos:标注线的位置点

  1. (defun XD:DIM:MakeDimArc (e spt ept pos / cen)
  2.   (if (= (type e) 'ename)
  3.     (setq cen (vla-get-center (vlax-ename->vla-object e)))
  4.     (setq cen (vlax-3d-point e))
  5.   )
  6.   (if (not
  7.   (vl-catch-all-error-p
  8.     (vl-catch-all-apply
  9.       'vla-adddimarc
  10.       (list (vla-get-modelspace
  11.         (vla-get-activedocument (vlax-get-acad-object))
  12.       )
  13.       cen
  14.       (vlax-3d-point spt)
  15.       (vlax-3d-point ept)
  16.       (vlax-3d-point pos)
  17.       )
  18.     )
  19.   )
  20.       )
  21.     (entlast)
  22.   )
  23. )


QQ截图20161003210958.png

评分

参与人数 1D豆 +5 收起 理由
newer + 5 很给力!经验;技术要点;资料分享奖!

查看全部评分

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

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-3 22:36:27 | 显示全部楼层
很不错,可用,建议, 起始点SPT和终点EPT 可以给参数T,直接标注弧的起点和端点,这样就省去函数外部另外计算端点的代码了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 2226个

财富等级: 金玉满堂

发表于 2016-10-3 23:02:49 | 显示全部楼层

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

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

 楼主| 发表于 2016-10-4 00:53:26 | 显示全部楼层

修改了,现在SPT , EPT如果不给点,并且E是实体的时候,取整个弧标注了。

  1. (defun XD:DIM:MakeDimArc (e spt ept pos / cen)
  2.   (if (= (type e) 'ename)
  3.     (progn
  4.       (setq cen (vla-get-center (setq obj (vlax-ename->vla-object e))))
  5.       (if (/= (type spt) 'LIST)
  6.   (setq spt (vla-get-startpoint obj))
  7.   (setq spt (vlax-3d-point spt))
  8.       )
  9.       (if (/= (type ept) 'LIST)
  10.   (setq ept (vla-get-endpoint obj))
  11.   (setq ept (vlax-3d-point ept))
  12.       )
  13.     )
  14.     (setq cen (vlax-3d-point e))
  15.   )
  16.   (if (not (vl-catch-all-error-p
  17.        (vl-catch-all-apply
  18.          'vla-adddimarc
  19.          (list
  20.      (vla-get-modelspace
  21.        (vla-get-activedocument
  22.          (vlax-get-acad-object)
  23.        )
  24.      )
  25.      cen
  26.      spt
  27.      ept
  28.      (vlax-3d-point pos)
  29.          )
  30.        )
  31.      )
  32.       )
  33.     (entlast)
  34.   )
  35. )

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

使用道具 举报

已领礼包: 8973个

财富等级: 富甲天下

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

使用道具 举报

已领礼包: 6881个

财富等级: 富甲天下

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

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2016-10-4 12:12:37 | 显示全部楼层

CAD有命令能标注椭圆弧吗?

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

使用道具 举报

已领礼包: 5329个

财富等级: 富甲天下

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

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-15 04:29 , Processed in 0.188354 second(s), 48 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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