テクニカルノート

円を切断するLISPプログラム

breakコマンドで円を切断することができませんが、以下のプログラムで
円を二つ円弧に切断することができます。

(defun c:cutc (/ os pt1 pt2 ent pt3 )
(setq os (getvar “osmode”))
(setvar “osmode” 512) ; NEA[近接点]
(setq pt1 (getpoint “\n円上の1番目の切断点:”))
(setq pt2 (getpoint “\n円上の2番目の切断点:”))
(setq ent (entget (ssname (ssget pt1) 0)))
(setq pt3 (cdr (assoc 10 ent)))
(command “break” pt1 pt2)
(command “arc” pt1 “e” pt2 pt3)
(setvar “osmode” os)
)

下図示したように、円は二つ円弧に切断されました。
クイック選択

ZWCAD