사용하는 리습중에 한부분입니다..
도스명령으로 작성되어 있는데.. 파일명 8자 이상은 읽지를 못하는군요..
가능하게 할수 없을까요…
(command “sh” (strcat “dir *.dwg /-n > bmbmbm”))
(setq opf ( open “bmbmbm” “r”))
(setq wrf ( open “bmbmbm.scr” “w”))
(setq ct 0)
(repeat 6
(setq file ( read-line opf))
)
…^^ 부탁드립니다…
리습좀 고쳐주세요…^^
임의의 두지점을 직각으로 연결하는 리습입니다…
잘되다가도 선이 많이 겹쳐 있거나 교차되는 선들이 많은 곳에서 하면은
직각으로 안나오고 비뚤하게 그려지네요….
무엇이 문제인지 고쳐주시면 감사하겠읍니다….^^
(defun c:FF()
(defun dangle (d)
(* (/ 180 pi) d)
)
(command “osnap” “end,MID,qua,NOD,CEN,INT”)
(graphscr)
(setq P1 (getpoint ” 첫번째 시작점 “))
(setq P2 (getcorner P1 ” 두번째 시작점 “))
(SETVAR “ORTHOMODE” 1)
(setq P3 (getpoint P2 ” 방향 “))
(setq ta1 (dangle (angle P2 P3)))
(setq P1x (car P1))
(setq P2x (car P2))
(setq P3x (car P3))
(setq P1y (cadr P1))
(setq P2y (cadr P2))
(setq P3y (cadr P3))
(if (< ta1 179)
(progn (if (and (< P1x P2x)(< P1y P2y))
(setq q (list (car P1) (cadr P2)))
)
(if (and (< P2x P1x)(< P2y P1y))
(setq q (list (car P2) (cadr P1)))
)
(if (and (< P1x P2x)(< P2y P1y))
(setq q (list (car P2) (cadr P1)))
)
(if (and (< P2x P1x)(< P1y P2y))
(setq q (list (car P1) (cadr P2)))
)
)
)
(if (> ta1 179)
(progn (if (and (< P1x P2x)(< P1y P2y))
(setq q (list (car P2) (cadr P1)))
)
(if (and (< P2x P1x)(< P2y P1y))
(setq q (list (car P1) (cadr P2)))
)
(if (and (< P1x P2x)(< P2y P1y))
(setq q (list (car P1) (cadr P2)))
)
(if (and (< P2x P1x)(< P1y P2y))
(setq q (list (car P2) (cadr P1)))
)
)
)
(command “line” P1 q “”)
(command “line” P2 q “”)
(command “fillet” (ssget p1)(ssget p2))
(setq q 0)
)
(setq texx “G”)