这是我买的旧的
- ; Converts 1 arc to multi arc
- ; By Alan H
- (vl-load-com)
- (setq oldsnap (getvar "osmode"))
- (setvar "osmode" 0)
- (setq oldlayer (getvar "clayer"))
- ;pdmode point type use when checking points
- ; (setvar "pdmode" 34)
- (setvar "osmode" 512) ; nearest make sure on line
- (setq pickobj (entsel "\nPick arc :"))
- (setq obj1 (vlax-ename->vla-object (car pickobj)))
- (setq pickpt (cadr pickobj))
- (setvar "clayer" (cdr (assoc 8 (entget (car pickobj)))))
- (setq cenpt1 (cdr (assoc 10 (entget (car pickobj)))))
- (setq rad (cdr (assoc 40 (entget (car pickobj)))))
- (setq ang1 (cdr (assoc 50 (entget (car pickobj)))))
- (setq ang2 (cdr (assoc 51 (entget (car pickobj)))))
- (setq howmany (getreal "\nEnter how many sections required "))
- (setq ang (/ (- ang2 ang1) howmany))
- (setq pt1 (polar cenpt1 ang1 rad))
- (entdel (car pickobj))
- (setq x (fix howmany)) ; doesn't like reals in repeat
- (repeat x
- (setq ang2 (+ ang ang1))
- (setq pt2 (polar cenpt1 ang2 rad))
- (command "arc" pt1 "e" pt2 "r" rad)
- (setq pt1 pt2)
- (setq ang1 ang2)
- )
- (setvar "osmode" oldsnap)
- (princ)
|