| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| AERZEN konsolidiert weltweite Autodesk Softwarelizenzen mit CIDEON (Autodesk, AutoCAD, Inventor), ein Anwenderbericht
|
Autor
|
Thema: Alle Objekte auf einem Layer löschen (11887 mal gelesen)
|
Iris2 Mitglied CAD-Admin
Beiträge: 1170 Registriert: 17.02.2004 REVIT TEKLA Structures AutoCAD / Soficad ACA Microstation
|
erstellt am: 17. Feb. 2004 14:51 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich suche ein tool (oder sollte es da schon einen Befehl geben?) mit dem man alle Objekte, die auf einem Layer liegen durch anklicken eines Objekts (das auf diesem Layer liegt) löschen kann, so dass der Layer anschließend bereinigt werden kann. ----Autocad 2002/ADT 3.3 + Aplikation ----
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 17. Feb. 2004 14:57 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Ja das geht, aber wenn du ihn sowieso nachher löschen möchtest empfehle ich LAYDEL aus den Expresstools ! - da wird er sogar anschließend gelöscht - (ohne Layerbereinigen u. ohne verschacht. Objekte = getsel - ebenfalls aus den ETools) oder über den Filter, oder über die Schnellauswahl (ohne "picken") ------------------ - Sebastian Mattis - Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Iris2 Mitglied CAD-Admin
Beiträge: 1170 Registriert: 17.02.2004 REVIT TEKLA Structures AutoCAD / Soficad ACA Microstation
|
erstellt am: 17. Feb. 2004 15:09 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied
|
erstellt am: 18. Feb. 2004 10:23 <-- editieren / zitieren -->
Zitat: Original erstellt von Iris2: Merci, das ist der Befehl den ich gesucht hab!
Sehr viel einfacher als der Filter und hochflexibel und wirklich keine Kunst ist die Auswahl mittels LISP: Befehl: Löschen Objekte wählen: (ssget "X" '((8 . "MEINLAYER"))) ... Wenn Du auch weitere Elemente auf anderen Layern löschen willst: (ssget "X" '((8 . "MEINLAYER,ANDERERLAYER,UNDNOCHEINER"))) Und wenn Du nur die Linien darauf löschen willst: (ssget "X" '((0 . "LINE")(8 . "MEINLAYER"))) Gruß Tom Berger ------------------ Architekturwerkzeuge für AutoCAD: http://www.archtools.de |
Brischke Ehrenmitglied V.I.P. h.c. CAD on demand GmbH
Beiträge: 4187 Registriert: 17.05.2001 AutoCAD 20XX, defun-tools
|
erstellt am: 18. Feb. 2004 10:29 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Zitat: Original erstellt von tom.berger: Sehr viel einfacher als der Filter und hochflexibel und wirklich keine Kunst ist die Auswahl mittels LISP:Befehl: Löschen Objekte wählen: (ssget "X" '((8 . "MEINLAYER"))) ...
@Tom Berger was aber, wenn die Objekte in irgendwelchen Blöcken verschachtelt sind? Dann ist etwas mehr Aufwand zu treiben. Einfacher aber auch nur für den, der sich sowohl mit der Syntax von AutoLISP und der DXF-Referenz auseinander gesetzt hat. Ich glaube kaum, dass es für den AutoCAD-ANWENDER eine ernst zu nehmende Alternative darstellt, mit solchen Anweisungen zu arbeiten. Grüße Holger ------------------ Holger Brischke (defun - Lisp over night! AutoLISP-Programmierung für AutoCAD Da weiß man, wann man's hat! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
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: 18. Feb. 2004 10:30 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Zitat: Original erstellt von tom.berger: Sehr viel einfacher als der Filter und hochflexibel und wirklich keine Kunst ist die Auswahl mittels LISP:Befehl: Löschen Objekte wählen: (ssget "X" '((8 . "MEINLAYER"))) ...
Hallo Tom! Was ist mit Elementen in Blöcken? .. die erfaßt ssget nicht! und damit klappts dann auch nicht mit dem Bereinigen! Gruß Thomas
------------------ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadwomen Ehrenmitglied V.I.P. h.c. Mädchen für fast alles
Beiträge: 3067 Registriert: 26.08.2002 ACAD R11 - 2022 (Plant3D) AVIS ACAD LT 2013- 2021 ZWCAD 2015 Versuch "nun ja" [s]History P3D 2012/(13) SP und Hotfix([/s]<P> Windows 10 / 64 Bit Xeon CPU 3.5GHz 16GB Ram NVIDIA Quadro P2000 3x Dell TV100 88P Monitore
|
erstellt am: 05. Apr. 2004 15:10 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3336 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 05. Apr. 2004 21:55 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
|
CADaLog Mitglied Architekt
Beiträge: 46 Registriert: 03.07.2003 Acad 2010 XP Prof. 4x2800MHz Intel; 2084MB Ram; 70GB HD
|
erstellt am: 04. Apr. 2007 15:23 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hallo Zusammen! Gibt es auch eine Möglichkeit pauschal alle Objekte zu löschen die auf deaktivierten Layern liegen sind?! (Und am Besten die Layer gleich mit...) Situation: Eine große Grundrisszeichnung liegt als Referenz unter einer anderen Zeichnung. Die meisten der Referenzlayer sind deaktiviert. Diese Zeichnung soll als dwg verteilt werden. Nach dem binden der Referenz möchte ich nun alles an Objekten und Layern löschen was nicht dargestellt wird, um die Dateigröße zu verringern. Als dwg2007 sind es inkl. Referenzzeichnung immerhin ca.14MB. Jemand eine Idee?! Gruß Thomas ------------------ Gruß Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 04. Apr. 2007 15:41 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
|
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. Apr. 2007 17:11 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
ich hab da noch was zum Testen. Anhang als vlx speichwern und mittels _appload laden .. Aufruf mit: LAYERDELETE-X ------------------ - 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 |
Katana Mitglied
Beiträge: 24 Registriert: 13.09.2006 Win XP SP2 ACAD 08
|
erstellt am: 08. Aug. 2007 08:26 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hallo CADmium Wollte dein Programm ausprobieren, da ich genau das suche, wie oben bereits beschrieben. Beim Versuch dein Programm zu starten kam folgende Meldung: no function definition: C:LAYERDELETE-X Hast du eine Antwort darauf? Gruss und Dank Katana Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
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: 08. Aug. 2007 21:43 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
@Katana: ich hab dir dazu mal ne Mail mit einer neu compilierten Fassung geschickt. ------------------ - 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 |
CADaLog Mitglied Architekt
Beiträge: 46 Registriert: 03.07.2003 Acad 2010 XP Prof. 4x2800MHz Intel; 2084MB Ram; 70GB HD
|
erstellt am: 07. Jun. 2013 10:36 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hallo Cadmium, mir geht es wie katana. Ich glaube das layerdelete-x Tool löst mein Problem (gebundene Referenzen in denen die meisten Layer gefroren sind, die aber die Dateigröße riesig werden lassen). Kriege aber auch die Fehlermeldung und kann keine funktionsfähige Version finden. Gruß Thomas ------------------ "Das hat sich im Bauablauf so ergeben!" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 270 Registriert: 07.06.2013
|
erstellt am: 09. Jun. 2013 16:19 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
bissi VBA als Startpunkt Sollte Entitys auf deaktivierten Layern löschen als auch entitys in blockreferencen die ebenfalls auf deaktivierten layern rumlungern Final versucht es auch noch die leeren layer loszuwerden. Um Zeichnungen auszumisten emfehlen sich ferner die Befehle _PURGE und _OVERKILL
Sub Layer_kill_entitys_on_deactivated_layers() Dim layersum As String Dim layer As String Dim L() As String Dim objlayer As AcadLayer On Error Resume Next Dim entity As AcadEntity 'build list of deactivated layers For Each objlayer In ThisDrawing.layers If objlayer.LAYERON = False Then If InStr(layersum, objlayer.NAME) = 0 Then layersum = layersum & objlayer.NAME & vbLf On Error Resume Next objlayer.Freeze = False 'layer must be unlocked to get entitys deleted.... objlayer.LAYERON = True objlayer.Lock = False On Error GoTo 0 Exit Sub End If Next 'kill entitys in blockdefinitions on such a layer For Each blockdef In ThisDrawing.BLOCKS For Each entity In blockdef If InStr(layersum, entity.layer) <> 0 Then entity.Delete Next Next blockdef 'kill left over single entitys on such a layer For Each entity In ThisDrawing.modelspace If InStr(layersum, entity.layer) <> 0 Then entity.Delete Next 'same for the paperspace For Each entity In ThisDrawing.PaperSpace If InStr(layersum, entity.layer) <> 0 Then entity.Delete Next 'kill the layers itselv For Each objlayer In ThisDrawing.layers If InStr(layersum, objlayer.NAME) <> 0 Then objlayer.Delete Next End Sub
------------------ wer es nicht versucht, hat schon verlorn Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingenieur Studio HOLLAUS Mitglied CAD / CAFM / GIS Beratung-Programmierung-Schulung
Beiträge: 1049 Registriert: 06.11.2008 Autocad 2 bis Autocad 2020 (+Map3D, +Civil3D, +Infraworks) RKV .... CAFM+mehr HMap ... Vermessung und Verkehr OoC .... Raumplanung CBox ... Tools für AutoCAD und BricsCAD (kostenfrei)
|
erstellt am: 10. Jun. 2013 00:18 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Zitat: Sollte Entitys auf deaktivierten Layern löschen
ACHTUNG, wenn ein Layer mit Name "AAA" ausgeschaltet ist (aus der Sicht des Tools "deaktiviert ist", daher zu leeren ist), dann werden auch Elemente gelöscht, die auf einem Layer "A" oder einem Layer "AA" liegen, selbst dann, wenn diese nicht "deaktiviert" waren. Begründung: dieser Ausdruck If InStr(layersum, entity.layer) <> 0 durch Werte ersetzt sieht dies dann wie folgt aus: If InStr("AAA" & vbLf, "A") <> 0 und ergibt "wahr", daher wird gelöscht. Abhilfe: die Sammlung der Layernamen in einer Collection sammeln, oder wenn es unbedingt eine Zeichenkette sein soll, dann mit Trennzeichen zusammensetzen und dann auch mit Trennzeichen prüfen. ------------------
www.cars4fun.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 270 Registriert: 07.06.2013
|
erstellt am: 10. Jun. 2013 08:15 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hi DANKE, stimmt !!! der Fall ist mir durch die Lappen gegangen Bitte alle 4 Zeilen dahingehend modifizieren. Collections oder dictionarys waeren auch moeglich klar nur ist der performancegewiin bei ner einmal anwendung recht gering aber der coding und lernaufwand sehr hoch. In diesem fall ist die Stringmethode primitiver einfacher und bei einer Zeichnung - her jeh, lassen mer's halt bei ner Zigarettenpause laufen. Es duerfte davon abhaengig sein wieviele layer deaktiviert sind. und nun koennen wir Benchmarks coden wann die Collections effizienter sind. Die Windows Scripting hosts Dictionarys setz ich recht gern ein Sie sind vergleichsweise Performat und das API ist einfach If key exist then delete entity LG aus Finnland ups ich muss los schaffen fahn .. ------------------ wer es nicht versucht, hat schon verlorn [Diese Nachricht wurde von rexxitall am 10. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADaLog Mitglied Architekt
Beiträge: 46 Registriert: 03.07.2003 Acad 2010 XP Prof. 4x2800MHz Intel; 2084MB Ram; 70GB HD
|
erstellt am: 10. Jun. 2013 09:15 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Schön wenn ihr versteht was ihr mir damit sagen wollt, aber ich kann damit nicht so richtig was anfangen. Kann mir das evtl. jemand übersetzen? hatte auf ein einfaches Tool wie delete-x gehofft. Mit VBA kenn ich mich überhaupt nicht aus. Bräuchte leider ne Anleitung für Doofe um zu testen, ob das für mich funktioniert. Gruß Thomas ------------------ "Das hat sich im Bauablauf so ergeben!" Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 270 Registriert: 07.06.2013
|
erstellt am: 10. Jun. 2013 17:58 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hi, Wir sind hier nicht bei "wuensch dir was". *lach* (Wuensch dir was kosted Geld... und meinen Stundensatz will dein Chef definitiv nicht bezahlen ) Variante A du probierst es aus: Du machst in deiner Zeichnung ALT+F12 da hast du den VBA editor (die Zeichnung hast du vorher braf gesichert falls was schiefgeht)
Links autocadObjecte klicken Rechte Maustaste "Modul einfuegen" Kommt ein weisses Fenster steht oben option explizit - bitte selbiges entfernen
Da nun mit copy and paste den Quelltext einfuegen '#################### Ein _ am ende deutet an das die Zeile weitergehen muss zerhackt hier der Editor
also z.B. If InStr(layersum, objlayer.NAME) = 0 Then layersum = _ layersum & objlayer.NAME & vbLf muss in einer Zeile stehen ohne das _ dazwischen wenn das alles soweit fertig ist einmal irgendwo da reinklicken und tapfer F5 druecken. Bei ner 6 MB Zeichnung roedelt das nun xca. 10-20 sekunden und dein problem ist geloest. Den code hab ich mittlerweile getested der funktioniert. Zu VBA gibts auch massenweise Tutorials. 'code start ------------------------------------------------------- Sub Layer_kill_entitys_on_deactivated_layers() Dim layersum As String Dim layer As String Dim L() As String Dim objlayer As AcadLayer On Error Resume Next Dim entity As AcadEntity Dim DOIT As Boolean DOIT = False 'build list of deactivated layers For Each objlayer In ThisDrawing.layers If objlayer.LAYERON = False Then If InStr(layersum, objlayer.NAME) = 0 Then layersum = _ layersum & objlayer.NAME & vbLf DOIT = True On Error Resume Next objlayer.Freeze = False 'layer must be unlocked to get 'entitys deleted.... objlayer.LAYERON = True objlayer.Lock = False On Error GoTo 0 End If Next If DOIT Then On Error Resume Next 'kill entitys in blockdefinitions on such a layer For Each blockdef In ThisDrawing.BLOCKS For Each entity In blockdef If InStr(layersum, entity.layer & vbLf) <> 0 Then _ entity.Delete Next Next blockdef 'kill left over single entitys on such a layer For Each entity In ThisDrawing.modelspace If InStr(layersum, entity.layer & vbLf) <> 0 Then _ entity.Delete Next 'same for the paperspace For Each entity In ThisDrawing.PaperSpace If InStr(layersum, entity.layer & vbLf) <> 0 Then _ entity.Delete Next 'kill the layers itselv For Each objlayer In ThisDrawing.layers If InStr(layersum, objlayer.NAME & vbLf) <> 0 Then _ objlayer.Delete Next End If ThisDrawing.PURGEALL End Sub 'code end ------------------------------------------------------------ Variante B ... (Wir warten arten auf Godot) Lieben Gruss aus Finnland http://www.hyperpics.com/eBooks/Intro_to_VBA_for_AutoCAD/Introduction_to_VBA_for_AutoCAD_%28Mini_Guide%29.pdf ------------------ die unterstriche bitte einfach entfernen final in der Ansicht siehts gut aus "_" = VBA Zeile geht weier in der naechsten Zeile wer es nicht versucht, hat schon verlorn [Diese Nachricht wurde von rexxitall am 10. Jun. 2013 editiert.] [Diese Nachricht wurde von rexxitall am 10. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingenieur Studio HOLLAUS Mitglied CAD / CAFM / GIS Beratung-Programmierung-Schulung
Beiträge: 1049 Registriert: 06.11.2008 Autocad 2 bis Autocad 2020 (+Map3D, +Civil3D, +Infraworks) RKV .... CAFM+mehr HMap ... Vermessung und Verkehr OoC .... Raumplanung CBox ... Tools für AutoCAD und BricsCAD (kostenfrei)
|
erstellt am: 11. Jun. 2013 10:29 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Was hat sich jetzt geändert? Diese Zeile If InStr(layersum, objlayer.NAME & vbLf) <> 0 ergibt mit eingesetzten Werten If InStr("AAA" & vbLf, "A" & vbLf) <> 0noch immer TRUE, also wird noch immer der Inhalte von Layer "A" gelöscht, auch wenn nur der Layer "AAA" ausgeschaltet war. Also wird mit Deinem Code in 10-20sec. ("roedelt das nun xca. 10-20 sekunden") auch falsches gelöscht. Für das Sammeln der ausgeschalteten Layer könnte man verwenden (wenn man sich gegen Lernen von Collections wehrt ): If InStr(layersum, ";" & objlayer.NAME & ";") = 0 Then layersum = layersum & ";" & objlayer.NAME & ";" Und für die Abfrage/den Vergleich: If InStr(layersum, ";" & objlayer.NAME & ";") <> 0 Damit ist ein eindeutiges Trennzeichen verwendet, welches im Layernamen nicht vorkommen darf und "A" wird nicht mehr als ident zu "AAA" erkannt. Der Vergleich jetzt lautet InStr(";AAA;",";A;") und das passt so. ------------------
www.cars4fun.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 270 Registriert: 07.06.2013
|
erstellt am: 11. Jun. 2013 19:57 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Hi pack halt noch ein vblf davor und dann ist damit auch Ruhe dann muss sumlayer mit einem beginnenden vblf initialisiert werden. Ich frag jetzt mal besser ned welcher "experdde" layer mit "aaa" anfangen laesst. (Muss ne anale phase durchmachen denk ich mal *pruhst*) Sub Layer_kill_entitys_on_deactivated_layers() Dim layersum As String Dim layer As String Dim L() As String Dim DOWHAT as boolean Dim objlayer As AcadLayer On Error Resume Next Dim entity As AcadEntity DOWHAT=false 'build list of deactivated layers layersum=vblf For Each objlayer In ThisDrawing.layers If objlayer.LAYERON = False Then If InStr(layersum, objlayer.NAME) = 0 Then layersum = layersum & objlayer.NAME & vbLf DOWHAT=true On Error Resume Next objlayer.Freeze = False 'layer must be unlocked to get entitys deleted.... objlayer.LAYERON = True objlayer.Lock = False On Error GoTo 0 Exit Sub End If Next if DOWHAT then 'kill entitys in blockdefinitions on such a layer For Each blockdef In ThisDrawing.BLOCKS For Each entity In blockdef If InStr(layersum, vblf & entity.layer & vblf ) <> 0 Then entity.Delete Next Next blockdef 'kill left over single entitys on such a layer For Each entity In ThisDrawing.modelspace If InStr(layersum, layersum, vblf & entity.layer & vblf ) <> 0 Then entity.Delete Next 'same for the paperspace For Each entity In ThisDrawing.PaperSpace If InStr(layersum, layersum, vblf & entity.layer & vblf ) <> 0 Then entity.Delete Next 'kill the layers itselv For Each objlayer In ThisDrawing.layers If InStr(layersum, layersum, vblf & objlayer.layer & vblf ) <> 0 Then objlayer.Delete Next end if thisdrawing.purgeall End Sub @Ing Studio Holland - Da Sie ja offenbar Acad Anwendungen ertstellen mal a dumme frach - warum habt ihr es ned amal eben tapfer geflickt ? Zu "viel Geschaeft" oder macht Kritisieren mehr Spass um die eigene Kompetenz herauszustellen ? Und wenn dann bitte qualifiziert - das die erste version gar nicht funktionieren konnte, weil da ein exit sub drinstand welche nach erstellen der layerliste das script abbrach ... UUUpps soviel dazu. ------------------ wer es nicht versucht, hat schon verlorn [Diese Nachricht wurde von rexxitall am 11. Jun. 2013 editiert.] [Diese Nachricht wurde von rexxitall am 11. Jun. 2013 editiert.] [Diese Nachricht wurde von rexxitall am 11. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ingenieur Studio HOLLAUS Mitglied CAD / CAFM / GIS Beratung-Programmierung-Schulung
Beiträge: 1049 Registriert: 06.11.2008 Autocad 2 bis Autocad 2020 (+Map3D, +Civil3D, +Infraworks) RKV .... CAFM+mehr HMap ... Vermessung und Verkehr OoC .... Raumplanung CBox ... Tools für AutoCAD und BricsCAD (kostenfrei)
|
erstellt am: 11. Jun. 2013 20:55 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Zitat: @Ing Studio Holland - Da Sie ja offenbar Acad Anwendungen ertstellen mal a dumme frach - warum habt ihr es ned amal eben tapfer geflickt ? Zu "viel Geschaeft" oder macht Kritisieren mehr Spass um die eigene Kompetenz herauszustellen ? Und wenn dann bitte qualifiziert - das die erste version gar nicht funktionieren konnte, weil da ein exit sub drinstand welche nach erstellen der layerliste das script abbrach ... UUUpps soviel dazu.
...HOLLAUS mit "AUS" am Ende und nicht "Holland", soviel Zeit muss sein ...selber geflickt >> ich flicke keine anderen Codes (würde Copyrights verletzen, wenn das nicht im Auftrag und mit schriftlicher Übereinstimmung durchgeführt wird) ...Script abbrach >> das Abbrechen des Ablaufs löscht nicht falsche Daten. Die von mir bemerkte Problemstelle führte aber dazu, dass der Code mehr Daten löscht als der Anwender wollte, aber es vielleicht nicht gleich bemerkt. Und das kann ganz schnell ganz kritisch werden, deswegen meine Warnung. ...oder macht Kritisieren mehr Spass >> das ganze hat keinen Spass gemacht, sollte nur vor ungewollten Datenverlusten schützen. Und jetzt: auch wenn der letzte Code (im aktuellen Zustand) mit Fehlern abbricht, auch hier passiert den Daten nichts. Und dennoch, es sollte in hilfreicher Hinweis sein, nicht Kritik (zumindest keine destruktive, sollte das wer missverständlicherweise so angenommen haben). ------------------
www.cars4fun.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 270 Registriert: 07.06.2013
|
erstellt am: 11. Jun. 2013 21:52 <-- editieren / zitieren --> Unities abgeben: Nur für Iris2
Lach OK Du bist in Ordnung ! Korinthenkacker und Erbsenzaehler hab ich auf Arbeit genug *lach* (Und reagier da vieleicht mal etwas ueber - und sei gluckelich ich hab noch nicht mal den Massivbauer losgelassen) *grins* Nebenebei alle deine Kommentare waren richtig. Ich wollt nur mal eben helfen - und habs aml in 5 minuten tapfer runtergetippt. mit dem vblf am anfang und ende funktionierts auf alle faelle. (Man beachte auch den kommetar von wegen dateien gesichert) Es ist interessant das die primitiven string funktionen durchaus speed erzeugen. (und es sind primitive einzeiler). Bei for each element in thisdrawinge.modelspace dreht mir immer den Magen um - ist aber sauschnell. ASM codet ? - ich denk so. Cool waer eher SQL select * from drawing where ... (Wunschdenken) Wie schon mal geschrieben ne einmal fire and forget soloution da iss es sowas von latte wie lang die rennt. Da ist finetuning einfach unwirtschaftlich. Klar kann ich die auch auf speed bringen nur wenn einer eh schon froh ist wenn er/sie/es das in den editor bekommt ... Ich hab die mal testweise auf ein paar unserer Zeichnungen losgelassen - 25% Dateieinsparung ist drin Und die IDEE von Iris war total cool - auf die Idee bin ich noch nicht gekommen DANKE! Die "Experdde" haben da oft uralt Urschleim drin wo keiner mehr brauch. LG aus finnland *Bier rueberschiebs* Thomas P.S. WENN das copyrighted is sollt man besser GAR NIX mehr veroeffentlichen - das ist nur eines T R I V I A L ------------------ wer es nicht versucht, hat schon verlorn
[Diese Nachricht wurde von rexxitall am 11. Jun. 2013 editiert.] [Diese Nachricht wurde von rexxitall am 11. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |