 - ;; tt(圆外点画两条切线且修剪切线间圆弧)
- (defun c:tt ()
- (setvar "osmode" 0)
- (setq s1 (car (entsel "\n选择圆: "))
- p1 (getpoint "\n基点<退出>: ")
- p0 (cdr (assoc 10 (entget s1)))
- rr (cdr (assoc 40 (entget s1)))
- r1 (angle p1 p0)
- p2 (polar p0 (+ r1 (* pi 0.5)) rr)
- p3 (polar p0 (- r1 (* pi 0.5)) rr)
- p4 (polar p0 (+ r1 pi) rr)
- )
- (command "line" p1 "tan" p2 "")
- (setq s2 (entlast))
- (command "line" p1 "tan" p3 "")
- (setq s3 (entlast))
- (command "trim" "" (list s1 p4) "")
- (princ)
- )
|