| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Layer Translate (592 mal gelesen)
|
MonikaB Mitglied Metallbauzeichnerin
Beiträge: 198 Registriert: 28.04.2006 Windows XP (Englisch) AutoCAD 2007 (Englisch) SOLID WORKS 2006
|
erstellt am: 12. Jun. 2006 14:33 <-- editieren / zitieren --> Unities abgeben:
Hallo Ich habe mir im layer translator eine Datei angelet weche mir die Aktuellen layer in meine Layer umwandelt. Im moment muss ich für jede zeichnung den layertanlator aufrufen die datei laden und danach noch translate bestätigen. Was sehr umständlich ist für all die zeichnungen. Möchte gerne das alles mit einem Knopf ausfuhren. kann mir jemand dabei helfen. Danke Gruss ------------------ Moni Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 AutoCAD 2.5 - 2022, Civil 3D, MAP 3D, ACADM Inventor AutoCAD 2022, AIP 4-2022 Win 10
|
erstellt am: 12. Jun. 2006 17:44 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
Es gibt die "Stapelweise Standardsprüfung", auf englisch wohl "Batch Standards checker" oder so. Im Menü Programs->Autodesk->AutoCAD 2006 - damit sollte das wohl gehen. ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 12. Jun. 2006 19:26 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
|
MonikaB Mitglied Metallbauzeichnerin
Beiträge: 198 Registriert: 28.04.2006 Windows XP (Englisch) AutoCAD 2007 (Englisch) SOLID WORKS 2006
|
erstellt am: 13. Jun. 2006 09:34 <-- editieren / zitieren --> Unities abgeben:
Hallo Udo Heisst das ich kann nicht einen knopf machen der mir das was ich will macht? Den Batch Standard checker kenne ich überhaut nicht, wie genau kann ich es dort machen?? Gruss ------------------ Moni Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MonikaB Mitglied Metallbauzeichnerin
Beiträge: 198 Registriert: 28.04.2006 Windows XP (Englisch) AutoCAD 2007 (Englisch) SOLID WORKS 2006
|
erstellt am: 16. Jun. 2006 14:56 <-- editieren / zitieren --> Unities abgeben:
Hi Kann mir bei meinem Problem niemand helfen? Den ich griege langsam die kriese mit dem layer translate (so viele zeichnungen zu ändern) Kann man nicht alle Zeichnungen in einem rutsch ändern?? oder den layer translate so einstellen das er schon die gewünschte dws datei ladet und man nur noch auf translate drücken muss?? Gruss ------------------ Moni Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2490 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 17. Jun. 2006 02:15 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
Hi, wenn das eingebaute Laytrans nicht Batch-fähig ist, muß man halt was eigenes bauen. Anbei das Quick & Dirty Proggie und ein paar Demodaten. Das Prog benötigt für die Übersetzung zwei Ressourcen Dateien: Eine DWG, die die ZIELLAYER mit ihren Einstellungen enthält. Eine Ascii-Datei mit der Liste der Übersetzungen, z.B.: Code:
'(;; Liste für Namensübersetzung ;; ("Alter-Layername" "Neuer-Layername") ("Layer1" "Eins-Layer") ("Layer2" "Zwei-Layer") ("Layer3" "Drei-Layer") ("Layer4" "Vier-Layer") ("Layer5" "Fuenf-Layer") ("Layer6" "Sechs-Layer") )
diese Dateien müssen folgendermaßen heißen: "layertranslation.txt" und "layertranslation.dwg" und im Acad Suchpfad zu finden sein. Wenn man diese Dateien an seine Bedürfnisse anpaßt, sollte das für alles reichen was man mit Laytrans auch machen kann. Viel Spaß! Code:
(defun C:DT:LAYTRANSLATE (/ BNAME FOUND? FROM? LAYERS LAYNAME PREFIX PROPLIST STRFULLPATHDWGNAME STRFULLPATHNAME TRANSLATENAMES ) (setq bname "layertranslation" proplist '(Description Freeze LayerOn Linetype Lineweight Lock Plottable TrueColor ) ) (if (zerop (getvar "pstylemode")) (setq proplist (append proplist (list 'PlotStyleName))) ) (if (not (setq strfullpathname (findfile "layertranslation.txt")) ) (alert "\nDatei >layertranslation.txt< nicht gefunden! Funktionsende." ) (if (not (setq strfullpathdwgname (findfile (strcat bname ".dwg"))) ) (alert "\nDatei >layertranslation.dwg< nicht gefunden! Funktionsende." ) (progn (setq prefix "$$TRANSLATION$$" layers (vla-get-layers (vla-get-ActiveDocument (vlax-get-acad-object)) ) ) ;; Umbenennen der vorhandenen Layer. Bei Namensgleichheit relevant! (vlax-for layer layers (if (not (member (strcase (vla-get-name layer)) '("0" "DEFPOINTS")) ) (vla-put-name layer (strcat prefix (vla-get-name layer)) ) ) ) ;; Import der Layereigenschaften und abhängiger Objekte, OHNE die Geometrien zu importieren (command "_.-insert" (strcat bname "=")) (command) (setq translatenames (mapcar '(lambda (x) (list (strcat prefix (car x)) (cadr x)) ) (load strfullpathname) ) ) (vlax-for layer layers (if (setq found? (MS-ASSOCX (vla-get-name layer) translatenames) ) (if (setq from? (vlax-invoke-method layers 'Item (cadr found?)) ) (progn (foreach prop (mapcar '(lambda (x) (cons x (vlax-get-property from? x)) ) proplist ) (vlax-put-property layer (car prop) (cdr prop)) ) (vla-put-name layer (strcat prefix (cadr found?))) ) ) ) ) (vlax-for layer layers (setq layname (vla-get-name layer)) (if (not (vl-string-search prefix layname)) (if (not (member layname '("0" "DEFPOINTS"))) (progn (vla-delete layer) (vlax-release-object layer) ) ) ) ) (vlax-for layer layers (setq layname (vla-get-name layer)) (if (vl-string-search prefix layname) (vla-put-name layer (vl-string-subst "" prefix layname) ) ) ) ) ) ) );;; Nicht Case-Sensitives Assoc gibt den ERSTEN Wert der auf Key paßt zurück. ;;; Key kann entweder ein String oder auch eine Liste sein, ;;; wie bei assoc auch ;;; (MS-ASSOCX "Testtable" '(("Testtable" (((0 . 1.93092e+008)... ;;; oder auch ;;; (MS-ASSOCX '("Testtable" . 10) '((("Testtable" . 10)... (defun MS-ASSOCX (KEY ALIST / X EOF) ;; Axels dotted? Funktion (defun dotted? (test-item /) (and (= (type test-item) 'LIST) (cdr test-item) (atom (cdr test-item)) ) ) (defun UPCASE-IF (ARG) (if (= (type ARG) 'STR) (strcase ARG) ARG ) ) (defun UPCASE-KEY (ARG /) (if (DOTTED? ARG) (setq ARG (cons (UPCASE-IF (car ARG)) (UPCASE-IF (cdr ARG)))) (setq ARG (UPCASE-IF ARG)) ) ) (while (not EOF) (setq X (car ALIST)) (if (equal (UPCASE-KEY KEY) (UPCASE-KEY (car X))) (setq EOF (cons X EOF)) (if (not (setq ALIST (cdr ALIST))) (setq EOF 't) ) ) ) (if (= (type EOF) 'list) (car EOF) ) ) (C:DT:LAYTRANSLATE)
...------------------ Ciao, Marc [Diese Nachricht wurde von marc.scherer am 17. Jun. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MonikaB Mitglied Metallbauzeichnerin
Beiträge: 198 Registriert: 28.04.2006 Windows XP (Englisch) AutoCAD 2007 (Englisch) SOLID WORKS 2006
|
erstellt am: 20. Jun. 2006 08:10 <-- editieren / zitieren --> Unities abgeben:
|
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 AutoCAD 2.5 - 2022, Civil 3D, MAP 3D, ACADM Inventor AutoCAD 2022, AIP 4-2022 Win 10
|
erstellt am: 20. Jun. 2006 08:19 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
Das kann man doch leicht selbst testen - aber ein Blick auf den Programmcode sagt nein. Bereits vorhandene Layereigenschaften werden nicht erneut aus der Zeichnung Layertranslation.dwg importiert (die ja nur als Block eingefügt wird). Das Tool selbst führt lediglich die Umbenennung durch. ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
marc.scherer Ehrenmitglied V.I.P. h.c. CAD-Administrator
Beiträge: 2490 Registriert: 02.11.2001 Windows 10 64bit AutoCAD Architecture 2018/2019 (deu/eng) AEC-Collection 2019 (Revit und Zeugs) Wenn sich's nicht vermeiden läßt: D-A-CH Erweiterung (mies implementierter Schrott)
|
erstellt am: 20. Jun. 2006 10:23 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
Zitat: Original erstellt von CAD-Huebner: Das kann man doch leicht selbst testen - aber ein Blick auf den Programmcode sagt nein. Bereits vorhandene Layereigenschaften werden nicht erneut aus der Zeichnung Layertranslation.dwg importiert (die ja nur als Block eingefügt wird). Das Tool selbst führt lediglich die Umbenennung durch.
Hi Udo, doppelt klug gesprochen ;-) Aber "Practice what you preach" : "Das kann man doch leicht selbst testen" Natürlich geht das von Monika gewünschte auch. Mein Tool versieht nämlich vor dem Import die internen Layer mit einem einheitlichen Präfix (welcher beim Namensvergleich aber ignoriert wird) so das z.B. ein interner "Layer1" die Eigenschaften des externen "Layer1" übernehmen kann. Also Monika: Es geht. Aber das hättest Du ganz leicht ausprobieren können ;-) Edit: Monika, das geht natürlich nicht nur mit der Layerfarbe, sondern mit jeder anderen Layereigenschaft auch! ------------------ Ciao, Marc
[Diese Nachricht wurde von marc.scherer am 20. Jun. 2006 editiert.] [Diese Nachricht wurde von marc.scherer am 20. Jun. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9732 Registriert: 01.12.2003 AutoCAD 2.5 - 2022, Civil 3D, MAP 3D, ACADM Inventor AutoCAD 2022, AIP 4-2022 Win 10
|
erstellt am: 20. Jun. 2006 15:52 <-- editieren / zitieren --> Unities abgeben: Nur für MonikaB
@marc Asche auf mein Haupt. Hätte es bei meinem klugen Spruch belassen sollen. Da es mich nicht betraf, wollte ich es auch nicht selbst testen - versuche mich zu verbessern . ------------------ Mit freundlichem Gruß Udo Hübner Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |