| |
| 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: Hilfe bei AutoLisp Script (1429 mal gelesen)
|
Oli.D Mitglied
Beiträge: 16 Registriert: 28.09.2009
|
erstellt am: 28. Sep. 2009 10:16 <-- editieren / zitieren --> Unities abgeben:
Hallo liebe AutoLisp Experten, ich kenne mich leider sehr wenig mit Autocad Mechanical 2009 aus und noch weniger mit AutoLisp. Das mag vielleicht daran liegen, das ich "nur" Administrator bin und unsere CAD Arbeitsplätze betreue. Jetzt komme ich aber zu meinem eigentlichen Problem. Wir müssen in unseren ganzen Autocadzeichnungen unser Schriftfeld bearbeiten. Wir müssen unser Logo ersetzen und den Dateinamen ersetzen. Das mit dem Logo ersetzen habe ich schon hinbekommen :-). Mein Problem ist jetzt der Dateiname im Schriftfeld als kompletter Pfad angezeigt wird und man natürlich nichts erkenne kann weil das Feld nicht so lang ist, das man den ganzen Inhalt darstellen könnte. Deshalb muss ich jetzt eine möglichkeit finden, wie ich das Schriftfeld so bearbeiten kann, dass entweder nur der Dateiname oder garnichts mehr im Bereich Dateiname steht. Kann mir jemand vielleicht einen Tip geben, ob und vielleicht wie das möglich das man die Aufgabe mit AutoLisp automatisieren kann. Es sind mehrere Tausend Dateien. Bin gerne bereit mich in Bereiche einzulesen und auszuprobieren. Wenn Ihr weitere Informationen benötigt, werde ich gerne versuchen Sie euch zu geben! Ich danke euch schon mal allen für Ihre Hilfe! Lieben Gruß Oli
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 28. Sep. 2009 10:22 <-- editieren / zitieren --> Unities abgeben: Nur für Oli.D
Wie ist denn der Dateiname im Schriftfeld abgelegt ? per FIELD, per RTEXT , per Attribut ? Vielleicht macht ein per SCRIPT gesteuerter Blocktauscher mit automatischer Attributausfüllung Sinn ? Oder gleich ne allinclusiv-Lösung , wo du nur noch den Hauptpfad wählst und alle Zeichnungen darunter dann automatisch überarbeitet werden. Vielleicht sind in dem Zege auch gleich noch mehrere Anpassungen vorzunehmen ? Ein automatisches amsetupdwg oder ein psetupin ect ? Poste am besten mal hier eine vom unnötigen Ballast befreite , gezippte Zeichnung... oder besser eine ALT und eine (händisch angepasste)NEUE Version. ...und dann schauen wir mal... ------------------ - 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 |
Oli.D Mitglied
Beiträge: 16 Registriert: 28.09.2009
|
erstellt am: 28. Sep. 2009 10:57 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank für deine schnelle Antwort. Der Dateiname im Schriftfeld ist per Attribut hinterlegt. Es ist im Block GEN-TITLE hinterlegt und hat die Bezeichnung GEN-TITLE-DWG. Würde das ganz gerne über ein Script bearbeiten können. Vielen Dank! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 28. Sep. 2009 11:08 <-- editieren / zitieren --> Unities abgeben: Nur für Oli.D
...na ich würde das über ein MTEXT mit FIELD auf Dateiname machen .... das wäre dann auch beim Umbenennnen / Kopieren ect. aktuelle ... aber ein Lisp , was den Attributwert auf den momentanen Dateinamen ( evtl mit gekürztem Pfad ect.) ändert geht auch.. Wo konkret hängst du denn ? ------------------ - 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 |
Oli.D Mitglied
Beiträge: 16 Registriert: 28.09.2009
|
erstellt am: 28. Sep. 2009 11:15 <-- editieren / zitieren --> Unities abgeben:
ich hänge leider bei allem Ich würde gerne das gerne per Lisp machne. Leider fange ich gerade erst mit Lisp an und habe noch große Probleme mit aus dem großen Umfang der Lisp Programmierung das passende rauszusuchen. Ich muss halt per Lisp nichts zeichnen oder so. Deshalb ist es für mich schwierig dadurch zu steigen. Mir würde es schon sehr viel weiterhelfen, wenn du mit ein paar Befehle nennen könntest mit denen ich sowas erstellen könnte. Würde mich da auch selber einarbeiten. Weiß nur nicht wo ich anfangen sollte. Hier im Forum habe auch keine ähnlichen Probleme gefunden. Will auch von keinen verlangen, das er mir ein komplettes Script hier einstellt! Danke! Oli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 28. Sep. 2009 11:27 <-- editieren / zitieren --> Unities abgeben: Nur für Oli.D
Zitat: Original erstellt von Oli.D:
Mir würde es schon sehr viel weiterhelfen, wenn du mit ein paar Befehle nennen könntest mit denen ich sowas erstellen könnte. Oli
Das ist IMHO die falsche Herangehensweise .... wichtig sind Strukturen und Konzepte .... einarbeiten kannst du dich aber mit Mapcars Tutorial ... ------------------ - 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 |
Oli.D Mitglied
Beiträge: 16 Registriert: 28.09.2009
|
erstellt am: 29. Sep. 2009 09:27 <-- editieren / zitieren --> Unities abgeben:
Hallo, habe mich jetzt gestern und heute einwenig mit AutoLisp auseinander gesetzt. Jetzt habe ich nur das Problem, dass ich nicht weiß, wie ich den Pfad anpassen kann. Habe hier auch schon mal ein Beispiel gefunden, was mir weitergeholfen hat. [URL=http://ww3.cad.de/foren/ubb/Forum145/HTML/000482.shtml#000004][/URL] Nur weiß ich leider jetzt nicht, wie ich den Pfad kürzen kann, das nicht mehr H:\CAD\Daten\Kunden\Projekte\70998\70998244.dwg da steht sondern nur noch 70998244.dwg. Habe es hinbekommen, das er etwas anhängt oder ändert aber nicht wie man es kürzt. Wenn mir da jemand weiterhelfen könnte wäre das echt klasse! Danke Oli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 29. Sep. 2009 09:30 <-- editieren / zitieren --> Unities abgeben: Nur für Oli.D
(getvar "DWGNAME") oder bei vorhandenem Teststring (strcat (vl-filename-base "H:\\CAD\\Daten\\Kunden\\Projekte\\70998\\70998244.dwg") (vl-filename-extension "H:\\CAD\\Daten\\Kunden\\Projekte\\70998\\70998244.dwg") ) oder (strcat (cadr(fnsplitl "H:\\CAD\\Daten\\Kunden\\Projekte\\70998\\70998244.dwg")) (caddr(fnsplitl "H:\\CAD\\Daten\\Kunden\\Projekte\\70998\\70998244.dwg")) ) ------------------ - 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 |
CAD-Huebner Ehrenmitglied V.I.P. h.c. Verm.- Ing., ATC-Trainer
Beiträge: 9803 Registriert: 01.12.2003 One AutoCAD 2.5 - 2024, AutoCAD, Civil 3D, Win10/Win11
|
erstellt am: 29. Sep. 2009 09:39 <-- editieren / zitieren --> Unities abgeben: Nur für Oli.D
|
Oli.D Mitglied
Beiträge: 16 Registriert: 28.09.2009
|
erstellt am: 29. Sep. 2009 12:16 <-- editieren / zitieren --> Unities abgeben:
@CAD-Huebner: Das funktioniert ganz gut. Nur das Problem ist, dass alle unsere Zeichnungen angepasst werden müssen. Und nicht jeder der die Zeichnungen ausdruckt hat auch Autocad wo er das einstellen kann. Aber trotzdem danke dafür! @CADmium: Gibt es eine Variable für GEN-TITLE-DWG? Muss den Scrit ja sagen, wo er den DWGNAME hinschreiben soll. Danke und Gruß Oli Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |