캐드 분류
블럭삽입 리습좀 도와주세요
컨텐츠 정보
- 125 조회
- 4 댓글
- 0 추천
- 0 비추천
- 목록
본문
두 점사이에 블럭을 나열하는 리습입니다.
처음에 잭을 넣고 그다음에는 거리에 따라 블럭이 나열되는 리습이고
다른 리습을 참고해서 만들었는데
어느부분이 잘못된건지 잘 모르겠습니다…
(defun c:FFFF()
(setq osm (getvar "osmode"));onsnap 저장
(setq p0(getpoint "점1(시작점) : n")) ;첫번째점
(setq p00(getpoint "점2(끝작점) : n")) ;두번째점
(setvar "osmode" 0) ;onsnap 해제
(setq ang (angle p0 p00)) ;점 사이의 각도
(setq ang00 (angle p00 p0)) ;jack 삽입을 위한 반대각도
(setq p1(polar p0 ang 565)) ;단부 삽입점/버팀보 시작점
(command "-layer" "s" "djack" "")
(command "-insert" "djack" p1 "1000″ "1000″ p0);잭 삽입
(setq dis(distance p1 p00)) ;버팀보 사이의 거리
(princ dis)
(while (> dis 0)
(setq t_ang (+ ang (/ pi 2))) ;블록 삽입을 위한 첫번째점에서90도 각도
(setq p3 (polar p1 t_ang 10000)) ;90도 각도내에서 10000떨어진 점// 거리는 의미 없음
(if(>= dis 9800)
(progn
(setq block "d10″)
(setq dis2 10000)
(command "-layer" "s" "D-10M" "")
)
(if(and(< dis 10000)(>= dis 4800))
(progn
(setq block "d5″)
(setq dis2 5000)
(command "-layer" "s" "d-5M" "")
)
(if(and(< dis 5000)(>= dis 3800))
(progn
(setq block "d4″)
(setq dis2 4000)
(command "-layer" "s" "d-4M" "")
)
(if(and(< dis 4000)(>= dis 1800))
(progn
(setq block "d2″)
(setq dis2 2000)
(command "-layer" "s" "d-2M" "")
)
(if(and(< dis 2000)(>= dis 800))
(progn
(setq block "d1″)
(setq dis2 2000)
(command "-layer" "s" "d-1M" "")
)
(if(and(< dis 1000)(>= dis 800))
(progn
(setq block "BS-1M")
(setq dis2 1000)
(command "-layer" "s" "BS-1M" "")
)
(if(and(< dis 1000)(>= dis 600))
(progn
(setq block "d-7″)
(setq dis2 700)
(command "-layer" "s" "d-0.7m" "")
)
(if(and(< dis 700)(>= dis 400))
(progn
(setq block "d-5″)
(setq dis2 500)
(command "-layer" "s" "d-0.5M" "")
)
(if(and(< dis 400)(>= dis 280))
(progn
(setq block "d-3″)
(setq dis2 300)
(command "-layer" "s" "d-0.3M" "")
)
(if(and(< dis 300)(>0))
(progn
(setq block "d-2″)
(setq dis2 50)
(command "-layer" "s" "d-0.2M" "")
)
)
))))))))));남은거리 측정 후 블록 삽입. // dis2에 블록거리 지정
관련자료
댓글 4
/ 1 페이지