To CmdrDuh
What value is set to osmode here ?
(setvar "orthomode" 0)
(setvar "osmode"
(setq pt1 (getpoint "\nPick Cable Start: ")
If your task is only to draw 6 cable , why not to use a repeat.
(defun DrawCable (/
ANG CLAY MPT OSM OTH PT1 PT2 PT3
)
(setq clay (getvar "clayer"))
(setq osm (getvar "osmode"))
(setq oth (getvar "orthomode"))
(setvar "orthomode" 0)
(repeat 6
(setvar "osmode" 512);_ I set it to near to
(setq pt1 (getpoint "\nPick Cable Start: ")
pt2 (getpoint pt1 "\nPick Cable Endpoint: ")
ANG (ANGLE pt1 pt2)
)
(setvar "osmode" 0)
(SETQ mpt (POLAR pt1 (ANGLE pt1 pt2) (/ (DISTANCE pt1 pt2) 2)))
(cond
((AND (<= ANG (/ pi 2 )) (> ANG 0)) (setq pt3 (polar mpt (+ ang ( / pi 2)) (/ (DISTANCE pt1 pt2) 5))))
((AND (<= ANG pi ) (> ANG ( / pi 2))) (setq pt3 (polar mpt (- ang ( / pi 2)) (/ (DISTANCE pt1 pt2) 5))))
((AND (<= ANG ( * pi 1.5)) (> ANg pi ))(setq pt3 (polar mpt (+ ang ( / pi 2)) (/ (DISTANCE pt1 pt2) 5))))
((AND (<= ANG ( * pi 2) ) (> ANG ( * pi 1.5) ))(setq pt3 (polar mpt (- ang ( / pi 2)) (/ (DISTANCE pt1 pt2) 5))))
((= ANG 0)(setq pt3 (polar mpt (- ang ( / pi 2)) (/ (DISTANCE pt1 pt2) 5))))
)
(command "-layer" "m" "SITE-BUSS" "C" 1 "SITE-BUSS" "")
(command "pline" pt1 "w" 2 2 "a" "s" pt3 pt2 "")
);_ end repeat
(setvar "orthomode" oth)
(setvar "osmode" osm)
(setvar "clayer" clay)
)