- 积分
- 510
- 明经币
- 个
- 注册时间
- 2019-3-23
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
发表于 2019-11-6 18:38:37
|
显示全部楼层
本帖最后由 chenqiang26 于 2019-11-6 18:49 编辑
(defun C:Ww (/ dxdx pt1 text1 CURVE TLEN SS N SUMLEN)
(vl-load-com)
(setq SUMLEN 0)
(setq SS (ssget '((0 . "CIRCLE,ELLIPSE,LINE,*POLYLINE,SPLINE,ARC"))))
(setq N 0)
(repeat (sslength SS)
(setq CURVE (vlax-ename->vla-object (ssname SS N)))
(setq TLEN (vlax-curve-getdistatparam CURVE (vlax-curve-getendparam CURVE)))
(setq SUMLEN (+ SUMLEN TLEN))
(setq N (1+ N))
)
(setq text1 (strcat "\n共选择 " (itoa (sslength SS)) " 条线段. 线段总长: " (rtos SUMLEN 2 3) " mm"))
(princ (strcat "\n共选择 " (itoa (sslength SS)) " 条线段. 线段总长: " (rtos SUMLEN 2 3) " mm"))
(setq dxdx (fix (/ SUMLEN (sslength SS) 100)))
(setq pt1 (getpoint "\n 选择一个插入点"))
(entmake (list '(0 . "MTEXT") '(100 . "AcDbEntity") '(100 . "AcDbMText")
'(7 . "c-c") (cons 5 "44F") (cons 40 dxdx)
(cons 1 text1) (cons 10 pt1)))
(princ)
)
新手一枚,只能做到这个地步了 - - , |
|