FastFiber

macro om alles op 1 bepaalde laag SEND TO BACK te maken

Gestart door MRdesign, wo 12 01 2011, 09:31:25

Vorige topic - Volgende topic

MRdesign

Goedemorgen,

Voor mijn tekeningen heb ik een speciale layer [SHADES] waarin ik grijswaardes (op geplotte tekeningen) zet. Nu is het elke keer nogal erg omslachtig om de onderdelen van deze layer SEND TO BACK te krijgen. Dus ik dacht dat ik wel even een macro kon bouwen om de hele procedure met 1 knop te kunnen vervangen.  MIS....

Ik heb namelijk geen enkel verstand van de VBA codering, opbouw, manier van werken etc. Dus ik vraag aan jullie of er iemand is die een VBA ding voor mij kan schrijven of mij erg op weg kan helpen.

De methode zoals ik het nu doe is als volgt:
1. CTRL+A
2. PROPERTIES
3. QUICK SELECT
3a. Properties => layer
3b. Value => SHADES
3.c OK
4. DRAWORDER: SEND TO BACK

Aangezien dit redelijk veel voor komt in mijn tekenwerk wil ik hier graag 1 button voor hebben. Is er iemand die zo vriendelijk is die mij hiermee kan helpen?

Bedankt!

HofCAD

Beste MRdesign,

In Lisp:
(Defun C:Sha2Back( / Lay ~cmd SS)
(setq ~cmd  (getvar "cmdecho"))
(setq Lay "SHADES")
(setvar "cmdecho" 0)
(command "_.LAYER" "_T" Lay "_ON" Lay "")
(setq ss (ssget "_X" (list (cons 8 Lay))))
(command "_.DRAWORDER" SS "" "_B")
(setvar "cmdecho" ~cmd)
(princ)
)


Met vriendelijke groet, HofCAD CSI.
ACADcadabra

FastFiber