Abend!
Da gibts so ein Lisp um mehrere Block gleichzeitig zu skalieren. Wenn du sowas suchst. Kannst du ja auch auf ein Icon legen:
----------------------------------------------------------
(defun c:varix ( / befehl fak index asatz edata ep art nurart objtypen)
;Mit dieser Funktion koennen mehrere Elemente gleichzeitig
;von einem Gemeinsamen Bezugspunkt aus --> Basispunkt
;des Blocks bzw Anfangspunkt der Linie
;vergroessert oder verkleinert bzw gedreht werden
;Bezugspunkt ist der Gruppencode 10 des Elements
;es kann nach Angabe eines Elementtyps nur dieser eine verändert werden,
;ansonsten weredn alle gewählten Objekte geändert.
(initget "D V")
(setq befehl (getkword "\nBefehl: Drehen oder [Varia] : "))
(if (not befehl) (setq befehl "V"))
(setq befehl (strcase befehl))
(initget "TEXT LINE INSERT")
(setq objtypen (getkword "\nzu skalierende Objekttypen eingrenzen [text, line, insert]: "))
(if (not objtypen) (setq nurart NIL) (setq nurart (strcase objtypen)))
(cond ((equal befehl "D") (progn
(setq befehl "._ROTATE")
(initget 1)
(setq fak (getreal "\nDrehwinkel : "))
))
((equal befehl "V") (progn
(setq befehl "._SCALE")
(initget 1)
(setq fak (getreal "\nGroessenfaktor : "))
))
)
(setq index -1)
(setq asatz (ssget))
(repeat (sslength asatz)
(setq element (ssname asatz (setq index (1+ index)))) ; Datensatz
(setq edata (entget element))
(setq ep (cdr (assoc 10 edata))) ; Ursprungspunkt
(setq art (cdr (assoc 0 edata))) ; Elementart
(if (or (= art nurart) (not nurart))
(command befehl element "" ep fak)
)
)
(princ (strcat (itoa (setq index (1+ index))) " Objekte bearbeitet."))
(princ)
)
(prompt "..geladen. Aufruf mit VARIX (c)Andreas Zimmermann, www.zimcad.de")
------------------------------------------------------------
Ist nicht von mir, aber sollte dir die Arbeit erleichtern.
Es gibt sicher auch noch andere Lisp in dieser art. Einfach im Web suchen.
Du könntest aber auch $ oder ä für varia Verwenden (Anpassbar im Aliaseditor von den Expresstools). Beschleunigt das Gnaze auch etwas.
Grüsse Hager
------------------
3 kleine Weisheiten
-Man kann ein Problem nicht mit den gleichen Denkstrukturen lösen, die zu seiner Entstehung beigetragen haben.
-Bewehrt sich Beton?
-Der Horizont vieler Menschen ist ein Kreis mit Radius Null - und das nennen sie ihren Standpunkt.
[Diese Nachricht wurde von Gargarot am 02. Sep. 2008 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP