2点を結ぶ線分の角度を求める angle
(angle '(0 0 0) '(1 1 0))
;; -> 0.785398
(angle '(5 5 0) '(1 2 0))
;; -> 3.78509
(angle '(0 0 0) '(2 5 0))
;; -> 1.19029
2点間の距離を求める distance
(distance '(0 0 0) '(1 1 0))
;; -> 1.41421
(distance '(0 0 0) '(100 0 0))
;; -> 100.0
2本の線分の交点を求める inters
(inters '(0 0 0) '(100 100 0) '(100 0 0) '(0 100 0))
;; -> (50.0 50.0 0.0)
(inters '(0 0 0) '(100 100 0) '(100 0 0) '(60 40 0))
;; -> nil
;; 延長線上も拾う
(inters '(0 0 0) '(100 100 0) '(100 0 0) '(60 40 0) nil)
;; -> (50.0 50.0 0.0)
指定された点にオブジェクトスナップモードを適用して取得した点を返す osnap
;; '(0 0 0) '(100 100 0) の線分が作図されているとして
(osnap '(40 40 0) "_mid")
;; -> (50.0 50.0 0.0)
(osnap '(40 41 0) "_mid")
;; -> (50.0 50.0 0.0)
(osnap '(100 50 0) "_mid")
;; -> nil
指定点から指定角度と距離だけ離れた点を返す polar
(polar '(0 0 0) 0 100)
;; -> (100.0 0.0 0.0)
(polar '(0 0 0) (/ pi 2) 100)
;; -> (0.0 100.0 0.0)
(polar '(0 0 0) (/ pi 4) (sqrt 2))
;; -> (1.0 1.0 0.0)
文字を囲むボックスの対角頂点の座標を返す textbox
;; 文字を選択 ※マルチテキスト不可
(setq text (car (entsel)))
(textbox (entget text))
;; -> ((0.75 0.25 0.0) (9.93122 3.43122 0.0)) ※選択した文字による