2013년 1월 20일 일요일
설계도면 작성에 도움되는 치수스타일 작성용 lisp
1 변수설정은 공부하면 되고
2 관심이 있는 사람은 설치해서 사용하는 방법 알아보면 될꺼고
3 널린게 자료지만 그자료를 어떻게 사용해야 되는지 또 물어본다. ㅄ들은..
(defun c:ds ()
(setq cmd (getvar "cmdecho"))
(setq scl (getreal "\nEnter Scale(소수점 이하 한자리 ex_1.2): "))
(if (or (= scl 0) (= scl nil))
(setq scl (setq scl
(cdr
(assoc
41
(entget (car (entsel "\n 도면 Form을 선택하세요:")))
)
)
)
)
)
(setq sf scl)
(setvar "cmdecho" 0)
(setvar "DIMSCALE" sf) ;DIMSCALE : 치수, 거리, 간격띄우기를 지정하는 치수 입력 변수에 적용되는 전체 축적 비율을 설정
(setvar "DIMADEC" 8) ;DIMADEC : 각도 치수에 표시되는 정밀도 설정
(setvar "DIMALT" 0) ;DIMALT : 치수에서 대체단위의 표시 여부를 조정, ON으로 설정하면 대체단위가 표시됨.
(setvar "DIMALTD" 8) ;DIMALTD : 대체 단위에서의 소수부 자리수 조정, DIMALT 가 ON 이 되어야 함.
(setvar "DIMALTF" 25.4) ;DIMALTF : 대체 단위에 대한 승수를 조정, , DIMALT 가 ON 이 되어야 함.
(setvar "DIMALTRND" 0) ;DIMALTRND : 대체 치수 단위를 반올림 함.
(setvar "DIMALTTD" 8) ;DIMALTTD : 대체 치수 단위를 사용하는 공차값의 소수부 자릿수를 설정.
(setvar "DIMALTTZ" 0) ;DIMALTTZ : DIMALT가 ON일 때 { } 안의 치수의 공차값에 대한 0의 표시를 설정
(setvar "DIMALTU" 2) ;DIMALTU : [ ]안에 나타나는 대체단위계를 설정
(setvar "DIMALTZ" 0) ;Dimaltz : Dimalt 변수가 On이면 기입되는 [ ] 안의 대체 단위 치수값의 0을 억제
(setvar "DIMAPOST" ".") ;Dimapost : [ ] 안의 대체 단위 치수 문자 뒤에 접미사를 붙임
(setvar "DIMASZ" 2) ;DIMASZ : 치수선과 지시선 화살촉의 크기를 조정
(setvar "DIMATFIT" 1) ;DIMATFIT : 치수보조선 안에 치수 문자와 화살표를 넣을 공간이 넉넉하지 않을 때, 치수문자와 화살표의 배치방법 지정
(setvar "DIMAUNIT" 0) ;DIMAUNIT : 각도치수의 단위 형식 지정
(setvar "DIMAZIN" 2) ;DIMAZIN : 각도치수에서 "0"값을 방지
(setvar "DIMBLK" "ClosedBlank") ;DIMBLK : 치수선이나 지시선 끝에 표시되는 화살촉 블럭을 설정 등
(setvar "DIMBLK1" ".") ;DIMBLK1 : DIMSAH가 켜 있을 경우치수선에서 첫 번째의 화살촉을 설정
(setvar "DIMBLK2" ".") ;DIMBLK2 : DIMSAH가 켜 있을 경우치수선에서 두 번째의 화살촉을 설정
(setvar "DIMCEN" 2.5) ;DIMCEN : DIMCENTER, DIMDIAMETER, DIMRADIUS 명령에 의한 원이나 호의 중심표식과 중심선 그리기를 조정
(setvar "DIMCLRD" 4) ;DIMCLRD : 치수선, 화살촉 및 치수 지시선에 색상을 지정
(setvar "DIMCLRE" 4) ;DIMCLRE : 치수 보조선에 색상을 지정
(setvar "DIMCLRT" 3) ;DIMCLRT : 치수 문자에 색상을 지정
(setvar "DIMDEC" 8) ;DIMDEC : 치수의 1차 단위로 표시되는 치수의 소수부 자리수를 설정 등
(setvar "DIMDLE" 0) ;DIMDLE : 화살촉 대신 기울기 스트로크가 그려지는 경우, 치수선이 치수보조선을 지나 연장되는 거리를 지정
(setvar "DIMDLI" 9) ;DIMDLI : 기준선 치수에서 치수선의 간격을 조정 등
(setvar "DIMDSEP" ".") ;DIMDSEP : 소수부 구분자
(setvar "DIMEXE" 1) ;DIMEXE : 치수선을 지나 치수보조선이 연장되는 거리를 지정
(setvar "DIMEXO" 1) ;DIMEXO : 원점과 치수보조선의 간격을 조정
(setvar "DIMFIT" 3) ;DIMFIT : 문자와 화살표의 위치를 치수 보조선과 관련하여 조절
(setvar "DIMFRAC" 0) ;DIMFRAC : DIMUNIT가 4(건축) 또는 5(분수)로 설정된 경우 분수 형식을 설정
(setvar "DIMGAP" 1.5) ;DIMGAP : 치수 문자를 넣기 위해 치수선을 끊을 경우 치수 문자 주변의 거리를 설정
(setvar "DIMJUST" 0) ;DIMJUST : 치수 문자의 수평 위치를 조정
(setvar "DIMLDRBLK" "ClosedBlank") ;DIMLDRBLK : 지시선의 화살표 유형을 지정
(setvar "DIMLFAC" 1) ;DIMLFAC : 선형치수 측정값에 사용할 축적 비율을 설정 등
(setvar "DIMLIM" 0) ;DIMLIM : 치수한계 생성
(setvar "DIMLUNIT" 2) ;DIMLUNIT : 각도를 제외한 모든 치수 유형의 단위를 설정
(setvar "DIMLWD" -2) ;DIMLWD : 치수선에 선가중치를 지정
(setvar "DIMLWE" -2) ;DIMLWE : 치수보조선에 선가중치를 지정
(setvar "DIMPOST" ".") ;DIMPOST : 치수측정치에 문자 머리말이나 꼬리말 또는 둘 다를 지정
(setvar "DIMRND" 0) ;DIMRND : 모든 치수 입력 거리를 지정된 값으로 반올림
(setvar "DIMSAH" 0) ;DIMSAH : 치수선 화살촉 블록의 표시를 조정
(setvar "DIMSD1" 0) ;DIMSD1 : 첫 번째 치수선의 억제를 조정
(setvar "DIMSD2" 0) ;DIMSD2 : 두 번째 치수선의 억제를 조정
(setvar "DIMSE1" 0) ;DIMSE1 : 첫 번째 치수보조선의 억제를 조정
(setvar "DIMSE2" 0) ;DIMSE2 : 두 번째 치수보조선의 억제를 조정
(setvar "DIMSOXD" 0) ;DIMSOXD : 치수보조선 외부에 치수를 그리지 않게 한다.
(setvar "DIMTAD" 1) ;DIMTAD : 치수선과 관련, 문자의 수직 위치를 조정
(setvar "DIMTDEC" 8) ;
(setvar "DIMTFAC" 0.65) ;DIMTFAC : DIMTXT에서 설정한 치수 문자 높이를 기준으로 공차 값 및 문자 높이에 대한 축적 비율를 지정
(setvar "DIMTIH" 0) ;DIMTIH : 세로 좌표를 제외한 모든 치수 유형에서 치수보조선 내 치수문자의 위치를 조정
(setvar "DIMTIX" 1) ;DIMTIX : 치수 보조선 사이에 공간이 부족해도 문자를 기입할 수 있게 한다.
(setvar "DIMTM" 0) ;DIMTM : 허용공차의 - 공차값 입력
(setvar "DIMTMOVE" 1) ;DIMTMOVE : move
(setvar "DIMTOFL" 1) ;DIMTOFL : 문자가 치수보조선 밖에 배치되더라도 치수선을 치수보조선 사이에 그릴 것인지의 여부를 조정
(setvar "DIMTOH" 0) ;DIMTOH : 치수보조선 외부에서 치수문자의 위치를 조정
(setvar "DIMTOL" 0) ;DIMTOL : 치수문자에 공차를 덧붙임
(setvar "DIMTOLJ" 1) ;
(setvar "DIMTP" 0) ;
(setvar "DIMTSZ" 0) ;
(setvar "DIMTVP" 0) ;DIMTVP : 치수선 위나 아래에서 치수문자의 수직 위치를 조정 (DIMATD가 OFF되어 있어야 함)
(setvar "DIMTXSTY" "Standard") ;DIMTXTSTY : 치수 문자 스타일을 지정
(setvar "DIMTXT" texth) ;;;;DIMTXT : 현재 문자스타일의 높이가 고정되지 않은 경우 치수문자의 높이를 지정
(setvar "DIMTZIN" 8) ;
(setvar "DIMUNIT" 2) ;
(setvar "DIMUPT" 0) ;
(setvar "DIMZIN" 8) ;DIMZIN : 1차 단위 값에서 0을 억제
(setvar "dimfxlon" 0) ;치수보조선 간격
(setvar "dimtfill" 1)
(setq dimsty (tblsearch "dimstyle" (strcat "DS" (rtos scl 2 1))))
(if (= dimsty nil)
(progn (setvar "dimscale" sf)
(command "dimstyle" "save" (strcat "DS" (rtos scl 2 1)))
);PROGN
(progn (setvar "dimscale" sf)
(command "dimstyle" "save" (strcat "DS" (rtos scl 2 1)) "y")
);PROGN
);IF
(command "dimstyle" "restore" (strcat "DS" (rtos scl 2 1)))
(setvar "cmdecho" cmd)
(prompt "\n 치수스타일 변경완료.")
(princ)
); END DEFUN
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기