Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  mehrere Befehle automatisieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  mehrere Befehle automatisieren (278 mal gelesen)
koctho01
Mitglied
AutoCAD / GIS-Smallworld


Sehen Sie sich das Profil von koctho01 an!   Senden Sie eine Private Message an koctho01  Schreiben Sie einen Gästebucheintrag für koctho01

Beiträge: 12
Registriert: 13.02.2010

WIN 10 64bit / Auto CAD 2019 / Civil 3D

erstellt am: 22. Mrz. 2021 17:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Leute,
ich muss gelegentlich sehr viele DXF Dateien immer mit den gleichen Dingen bearbeiten.
Er geht darum, die Dateien
- 1. bestimmten Layer innerhalb der Datei sollen gelöscht werden
- 2. die Datei soll danach bereinigt werden
- 3. die Datei soll mit dem gleichen Namen unter einem neuen Verzeichnis gespeichert werden

Zu 1.: Das habe ich mit Hilfe eines eigenen Objektfilters (filter.nfl) gelöst und funktioniert soweit gut. Da es aber sehr viele Dateien sein können, dachte ich mir, man kann das Ganze vielelicht bisschen automatisieren mit Hilfe eines Markos oder Scriptes oder gerne auch einem Lisp. :-)
Von der Programmierung habe ich aber leider keine Ahnung. Hat jemand zufällig eine Idee?
Ich währe euch sehr dankbar.
VG Thomas 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Peter2
Ehrenmitglied V.I.P. h.c.




Sehen Sie sich das Profil von Peter2 an!   Senden Sie eine Private Message an Peter2  Schreiben Sie einen Gästebucheintrag für Peter2

Beiträge: 3524
Registriert: 15.10.2003

Win 10/64 Pro
AutoCAD MAP 3D 2018
BricsCAD 20

erstellt am: 22. Mrz. 2021 18:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für koctho01 10 Unities + Antwort hilfreich

Punkt 2 und 3 kriegt man wahrscheinlich mit Script (als einfachste Lösung) hin.

Zu 1 wird es schon schwieriger:
- nur der unbenutzte Layer (bereinigen)
- mit den Elementen drauf?
- mit verschachtelten Elementen?

Was ist "sehr viele"? Jetzt, alle auf einmal in einem Projekt? Oder jeden Tag 5?

Zum Thema "allgemeine Massenverarbeitung" gibt es schon viele (auch aktuelle Diskussionen); evtl. wäre ein Wechsel ins Lisp-Forum vorteilhaft.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 20391
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 22. Mrz. 2021 19:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für koctho01 10 Unities + Antwort hilfreich

Ich würde auch empfehlen zu lernen wie man mit einfachen Scripten arbeitet.
Also ein Script was alles in der aktuellen Datei erledigt.

Dann gibt es Möglichkeiten dieses Script auf mehrere Dateien anzuwenden.
ScriptPro 2.0 zum Beispiel.

Wer Scripte erstellen kann ist schon mal auf der Sonnenseite.

Statt den FILTER kann man dann lernen SSGET zu nutzen
oder für den Anfang SSX.

Wobei in diesem konkreten Fall vielleicht ein einfaches LAYDEL ausreicht, je nach Aufgabe.

Punkt 2 und 3 würde auch mit ETRANSMIT funktionieren.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

maratovich
Mitglied



Sehen Sie sich das Profil von maratovich an!   Senden Sie eine Private Message an maratovich  Schreiben Sie einen Gästebucheintrag für maratovich

Beiträge: 25
Registriert: 08.08.2013

erstellt am: 22. Mrz. 2021 20:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für koctho01 10 Unities + Antwort hilfreich


com.png

 
Verwenden Sie die Befehlszeile.
Für viele Dateien benötigen Sie diese - https://www.kdmsoft.net/autorunlisp.html

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

symantec
Mitglied
user


Sehen Sie sich das Profil von symantec an!   Senden Sie eine Private Message an symantec  Schreiben Sie einen Gästebucheintrag für symantec

Beiträge: 424
Registriert: 07.05.2002

AutoCAD
AutoCAD Map 3D
AutoCAD Civil 3D
InfraWorks
Urbano
Navisworks

erstellt am: 22. Mrz. 2021 21:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für koctho01 10 Unities + Antwort hilfreich

Hallo Zusammen,

oder man verwendet die dazu passenden APPS: Dxf2Dwg und BatchInEditor.

Gruß Symantec

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

koctho01
Mitglied
AutoCAD / GIS-Smallworld


Sehen Sie sich das Profil von koctho01 an!   Senden Sie eine Private Message an koctho01  Schreiben Sie einen Gästebucheintrag für koctho01

Beiträge: 12
Registriert: 13.02.2010

WIN 10 64bit / Auto CAD 2019 / Civil 3D

erstellt am: 25. Mrz. 2021 17:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


filternfl.txt

 
Erstmal entschuldigt, dass ich mich nicht gleich gemeldet habe aber ich hatte Probleme mit dem login.

Vielen lieben Dank an ALLE für die Tipps.

@Peter2:
"Was ist "sehr viele"? Jetzt, alle auf einmal in einem Projekt? Oder jeden Tag 5?"

Das ganze kommt sporadisch als Projekt herein und es handelt sich dann um einen großen Schwung von 100-200 Datein, die in dieser Abfolge 1-3 abgearbeitet werden müssen. Da sitzt man schon eine ganze Weile. Ich denke da könnte man durch ein Lisp oder Script sicher ein paar Std Arbeit sparen.

zu 1.
- nur der unbenutzte Layer (bereinigen) Ja
- mit den Elementen drauf? Ich denke mal Nein, da ich das ja im Schritt 1 mache oder?
- mit verschachtelten Elementen? Ja

Ich habe mal die filter.nfl als txt angehangen (ich hoffe das klappt) Die darin enthalten Layer kann ich so in der Datei selektieren und löschen. In 2. dann die leeren Layer löschen und 3. Datei im neuen Verzeichhnis speichern.

Ansonsten hier nochmal der Inhalt des angewendeten Filters aus dem Texteditor:
:ai_lisp|Strom-FM
(8 . "DXF_BEREICH,NEBENZEICHNUNG$FLAECHE,QS$FM_KS_QS_FLAECHE_6$FLAECHE,QS$UEO_KU_QS_FLAECHE_6$FLAECHE,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,FM_KABELSCHACHT_QS$QS_FLAECHE,NZ$DRAFTING_AREAS$AREA_1,TK_THEMAT_SACHVERHALT$LINIE_33,QS$FM_KS_QS_FLAECHE_6$FLAECHE,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,TK_THEMAT_SACHVERHALT$FLAECHE_24,UEO_KABELUMBAUUNG_QS$QS_FLAECHE_FM,QS$FM_KABELSCHACHT$QS_TEXT,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,QS$UEO_KU_QS_FLAECHE_6$FLAECHE,NZ$DRAFTING_AREAS$AREA_1,NEBENZEICHNUNG$FLAECHE,TK_THEMAT_SACHVERHALT$FLAECHE _24,UEO_KABELUMBAUUNG_QS$QS_FLAECHE_STROM,NEBENZEICHNUNG$FLAECHE_STROM")
:ai_str|Strom-FM
Layer = DXF_BEREICH,NEBENZEICHNUNG$FLAECHE,QS$FM_KS_QS_FLAECHE_6$FLAECHE,QS$UEO_KU_QS_FLAECHE_6$FLAECHE,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,FM_KABELSCHACHT_QS$QS_FLAECHE,NZ$DRAFTING_AREAS$AREA_1,TK_THEMAT_SACHVERHALT$LINIE_33,QS$FM_KS_QS_FLAECHE_6$FLAECHE,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,TK_THEMAT_SACHVERHALT$FLAECHE_24,UEO_KABELUMBAUUNG_QS$QS_FLAECHE_FM,QS$FM_KABELSCHACHT$QS_TEXT,UEO_KABELUMBAUUNG_QS$QS_FLAECHE,QS$UEO_KU_QS_FLAECHE_6$FLAECHE,NZ$DRAFTING_AREAS$AREA_1,NEBENZEICHNUNG$FLAECHE,TK_THEMAT_SACHVERHALT$FLAECHE_ 24,UEO_KABELUMBAUUNG_QS$QS_FLAECHE_STROM,NEBENZEICHNUNG$FLAECHE_STROM
:ai_lisp|110kV-Sohle
(8 . "285_SOHLE_ALLGEM,570_STA_PKT,514_HS_BAUKOERPER_B,517_HS_BAUKOERPER_SR,560_EINFUELLST_S")


@cadffm: da gebe ich dir völlig Recht. Es wäre natürlich generell schön zu wissen, wie das geht mehrere Befehle automatisch auf eine oder mehrere Dateien anzuwenden. Sobald ich die Zeit finde, werde ich mich hinsetzen und versuchen mich mit der Erstellung von Scriten zu beschäftigen. Bitte nicht missverstehen aber auf die Schnelle geht das jetzt nicht sofort und nützt mir deswegen nicht gleich etwas. Was meinst du mit SSGET und  LAYDEL? Wie wendet man das an?

Danke

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

cadffm
Moderator
良い精神




Sehen Sie sich das Profil von cadffm an!   Senden Sie eine Private Message an cadffm  Schreiben Sie einen Gästebucheintrag für cadffm

Beiträge: 20391
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 25. Mrz. 2021 17:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für koctho01 10 Unities + Antwort hilfreich

Das was du schreibst passt nicht zusammen,
oder liest sich holprig- wie auch immer.

Zur Zeit interpretiere ich das so:
Du wählt nicht verschaltelte Objekte anhand der Layer und löschst diese.

Bereinigen *alle*

SpeichernUnter

--

In dem Fall wie bereits oben angeführt:
SSX nutzen zum auswählen
Befehl Löschen zum löschen
Befehl -Bereinig zum bereinigen
SpeichernUnter<lassen wir vorerst mal weg>

Das geht per 1 Klick und später auch für viele Dateien.

Fange doch mal mit einem Script an, dann kann man es verfeinern.

TextEditor auf und schreibe diese 4 Zeilen(die letzte Zeile ist leer, aber wichtig):
-Bereinig
Alles
*

-
Speichern unter TEST.scr

In Autocad legst du nun mal 2,3 ungenutze Layer an, Layer 0 ist aktuell.
Befehl SR oder SCRIPT, Datei auswählen.

Sind die Layer noch da?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2021 CAD.de | Impressum | Datenschutz