帮助:Lisp绘制pline acr
任何人都可以使用Lisp绘制跨越云线修订所有端点的pline?谢谢 显示图像或样例图形以了解更多详细信息。
红色是修订云。
希望Lisp程序的画绿线根据照片。
如果LISP允许我打开一束云,而不是1乘1,那将是最好的。
谢谢
没有代码,只有命令,如果不起作用,可以修改它
(command "_copy" "si" "\\""\\" "") ; copy the revcloud
(command "_pasteori" "0,0,0") ; paste to origin
(command "_PEDIT" "l" "D" "") ; decurve the "cloned revcloud"
HTH公司 要将云转换为PLINE还是添加新的PLINE?
试试这个,让我知道。
(defun c:test (/ ss l)
;; Tharwat 01.12.2014 ;;
(if (setq ss (ssget "_:L" '((0 . "LWPOLYLINE"))))
((lambda (i / sn)
(while (setq sn (ssname ss (setq i (1+ i))))
(setq l nil
l (vl-remove-if-not
'(lambda (x) (eq (car x) 10))
(entget sn)
)
)
(entmake
(append
(list '(0 . "LWPOLYLINE")
'(100 . "AcDbEntity")
'(100 . "AcDbPolyline")
(cons 90 (length l))
(cons 70
(if (vlax-curve-isclosed sn)
1
0
)
)
)
(mapcar '(lambda (p) (cons 10 (list (cadr p) (caddr p))))
l
)
)
)
)
)
-1
)
)
(princ)
)
请尝试以下操作:
(defun c:revpl ( / i s )
(if (setq s (ssget '((0 . "LWPOLYLINE"))))
(repeat (setq i (sslength s))
(entmake (vl-remove-if '(lambda ( x ) (< 39 (car x) 43)) (entget (ssname s (setq i (1- i))))))
)
)
(princ)
) 谢谢大家的回复。
明天我回办公室时会测试一下。
到了2000年,它将绘制新的普林线。 李,多段线操作很好
如果重新折叠的多段线的样式为书法,则可能需要删除多段线的41 dxf值。
谢谢Tharwat
很好,我已经更新了上面的代码。
不客气-祝你好运!
页:
[1]
2