CAD lisp 求助一段代码实现自动标注!

我有很多直线,每个直线端点处都有直径4的圆圈,求助一段代码实现每段实现的尺寸都被标注出来,最好标注的内容在特定图层!... 我有很多直线,每个直线端点处都有直径4的 圆圈,求助一段代码实现每段实现的尺寸都被标注出来,最好标注的内容在特定图层! 展开
 我来答
lyt8353381
2013-12-25 · TA获得超过267个赞
知道小有建树答主
回答量:143
采纳率:0%
帮助的人:143万
展开全部
(defun c:autodimlines ()
(setq ss (ssget '((0 . "line"))))
(setq number (sslength ss))
(setq i 0)
(repeat number
(setq entname (ssname ss i))
(setq ent (entget entname))
(setq point_a (cdr (assoc 10 ent)))
(setq point_b (cdr (assoc 11 ent)))
(setq d (* -0.2 (distance point_a point_b)))
(command "dimaligned" point_a point_b point_b)
(setq ent (entget(entlast)))
(setq x1 (car point_a) y1 (cadr point_a) x2 (car point_b) y2 (cadr point_b))
(setq point (calculate_dalposition x1 y1 x2 y2 d))
(entmod (subst (cons 10 point) (assoc 10 ent) ent) )
(setq i (+ i 1))
)
)
(defun calculate_dalposition (x1 y1 x2 y2 d)
(if (/= (- y2 y1) 0)
(progn
(setq k (/ (- x1 x2) (- y2 y1)) )
(setq thita (atan k))
(if (< thita 0)
(setq thita1 (+ 3.1415926 thita) thita2 (* -1 thita))
(setq thita1 thita thita2 thita)
)
(setq x (- x2 (* d (cos thita1))))
(setq y (- y2 (* d (sin thita2))))
(list x y)
)
(progn
(setq y (- y2 d) x x2)
(list x y)
)
)
)
不知道cad能运行不 浩辰 可以
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
angely0318
2013-12-24 · TA获得超过112个赞
知道答主
回答量:63
采纳率:0%
帮助的人:31.9万
展开全部
使用天正 有自动标注功能啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式