论坛首页 | 新人报到 |发帖必看—论坛版规 | 错误报告 | 注册用户
Baidu
发新话题
打印

[转帖]弧长标注

[转帖]弧长标注

(princ "\ndmarc=====dim arc 单段圆弧标注--------lxx.2001.5")

(princ "\ndimarc=====dim arc 圆弧连续标注--------lxx.2001.5")

;;=============================================================

(defun c:dmarc (/ n ent entl rad ans ane ptcen pts pte ang arcl)

(princ "\ndim arc 单段圆弧标注--------lxx.2001.5")

(setq n (getint "\n标注文字小数点后位数lt;2gt;:"))

(if (not n) (setq n 2))

(setq ent (car(entsel "\n选择圆弧:"))

entl (entget ent)

rad (cdr (assoc 40 entl))

ans (cdr (assoc 50 entl))

ane (cdr (assoc 51 entl))

ptcen (cdr (assoc 10 entl))

pts (polar ptcen ans rad)

pte (polar ptcen ane rad)

)

(if (gt; ane ans)

(setq ang (- ane ans))

(setq ang (ane (- (* 2 PI) ans)))

)

(setq arcl (rtos (* rad ang) 2 n))

(command "dim" "an" "" ptcen pts pte pause arcl "" "e")

(princ)

)

;;=============================================================

(defun c:dimarc (/ n ent entl rad ptcen roop ptoff pts pte ans ane roff ang arcl)

(princ "\ndim arc 圆弧连续标注--------lxx.2001.5")

(setq n (getint "\n标注文字小数点后位数lt;2gt;:"))

(if (not n) (setq n 2))

(setq ent (car(entsel "\n选择圆弧:"))

entl (entget ent)

rad (cdr (assoc 40 entl))

ptcen (cdr (assoc 10 entl))

roop "true"

ptoff (getpoint "\n标注延伸线偏移点:")

)

(getarcl)

(command "dim" "an" "" ptcen pts pte pause arcl "")

(while roop

(getarcl)

(if (not pte)

(setq roop nil)

(progn

(command "co" pte)

(setq entl (entget(entlast))

  entl (subst (cons 1 arcl) (assoc 1 entl) entl)

)

(entmod entl)

);end progn

)

);;end while

(command)

(princ)

)

;;getarcl

(defun getarcl ()

(if (not pts) (setq pts (getpoint "\n标注起点:")) )

(if pte (setq pts pte))

(setq pte (getpoint "\n标注终点:")

ans (angle ptcen pts)

ane (angle ptcen pte)

)

(if ptoff (setq roff (distance ptcen ptoff);;;;;;;标注美化

  pts (polar ptcen ans roff)

  pte (polar ptcen ane roff)

  )

)

(if (gt; ane ans)

(setq ang (- ane ans))

(setq ang (ane (- (* 2 PI) ans)))

)

(setq arcl (rtos (* rad ang) 2 n))

)

TOP

发新话题
郑重声明: 本论坛属技术交流,非赢利性论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,会员在论坛发表的言论仅代表个人观点,不代表论坛立场!
本站部分内容及所有资料来自网络,版权归原作者所有,本站仅仅提供一个观摩学习的环境,将不对任何资源负法律责任!请在下载后24小时内删除!
会员出于学习和科研的目的进行交流和讨论,如有侵犯原作者的权益,请来信告知,我们将立即删除,并将删除结果给予答复,如有版权争议请与yhlbbs@126.com联系!