| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: Standardsdatei über Makro laden (593 mal gelesen)
|
S.Hornsmann Mitglied
Beiträge: 31 Registriert: 20.01.2005 WIN XP, ADT 2006, Teamwork 2004e
|
erstellt am: 04. Jun. 2007 14:33 <-- editieren / zitieren --> Unities abgeben:
|
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 04. Jun. 2007 14:36 <-- editieren / zitieren --> Unities abgeben: Nur für S.Hornsmann
|
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 Hinweis: Meine Mitarbeit auf CAD.DE ist fakultativ, unentgeltlich und beruht nur auf einem ausgeprägtem Helfersyndrom.
|
erstellt am: 04. Jun. 2007 14:36 <-- editieren / zitieren --> Unities abgeben: Nur für S.Hornsmann
Befehl : _qnew (sneu) Dafür muß allerdings in den Optionen (_options) ->Reiter Dateien -> Einstellungen der Zeichnungsvorlagendatei .... der entsprechende Pfad eingetragen sein. ------------------ - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S.Hornsmann Mitglied
Beiträge: 31 Registriert: 20.01.2005 WIN XP, ADT 2006, Teamwork 2004e
|
erstellt am: 04. Jun. 2007 14:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, ich möchte das Prüfen von externen Dateien automatisieren und das einzige was mir noch fehlt ist die Standardsdatei per Makro zuzuweisen. AutoCAD merkt sich in dem Menü zwar eine bevorzugte Standardsdatei, ich möchte dies aber auch im Befehl gleich bestätigen. Gruß Söhnke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S.Hornsmann Mitglied
Beiträge: 31 Registriert: 20.01.2005 WIN XP, ADT 2006, Teamwork 2004e
|
erstellt am: 04. Jun. 2007 14:48 <-- editieren / zitieren --> Unities abgeben:
|
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 04. Jun. 2007 14:49 <-- editieren / zitieren --> Unities abgeben: Nur für S.Hornsmann
|
S.Hornsmann Mitglied
Beiträge: 31 Registriert: 20.01.2005 WIN XP, ADT 2006, Teamwork 2004e
|
erstellt am: 04. Jun. 2007 15:01 <-- editieren / zitieren --> Unities abgeben:
Hallo Thomas, nicht ganz, denn mit der Batch-Prüfung kriege ich ja nur ein Protokoll. Ich möchte die Standardsprüfung in AutoCAD machen, da die Fehler gleich automatisch korrigiert werden bzw. von Hand geändert werden können. Dafür müsste AutoCAD allerdings die Standardsdatei "selber" zuordnen, bzw. das Dialogfeld überspringen/ automatisch bestätigen. Gruß Söhnke Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proxy Ehrenmitglied Stateless-DHCP v6-Paketfragmentierer
Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ...
|
erstellt am: 05. Jun. 2007 08:49 <-- editieren / zitieren --> Unities abgeben: Nur für S.Hornsmann
Ich wüsste nicht warum es nicht gehen sollte ? Es ist zwar etwas Geprogge nötig, jedoch ist der Aufwand für einen Automatismus echt überschaubar. Entfernt aus allen aktiven Dokumenten die DWS-Zuordnungen
Code:
(defun DeleteStandards (/ cnt documents dicts) (setq cnt 0 documents (vla-get-documents (vlax-get-acad-object)) ) ;_ ende von setq (vlax-for doc documents (setq dicts (vla-get-dictionaries doc)) (if (not (vl-catch-all-error-p (setq dictobj (vl-catch-all-apply 'vla-item (list dicts "AcStStandard") ) ;_ ende von vl-catch-all-apply ) ;_ ende von setq ) ;_ ende von vl-catch-all-error-p ) ;_ ende von not (progn (vla-delete dictobj) (setq cnt (1+ cnt)) ) ;_ ende von progn ) ;_ ende von if ) ;_ ende von vlax-for (princ (strcat "\n" (itoa cnt) " Standardsdatei(en) entfernt.") ) ;_ ende von princ (princ) )
Fügt DWS-Datei ins AcStStandard - Dict hinzu z.B. (AddDWS "X:\\AG-NORM\\dws\\NORM.dws")
Code:
(defun AddDWS (FileN / DictN eDict XRInt) (setq DictN "AcStStandard" eDict (cond ((cdr (assoc -1 (dictsearch (namedobjdict) DictN)))) ((dictadd (namedobjdict) DictN (entmakex '((0 . "DICTIONARY") (100 . "AcDbDictionary" ) ) ) ;_ ende von entmakex ) ;_ ende von dictadd ) ) ;_ ende von cond ) ;_ ende von setq (if (setq XRInt (cdrs 3 (entget eDict))) (setq XRInt (1+ (apply 'max (mapcar 'atoi XRInt)))) (setq XRInt 0) ) ;_ ende von if (dictadd eDict (itoa XRInt) (entmakex (list '(0 . "XRECORD") '(100 . "AcDbXrecord") (cons 1 FileN) ) ;_ ende von list ) ;_ ende von entmakex ) ;_ ende von dictadd ) ;_ ende von defun
benötigtes kleines Hilfsdefun
Code:
(defun cdrs (key lst / pair rtn) (while (setq pair (assoc key lst)) (setq rtn (cons (cdr pair) rtn) lst (cdr (member pair lst)) ) ;_ ende von setq ) ;_ ende von while (reverse rtn) ) ;_ ende von defun
Bitte auch die Variable STANDARDSVIOLATION und die Registry mit (vl-registry-write (siehe Screenshot)) beachten.
------------------ MfG Proxy Bitte beachten Sie: Die Verwendung der hier bereitgestellten Signatur geschieht auf Ihre eigene Verantwortung. Diese Signatur wird ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionalität, sowie ohne Anspruch auf Support zur Verfügung gestellt. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
S.Hornsmann Mitglied
Beiträge: 31 Registriert: 20.01.2005 WIN XP, ADT 2006, Teamwork 2004e
|
erstellt am: 06. Jun. 2007 17:40 <-- editieren / zitieren --> Unities abgeben:
|