30.09.2015 10:45    

özkan-wien
(forumda aradim bulamadim varsa silebilirsiniz.)

cizim yaparken dalip gidenler, ölcü cizgilerini "sifir" layrinda cizenler icin otomatik olarak sizin yerinize komut verdiginizde Dogru layeri aktif hale getiren su uyur AutoCAD uyumaz lispi.


layer isimleri 4,5,6 diye verildi siz kendinize göre degistirebilirsiniz. istediginiz komutlari da ekleyebilirsiniz.
calistiginiz dosyaya 4,5,6, isimli layerlari olusturup asagidaki kodlari komut satirina yapistirip hemen test edebilirsiniz.
Layer renklerini farkli yaparsaniz calisirken layer degisikliklerini göreceksiniz

(prompt " \nLoad Only....Do NOT Run...")
(vl-load-com)

;****************************************
(vlr-command-reactor
nil '((:vlr-commandWillStart . startCommand)))
(vlr-command-reactor
nil '((:vlr-commandEnded . endCommand)))
(vlr-command-reactor
nil '((:vlr-commandCancelled . cancelCommand)))
;******************************************************
(defun startCommand (calling-reactor startcommandInfo /
thecommandstart)
(setq OldLayer (getvar "CLAYER"))
(setq thecommandstart (nth 0 startcommandInfo))
(cond
((= thecommandstart "TEXT") (setvar "CLAYER" "4"))
((= thecommandstart "MTEXT") (setvar "CLAYER" "4"))
((= thecommandstart "DTEXT") (setvar "CLAYER" "4"))
((= thecommandstart "DIMLINEAR") (setvar "CLAYER" "5"))
((= thecommandstart "HATCH") (setvar "CLAYER" "6"))
((= thecommandstart "BHATCH") (setvar "CLAYER" "6"))
);cond
(princ)
);defun
;****************************************************

(defun endCommand (calling-reactor endcommandInfo /
thecommandend)
(setq thecommandend (nth 0 endcommandInfo))
(cond
((= thecommandend "TEXT") (setvar "CLAYER" OldLayer))
((= thecommandend "MTEXT") (setvar "CLAYER" OldLayer))
((= thecommandend "DTEXT") (setvar "CLAYER" OldLayer))
((= thecommandend "DIMLINEAR") (setvar "CLAYER" OldLayer))
((= thecommandend "HATCH") (setvar "CLAYER" OldLayer))
((= thecommandend "BHATCH") (setvar "CLAYER" OldLayer))

);cond
(princ)
);defun
;********************************************************
(defun cancelCommand (calling-reactor cancelcommandInfo /
thecommandcancel)
(setq thecommandcancel (nth 0 cancelcommandInfo))
(cond
((= thecommandcancel "TEXT") (setvar "CLAYER" OldLayer))
((= thecommandcancel "MTEXT") (setvar "CLAYER" OldLayer))
((= thecommandcancel "DTEXT") (setvar "CLAYER" OldLayer))
((= thecommandcancel "DIMLINEAR") (setvar "CLAYER" OldLayer))
((= thecommandcancel "HATCH") (setvar "CLAYER" OldLayer))
((= thecommandcancel "BHATCH") (setvar "CLAYER" OldLayer))
);cond
(princ)
);defun
;*********************************************************
(princ)

> 1 <
Copyright © 2004-2022 SQL: 0.869 saniye - Sorgu: 42 - Ortalama: 0.02069 saniye