| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Ursprung Befehl (1100 mal gelesen)
|
_Thomas_ Mitglied
Beiträge: 7 Registriert: 01.10.2003
|
erstellt am: 01. Okt. 2003 14:06 <-- editieren / zitieren --> Unities abgeben:
Guten Tag, ich muss eine DXF Zeichnung per Skript ändern. Dazu benutze ich als erstes _explode für das gesamte markierte Objekt. Wenn ich aber einen bestimmten Block auflöse, steht daneben die Attributsdefinition GRUPPE. Wie kann ich diesen Text aus meiner Zeichnung per Skript entfernen ? Beim Drucken sollen ausschliesslich die Linien erscheinen und die Bemassungstexte. Vielen Dank für eine Antwort. Gruss Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 01. Okt. 2003 14:11 <-- editieren / zitieren --> Unities abgeben: Nur für _Thomas_
Befehl: *Abbruch* Befehl: (ssget "X" '((0 . "ATTDEF")(2 . "GRUPPE"))) <Selection set: 435> Befehl: _erase Objekte wählen: _p 1 gefunden Objekte wählen: --edit--- Klartext: (ssget "X" '((0 . "ATTDEF")(2 . "GRUPPE"))) _erase _p ------------------ EDIT: zusatz Aber denke dran: ich habe hier die Objekte mit _p aufgerufen, Also auch wenn (ssget...) nichts gefunden hat (kein ATTDEF mit der Bezeichnung "Gruppe" im Plan vorhanden) , wird der VORHERIGE Auswahlsatz verwendet - wenn es einen gibt... Wenn du also in deinem Script (zB) vorher noch Objekte verschoben hast, dann werden diese mit "_P" angesprochen ! - In dem Fall gelöscht ! -Du mußt also sicherstellen das entweder kein Auswahlsatz vor (ssget..) vorhanden ist oder das zu Filternde Objekt vorh. ist ... [Diese Nachricht wurde von cadffm am 01. Oktober 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
_Thomas_ Mitglied
Beiträge: 7 Registriert: 01.10.2003
|
erstellt am: 01. Okt. 2003 15:49 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke für die schnelle Antwort. Es funktioniert. Hab aber im Moment noch ein anderes Problem. Wenn ich per Commandozeile (unter anderem) die Befehle: _ai_selall _explode _ai_selall mache, dann markiert er alles, exploded und dann sind die einzelnen Elemente markiert. Wenn ich das ganze in eine Befehlszeile packe: _open C:\test.dxf layout _.MSPACE _ai_selall _explode _ai_selall dann macht er das nicht, sondern bleibt bei _explode in Objekte wählen: hängen, falls man ALLE etc. mit in die Befehlszeile packt, dann funktioniert das letzte _ai_selall trotzdem nicht. Eine Idee wodran das liegen könnte bzw. ob man sowas vielleicht anders macht ? Ich möchte gerne 2 _explode da drin haben weil er erine Gruppe erst beim 2. mal (mit den "Gruppe"-Texten) aufschlüsselt. Gruss Thomas
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 01. Okt. 2003 16:21 <-- editieren / zitieren --> Unities abgeben: Nur für _Thomas_
Also das kann ja nicht alles sein, du schreibst ja selbst du möchtest 2x _explode haben... Wo ist das in deinem Beispiel ??? - vergessen ? also einfach mal:
_explode _all _explode _all setzt alle Objekte in Ursprung, setzt alle Objekte in Ursprung (ist ALLE PBJEKTE IN URSPRUNG setzen eigentl. sinnvoll ?) ------------------ - Sebastian Mattis - Ich bin den 9. u. 10.10. auf der CAT.PRO ! [Diese Nachricht wurde von cadffm am 01. Oktober 2003 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
_Thomas_ Mitglied
Beiträge: 7 Registriert: 01.10.2003
|
erstellt am: 01. Okt. 2003 16:39 <-- editieren / zitieren --> Unities abgeben:
Hi, keine Ahnung ob das so sinnvoll ist. Es macht jedenfalls das was ich gern hätte (bzw. noch nich ganz hehe) Also per Hand sieht das ganze so aus: Befehl: _.MSPACE Befehl: _explode Objekte wählen: _all 3 gefunden 2 befanden sich nicht im aktuellen Bereich. Objekte wählen: Befehl: _explode Objekte wählen: _all 100 gefunden 2 befanden sich nicht im aktuellen Bereich. 93 konnten nicht aufgelöst werden. Objekte wählen: Befehl: So wie oben ists richtig und so würd ich das gern per Skript haben. Wenn ich allerdings:
_open C:\1270000.dxf layout _.MSPACE _explode _all _explode _all ausführe, dann sieht das Ergebnis so aus: Befehl: _.MSPACE Befehl: _explode Objekt wählen: _all Das Objekt befindet sich nicht im aktuellen Bereich. Das Objekt befindet sich nicht im aktuellen Bereich. Befehl: URSPRUNG Objekt wählen: _explode *Ungültige Auswahl* Erwartet einen Punkt oder Letztes/ALLE/Gruppe/KLasse Habe auch schon verschieden Sachen ausprobiert. Wenn ich nur ein _explode _all im Skript habe dann macht er das ohne Probleme. Sobald dahinter aber noch irgendein anderer Befehl steht geht das ganze nicht mehr. Gruss Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
_Thomas_ Mitglied
Beiträge: 7 Registriert: 01.10.2003
|
erstellt am: 01. Okt. 2003 17:14 <-- editieren / zitieren --> Unities abgeben:
Hi nochmal, das komische ist, dass er bei diesem Skript: _open C:\test.dxf layout _.MSPACE _explode _all -layer FA 18 * _ai_selall ÄNDERN EI F VONLAYER _ai_selall ursprung alles 100% so macht wie ich will. Am Ende wartet er auf einen Befehl. Sobald ich dort aber irgendwas hinter ursprung einfüge, also zB ... ursprung XY dann klappt der ursprung befehl nicht mehr:
Befehl: _ai_selall Objekte wählen...abgeschlossen. Befehl: ursprung Objekt wählen: XY Das versteh ich nicht, ein Skript läuft einwandfrei aber sobald man noch einen Befehl anhängt tuts der Befehl davor nicht mehr. Gruss Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
haukesch Mitglied Dipl Ing Architekt FH
Beiträge: 253 Registriert: 06.01.2003 Windows XP SP3 ACA 2009;2012 HP T610;Utax 9048
|
erstellt am: 01. Okt. 2003 17:15 <-- editieren / zitieren --> Unities abgeben: Nur für _Thomas_
|
_Thomas_ Mitglied
Beiträge: 7 Registriert: 01.10.2003
|
erstellt am: 02. Okt. 2003 09:18 <-- editieren / zitieren --> Unities abgeben:
Hmm kann ich nicht nachvollziehen. Ein Skript mach auch nichts anderes als Befehle and die Kommandozeile zu senden. Verstehe nicht wie man dann verschiedene Ergebnisse bekommen kann wenn man das per Hand und per Skript macht. Ich muss zwei mal auflösen weil erst beim 2. ursprung-Befehl alle Blöcke wirklich aufgelöst sind. Einen Befehl der direkt alles auflöst ist mir nicht bekannt. Sonst vielleicht jemand eine Idee ? Gruss Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 02. Okt. 2003 11:51 <-- editieren / zitieren --> Unities abgeben: Nur für _Thomas_
|