윈도우 캐드에서 사용할때 치수 입력시 DIM 레이어에 추가가 되고 다시 원래 레이어로 돌아가는 리습을 썼었습니다.
맥으로 넘어오면서 해당 리습이 작동하지않아 알아본 결과
visual lisp 은 autocad for mac에서 지원이 안된다는군요ㅠㅠ
그래서 해당 리습을 혹시 arx?나 plain autolisp으로 다시 수정을 해주시면 감사하겠습니다.
———————————————————————————————————————
리습 내용은 아래와 같습니다.
(vl-load-com)
(or
(vl-some
‘(lambda ( o )
(= (vlr-data o) “*PTE:DimLayerSetReactor”)
) (cdr (assoc :VLR-Command-Reactor (vlr-reactors)))
)
(progn
(vlr-command-reactor
“*PTE:DimLayerSetReactor”
‘(
(:vlr-commandWillStart . rPTE:DimLayerSet:S)
(:vlr-commandEnded . rPTE:DimLayerSet:E)
(:vlr-commandCancelled . rPTE:DimLayerSet:E)
(:vlr-commandfailed . rPTE:DimLayerSet:E)
)
)
)
)
(defun rPTE:DimLayerSet:S ( r p / n )
(setq %PTE:20140217 (getvar ‘CLAYER) n “DIM”)
(or (tblsearch “LAYER” n)
(vla-add (vla-get-layers (vla-get-activedocument (vlax-get-acad-object))) n)
)
(if (vl-some ‘(lambda ( x ) (wcmatch x “*DIM*”)) p) (setvar ‘CLAYER n))
(princ)
)
(defun rPTE:DimLayerSet:E ( r p )
(and
%PTE:20140217
(vl-some ‘(lambda ( x ) (wcmatch x “*DIM*”)) p)
(setvar ‘CLAYER %PTE:20140217)
(setq %PTE:20140217 nil)
)
(princ)
)
——————————————————————————————————————————