试试这个
- (defun C:arcbrk ( / st1 st2 end1 end2 obj1 obj2)
- ; rad is 20.0 1/2 rad is 10 below
- ; By BIGAL NOV 2014
- (setvar "osmode" 0)
- (setq obj1 (entget (car (entsel "\npick 1st line"))))
- (setq st1 (list (nth 1 (assoc 10 obj1))(nth 2 (assoc 10 obj1)) ))
- (setq end1 (list (nth 1 (assoc 11 obj1))(nth 2 (assoc 11 obj1)) ))
- (setq ang1 (angle st1 end1))
- (setq obj2 (entget (Car (entsel "\npick 2nd line"))))
- (setq st2 (list (nth 1 (assoc 10 obj2))(nth 2 (assoc 10 obj2)) ))
- (setq end2 (list (nth 1 (assoc 11 obj2))(nth 2 (assoc 11 obj2)) ))
- (setq ang2 (angle st2 end2))
- (setq halfang (/ (+ ang1 ang2) 2.0))
- (setq pt3 (inters st1 end1 st2 end2))
- (command "circle" pt3 20.0)
- (setq obj3 (entlast))
- (setq pt4 (polar pt3 ang1 25.0))
- (command "trim" pt4 "" (entlast) "")
- (setq pt4 (polar pt3 ang1 5.0))
- (command "trim" (entlast) "" pt4 "")
- )
|