Q8: 円に接する45°補強筋を作図(定着無し)/CircleDiamond


このマクロでできること
円の中心に同心で、円に4か所で接する正方形を作図します。
※開口補強鉄筋の作図で使用します。(定着長無し版)

 

■円の中心に同心で、円に4か所で接する正方形を作図

(defun c:CircleDiamond ( / ent obj cen rad d p1 p2 p3 p4 )
(vl-load-com)
(setq ent (car (entsel "\n正方形を接する対象の円を選択してください: ")))
(if (and ent (= (cdr (assoc 0 (entget ent))) "CIRCLE"))
(progn
(setq obj (vlax-ename->vla-object ent))
(setq cen (vlax-get obj 'Center)) ; (x y z)
(setq rad (vlax-get obj 'Radius)) ; r
(setq d (* rad (sqrt 2.0))) ; 頂点までの距離 = r√2

;; 頂点4点(右→上→左→下 の順で一筆書き)
(setq p1 (list (+ (car cen) d) (cadr cen) (caddr cen)))
(setq p2 (list (car cen) (+ (cadr cen) d) (caddr cen)))
(setq p3 (list (- (car cen) d) (cadr cen) (caddr cen)))
(setq p4 (list (car cen) (- (cadr cen) d) (caddr cen)))

;; ポリラインで閉じる(45°回転の正方形)
(command "_.PLINE" p1 p2 p3 p4 "C")
(prompt "\n円に外接する45°正方形を作図しました。")
)
(prompt "\n円が選択されていません(CIRCLEを選択してください)。")
)
(princ)
)



📝 使い方
・上のコードを .lsp に保存 → AutoCAD で APPLOAD
・コマンドラインに CircleDiamond と入力して実行
・図面中の円をクリック → 円に外接するダイヤ形の正方形が描かれます