cjf160204 发表于 2025-2-6 17:36:47

jx矩形对齐参考线

(defun c:JX (/ W H P1 P2 P3 P4 ANG PT1 PT2 RECT_CENTER OFFSET_X OFFSET_Y)
(setq PI0 (* 0.5 pi))
(setq PI1 (* 1.5 pi))
(setq W (getdist "\n输入矩形长度: "))
(setq H (getdist "\n输入矩形宽度: "))

(setq OSM (getvar "osmode"))
(setvar "osmode" 0)
(setq E1 (entsel "\n选择参照线: "))
(while (null E1)
    (setq E1 (entsel "\n选择参照线: ")))
(setq PT1 (osnap (cadr E1) "mid"))
(setq PT2 (osnap (cadr E1) "end"))
(setvar "osmode" OSM)

(setq ANG (angle PT1 PT2))

(setq OFFSET_X (/ W 2))
(setq OFFSET_Y (/ H 2))

(setq P1 (polar PT1 ANG (- OFFSET_Y (/ H 2))))
(setq P1 (polar P1 ANG (- OFFSET_X)))
(setq P2 (polar P1 ANG W))
(setq P3 (polar P2 (+ ANG PI0) H))
(setq P4 (polar P1 (+ ANG PI0) H))

(setq SS (entmake (list
                     '(0 . "LWPOLYLINE")
                     '(100 . "AcDbEntity")
                     '(100 . "AcDbPolyline")
                     '(90 . 4)
                     '(70 . 1)
                     '(43 . 0.0)
                     '(38 . 0.0)
                     '(39 . 0.0)
                     (cons 10 P1)
                     (cons 10 P2)
                     (cons 10 P3)
                     (cons 10 P4))))
(entnext SS)
(entupd SS)
(princ)
)

cjf160204 发表于 2025-2-6 17:40:31

适合知道桩基坐标,绘制承台、桥台,盖梁等,就是矩形中心和参考线中心不完全重合
页: [1]
查看完整版本: jx矩形对齐参考线