성심 성의껏 질문을 작성하여 주세요, 대충하시면 답변도 대충작성합니다.^^
- 제목 작성시 금지어
만들어주세요? 해주세요? 안되는데 이렇게 변경해주세요? 등등
- 특정분과 질문은 제목에 분과삽입 [건축]
좋은예) [분과]무엇에 대해 문의합니다. /[분과]B로 바꾸는 방법을 알고싶습니다.
- 말머리 필수
① CAD 종류 : Autocad Mechanical
② VERSION : 2010
③ 운영 체제 : win7
dimstyle 만드는 리습을 구현하려고 하는데요
리습파일을 파일첨부 목록에 올릴까 했는데 파일제목에 "+" 가 있어서 제목이 벼경되어 업로드 되기에 문제가 생길까 해서 그냥 내리고 내용만 올립니다.
파일 오픈시 @AddDimStyle 리습을 실행되게 하니 첨부된 파일에서만
...
dimstyle [ DK ] 를 만들었습니다.; error: AutoCAD variable setting rejected: "DIMLTEX1"
""
.
에러가 뜨네요...
정상적으로 되는 경우는
dimstyle [ DK ] 를 만들었습니다.
dimstyle [ DK_c ] 를 만들었습니다.
dimstyle [ DK_cf ] 를 만들었습니다.
dimstyle [ DK_ds ] 를 만들었습니다.
dimstyle [ DK_o ] 를 만들었습니다.
이렇게 5개를 만들어야 되는데요....
새문서를 만들때도 정상 작동 되구요..
기존파일을 불러올때도 정상인데요..
유독 카티아 변환 파일만 그렇네요..
에러가 뜨는 이유를 아시는분이 계시지 않을까 해서요...
제가 뭘 또 착각하는게 있는건 아닌지..
고수님들 구문도 좀 짚어 주시고요....
(prompt "\n-▷ [ @StyleCheck+Make ] ")
(defun @StyleCheck+Make ( !StyleName !font !SpecifyHeight !SpecifyWidthFactor !SpecifyObliquingAngle !backwards !upside-down !Vertical / cmd)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(if (not (tblsearch "style" !StyleName))
(progn
(vl-cmdf "style" !StyleName !font !SpecifyHeight !SpecifyWidthFactor !SpecifyObliquingAngle !backwards !upside-down !Vertical)
(princ (strcat "\nstyle [ " !StyleName " ] 를 만들었습니다."))
)
(princ (strcat "\nstyle [ " !StyleName " ] 는 이미 존재합니다."))
)
(setvar "cmdecho" cmd)
(princ)
)
(defun @AddDimStyle ( / !DStyName !blk i)
(setq !DStyName (list "DK" "DK_c" "DK_cf" "DK_ds" "DK_o"));DIMSTYLE 이름
(setq !blk (list "_NONE" "_CLOSED" "." "_DOTSMALL" "_OPEN"));화살촉 모양
(setq i 0)
(repeat (length !DStyName)
(if (not (tblsearch "dimstyle" (nth i !DStyName)))
(@DimStyleCheck+Make (nth i !DStyName) (nth i !blk))
)
(setq i (1+ i))
);repeat
(princ)
)
;
;
; q_무한허무_p
; 2010-12-28
(prompt "\n-▷ [ @DimStyleCheck+Make ] ")
(defun @DimStyleCheck+Make ( !DimStName !blk / cmd sah blk blk_value asz atfit zin azin clrd clre clrt dec adec dle dli dsep exe exo fxl fxlon gap
just ldrblk ltex1 ltex2 ltype dsc soxd tad tix tmove StyleName txsty txt tvp fit)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
;;;
(setq sah (getvar "DIMSAH"))
(setq blk (getvar "DIMBLK"))
(if (= blk "") (setq blk "."))
(setq asz (getvar "DIMASZ"))
(setq atfit (getvar "DIMATFIT"))
(setq zin (getvar "DIMZIN"))
(setq azin (getvar "DIMAZIN"))
(setq clrd (getvar "DIMCLRD"))
(setq clre (getvar "DIMCLRE"))
(setq clrt (getvar "DIMCLRT"))
(setq dec (getvar "DIMDEC"))
(setq adec (getvar "DIMADEC"))
(setq dle (getvar "DIMDLE"))
(setq dli (getvar "DIMDLI"))
(setq dsep (getvar "DIMDSEP"))
(setq exe (getvar "DIMEXE"))
(setq exo (getvar "DIMEXO"))
;(setq fxl (getvar "DIMFXL"))
(setq fxlon (getvar "DIMFXLON"))
(setq gap (getvar "DIMGAP"))
(setq just (getvar "DIMJUST"))
(setq ldrblk (getvar "DIMLDRBLK"))
(if (= ldrblk "")(setq ldrblk "."))
(setq ltex1 (getvar "DIMLTEX1"))
(setq ltex2 (getvar "DIMLTEX2"))
(setq ltype (getvar "DIMLTYPE"))
;(setq dsc (getvar "DIMSCALE"))
(setq soxd (getvar "DIMSOXD"))
(setq tad (getvar "DIMTAD"))
(setq tix (getvar "DIMTIX"))
(setq tmove (getvar "DIMTMOVE"))
(setq txsty (getvar "DIMTXSTY"))
(setq txt (getvar "DIMTXT"))
(setq tvp (getvar "DIMTVP"))
(setq fit (getvar "DIMFIT"))
(setq StyleName "Romans")
(if (not (tblsearch "style" StyleName))
(@StyleCheck+Make StyleName "romans,whgtxt" 0 0.8 0 "n" "n" "n")
)
;;;
(setvar "DIMSAH" 0);화살촉모양 표시방법
(setvar "DIMBLK" !blk);화살촉모양
(setvar "DIMASZ" 1.575);화살촉 크기
(setvar "DIMATFIT" 1);치수문자&화살표 정렬방법**
(setvar "DIMZIN" 9);치수문자 0억제(8-후행억제)
(setvar "DIMAZIN" 2);각도치수문자 0억제(2-후행억제)
(setvar "DIMCLRD" 256);치수선,화살촉 색상(0-ByBlock, 256-Bylayer)
(setvar "DIMCLRE" 256);치수보조선선 색상(0-ByBlock, 256-Bylayer)
(setvar "DIMCLRT" 2);치수문자 색상
(setvar "DIMDEC" 2);소수부 자리수
(setvar "DIMADEC" 4);각도 소수부 자리수
(setvar "DIMDLE" 0);기울기 스트로크의 치수보조선 연장거리
(setvar "DIMDLI" 10);치수에서 치수선 간격??(default=10)
(setvar "DIMDSEP" ".");십진수의 소수구분기호
(setvar "DIMEXE" 0);치수선에서 치수보조선 연장거리
(setvar "DIMEXO" 0);원점에서 치수보조선 연장거리
;(setvar "DIMFXL" 1);치수보조선 길이
(setvar "DIMFXLON" 0);치수보조선 고정여부*
(setvar "DIMGAP" 0.5);
(setvar "DIMJUST" 0);치수문자의 수평위치(0-중심)
(setvar "DIMLDRBLK" ".");지시선의 화살촉 모양
(setvar "DIMLTEX1" "BYBLOCK");치수보조선1의 선종류
(setvar "DIMLTEX2" "BYBLOCK");치수보조선2의 선종류
(setvar "DIMLTYPE" "BYBLOCK");치수선의 선종류
(setvar "DIMSOXD" 0);치수보조선 내에 충분한 공간이 없으면 화살표 억제...(DIMATFIT와 연관)
(setvar "DIMTAD" 1);치수문자의 수직위치(0-중간,1-위)
(setvar "DIMTIX" 1);치수보조선 사이에 문자 그리기...(DIMATFIT와 연관)
(setvar "DIMTMOVE" 0);치수문자 이동규칙
(setvar "DIMTXSTY" StyleName);치수의 문자스타일
(setvar "DIMTXT" 1.575);치수문자 높이
(setvar "DIMTVP" 0.4);치수문자의 수직위치??
;(setvar "DIMFIT" 4);??
;;;
; Main Function
(if (not (tblsearch "dimstyle" !DimStName))
(progn
(command "_.dimstyle" "s" !DimStName)
(princ (strcat "\ndimstyle [ " !DimStName " ] 를 만들었습니다."))
)
(princ (strcat "\ndimstyle [ " !DimStName " ] 는 이미 존재합니다."))
)
;;;
(setvar "cmdecho" cmd)
;;;
(setvar "DIMSAH" sah)
(setvar "DIMBLK" blk)
(setvar "DIMASZ" asz)
(setvar "DIMATFIT" atfit)
(setvar "DIMZIN" zin)
(setvar "DIMAZIN" azin)
(setvar "DIMCLRD" clrd)
(setvar "DIMCLRE" clre)
(setvar "DIMCLRT" clrt)
(setvar "DIMDEC" dec)
(setvar "DIMADEC" adec)
(setvar "DIMDLE" dle)
(setvar "DIMDLI" dli)
(setvar "DIMDSEP" dsep)
(setvar "DIMEXE" exe)
(setvar "DIMEXO" exo)
;(setvar "DIMFXL" fxl)
(setvar "DIMFXLON" fxlon)
(setvar "DIMGAP" gap)
(setvar "DIMJUST" just)
(setvar "DIMLDRBLK" ldrblk)
(setvar "DIMLTEX1" ltex1)
(setvar "DIMLTEX2" ltex2)
(setvar "DIMLTYPE" ltype)
(setvar "DIMSOXD" soxd)
(setvar "DIMTAD" tad)
(setvar "DIMTIX" tix)
(setvar "DIMTMOVE" tmove)
(setvar "DIMTXSTY" txsty)
(setvar "DIMTXT" txt)
(setvar "DIMTVP" tvp)
(setvar "DIMFIT" fit)
(princ)
)
※ 유의사항
- ①말머리 : 말머리를 달아야 구분이 쉽겠죠^^
- ②Screenshot : 이해를 돕기위해 삽입요망.
- ③파일 첨부 : 상위버전에서 테스트할 파일이 아니면 가급적 하위버전으로 저장후 첨부.
해당리습/해당파일(DWG) 도 같이 첨부하여 주세요.
- ④제 목 : 질문 내용 반영(개략적인 내용), 예) 해치를 만들고 싶어요, pline을 연결할려면?
- ⑤질문글 삭제금지 : 질문후 댓글이 달린글은 삭제금지.
여러 리플러들이 소중한 시간을 내어서 고민한후 댓글을 작성한 이상 "강력조치" 토록 하겠음.
※ 정답만이 댓글은 아닙니다. 그 답이 맞던 틀리던 그건 그 댓글로서 존중되어야 합니다.
회원님들이 글을 읽었다는것과 댓글을 달았다는건 그만큼 관심을 가지고 있고 또 그 답을 해주기 위해
검색도 해보고 도움말도 보고 고민도 하는 일련의 과정을 거치면서 나오기 때문이죠.
이에 대한 고마움과 감사함을 모르는 테러행위(?)는 없었으면 합니다.
첫댓글 (setq ltex1 (getvar "DIMLTEX1"))
(setq ltex2 (getvar "DIMLTEX2"))
이것들의 리턴값이 nil로 나옵니다.
앗.. 감사합니다... 근데 해결책은????