- (defun c:tt ()
- "两两圆弧相切"
- (xyp-Start)
- (while (and (setq s1 (car (entsel "\n选择圆弧A: ")))
- (setq s2 (car (entsel "\n选择圆弧B: ")))
- (not (equal s1 s2))
- )
- (setq s0(entlast))
- (xyp-Copy s1)
- (setq s1(entlast))
- (xyp-Copy s2)
- (setq s2(entlast))
- (setq p1 (vlax-curve-getStartPoint s1)
- pc1 (xyp-DXF 10 s1)
- p2 (vlax-curve-getStartPoint s2)
- pc2 (xyp-DXF 10 s2)
- s2 (xyp-Move s2 p2 p1)
- r1 (xyp-r2d (- (angle p1 pc1) (angle pc2 p2)))
- s2 (xyp-Rotate s2 p1 r1)
- )
- (setq ss (xyp-SsEntnext s0))
- (xyp-GrreadMove ss p1)
- )
- (xyp-End)
- )
|