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)
)
适合知道桩基坐标,绘制承台、桥台,盖梁等,就是矩形中心和参考线中心不完全重合
页:
[1]