CADsite forum

AutoCAD => Autolisp => Topic gestart door: balletje23 op do 09 07 2009, 15:33:59

Titel: lisp die lagen toevoegd in tekening (OPGELOST)
Bericht door: balletje23 op do 09 07 2009, 15:33:59
Is er een lisp beschikbaar die je activeert met apload

die lagen toevoegt zoals laag :

no-plot,
mview,
xref-bk,
018,
025,
035.

en indien die laag in tekening zit niet dubbel erin zet.
Titel: Re:lisp die lagen toevoegd in tekening
Bericht door: HofCAD op do 09 07 2009, 17:41:44
Citaat van: balletje23 op do 09 07 2009, 15:33:59
Is er een lisp beschikbaar die je activeert met apload

die lagen toevoegt zoals laag :

no-plot,
mview,
xref-bk,
018,
025,
035.

en indien die laag in tekening zit niet dubbel erin zet.


Beste Balletje23,

Een Lisp-file kun je laden met  het commando APPLOAD, en een laag kun je nooit dubbel erin zetten.

(defun C:MLay (/ ~CME ~CLA i NewLay LayName)
(setq ~CME (getvar "CMDECHO") ~CLA (getvar "CLAYER"))
(setvar "CMDECHO" 0)
(setq i 0 NewLay '("no-plot" "mview" "xref-bk" "018" "025" "035"))
(repeat (length NewLay)
(setq LayName (nth i NewLay))
(command "_.LAYER" "_T" LayName "_M" LayName "");Optie Thaw en Make
(setq i (1+ i))
)
(setvar "CLAYER" ~CLA)
(setvar "CMDECHO" ~CME)
(princ)
)

Bij het commando LAYER is de optie Make gebruikt en niet New,
dus dit geeft geen probleem als de laag reeds bestaat.

Met vriendelijke groet, HofCAD CSI.

PS1 In het bestand MLay.lsp vindt U nog 6 andere varianten(MLay2 t/m MLay7)
o.a. met entmake function en met Visual Lisp.
PS2 Als U de Color, Linetype, Lineweight en evt. de Plotstyle wil instellen
bij de nieuwe lagen, kan dat natuurlijk ook geschieden.
PS3 Zie ook http://www.jefferypsanders.com/autolisp_CLAY.html voor een
alternatief.
Titel: Re:lisp die lagen toevoegd in tekening
Bericht door: balletje23 op vr 10 07 2009, 11:50:26
jA HOFCAD het werkt perfect thx alot  :vreegoe: :vreegoe:

en dit:
Citaat van: balletje23 op do 09 07 2009, 15:33:59
PS1 In het bestand MLay.lsp vindt U nog 6 andere varianten(MLay2 t/m MLay7)
o.a. met entmake function en met Visual Lisp.
PS2 Als U de Color, Linetype, Lineweight en evt. de Plotstyle wil instellen
bij de nieuwe lagen, kan dat natuurlijk ook geschieden.
PS3 Zie ook http://www.jefferypsanders.com/autolisp_CLAY.html voor een
alternatief.
daar zal ik naar eens naar kijken want ik color voor layer lijkt me echt handig super, je hoort van me als het gelukt is
hier kom ik nog op terug thxxxx :o
Titel: Re:lisp die lagen toevoegd in tekening
Bericht door: HofCAD op ma 13 07 2009, 09:54:32
Citaat van: balletje23 op vr 10 07 2009, 11:50:26
jA HOFCAD het werkt perfect thx alot  :vreegoe: :vreegoe:

en dit:daar zal ik naar eens naar kijken want ik color voor layer lijkt me echt handig super, je hoort van me als het gelukt is
hier kom ik nog op terug thxxxx :o
Beste Balletje23,

Ter inspiratie  zie een  nieuwe versie van MLay.lsp met alternatieven met Mapcar en Foreach,
en in MLa.lsp kun je zien hoe je de Color, Linetype en o.a  Lineweight veranderd.

Met vriendelijke groet, HofCAD CSI.
Titel: Re: lisp die lagen toevoegd in tekening (OPGELOST)
Bericht door: balletje23 op wo 12 06 2013, 21:19:16
wat moet je toevoegen om een laag telocken? :mrgreen:


(defun C:MLa1 (/ ~CME ~CLA i NewLay LayName)
(setq ~CME (getvar "CMDECHO") ~CLA (getvar "CLAYER"))
(setvar "CMDECHO" 0)
(setq i 0 NewLay '( ("l01" "l02"   "l03" "l04"        "l05"    "l06")    ; Name [Str]
                    ("9"       "9"       "6"       "1"          "2"      "3")      ; Colours [Str] or [Int]
                    ("PHANTOM" "PHANTOM" "HIDDEN"  "Continuous" "CENTER" "HIDDEN") ; LineType [Str]
                    ("Default" "Default" "0.18"    "0.18"       "0.25"   "0.35")   ; LineWeight [Str]
                    ("N"       "P"       "P"       "P"          "P"      "P")      ; Plotted [Str]("P" or "N")
))
(repeat (length (car NewLay))
(setq LayName (nth i (car NewLay)))
(command "_.LAYER" "_T" LayName "_M" LayName ;Optie Thaw en Make
"_C"  (nth i (cadr NewLay)) LayName
"_LT" (nth i (caddr NewLay)) LayName
"_LW" (nth i (cadddr NewLay)) LayName
"_P"  (nth i (last NewLay)) LayName "")
(setq i (1+ i))
)
(setvar "CLAYER" ~CLA)
(setvar "CMDECHO" ~CME)
(princ)
) ;_ end of defun MLay1

(defun C:MLa()
(C:MLa1)
) ;_ end of defun MLay


Titel: Re: lisp die lagen toevoegd in tekening (OPGELOST)
Bericht door: HofCAD op do 13 06 2013, 15:40:32
Citaat van: balletje23 op wo 12 06 2013, 21:19:16
wat moet je toevoegen om een laag telocken? :mrgreen:

Beste Balletje23,
Zie de bijgevoegde lisp: MLA@Lock.lsp  :mrgreen: :mrgreen: :mrgreen:
Met vriendelijke groet, HofCAD CSI.
Titel: Re: lisp die lagen toevoegd in tekening (OPGELOST)
Bericht door: balletje23 op do 13 06 2013, 20:58:34
Hofcad Dankjewel voor je hulp!! ik ben weer helemaal blij thhxx. :vreegoe: