Autor
|
Thema: vb.net acad bestimmten layer löschen (926 mal gelesen)
|
Feyza Mitglied
Beiträge: 605 Registriert: 12.01.2004 AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10 VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net
|
erstellt am: 04. Apr. 2016 14:17 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, zweites Anliegen Ich habe bestimmte Layer in der Zeichnung. Möchte z.B. Layer SK2 löschen. Das hier mag vb.net 2010 leider nicht: Dim layer1 As AcadLayer Dim AcadApp As AcadApplication Dim ThisDrawing As AcadDocument AcadApp = GetObject(, "Autocad.Application") ThisDrawing = AcadApp.ActiveDocument layer1 = ThisDrawing.Layers.Delete("SK2")
Vielen Dank für Eure Hilfe! ------------------ Schöne Grüße Feyza : ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Ehrenmitglied V.I.P. h.c. 良い精神
Beiträge: 21533 Registriert: 03.06.2002 System: F1 und Google
|
erstellt am: 04. Apr. 2016 14:18 <-- editieren / zitieren --> Unities abgeben: Nur für Feyza
|
Feyza Mitglied
Beiträge: 605 Registriert: 12.01.2004 AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10 VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net
|
erstellt am: 04. Apr. 2016 14:21 <-- editieren / zitieren --> Unities abgeben:
Hallo, bereinigen kann man diese Layer bestimmt. Dieser Layer ist z.B. Bemassungen in der Zeichnung. Ich möchte die Zeichnung am Schluss ohne Bemassung, verdeckte Kanten (SK3) etc haben. ich glaube ich habe vergessen zu erwähnen, dass in Visual Studio, ein bereich unterschrichen ist, er mag den Code nicht siehe Bilder ------------------ Schöne Grüße Feyza : ) [Diese Nachricht wurde von Feyza am 04. Apr. 2016 editiert.] [Diese Nachricht wurde von Feyza am 04. Apr. 2016 editiert.] [Diese Nachricht wurde von Feyza am 04. Apr. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2014 Plateia, Canalis Visual Basic
|
erstellt am: 04. Apr. 2016 19:45 <-- editieren / zitieren --> Unities abgeben: Nur für Feyza
|
Ingenieur Studio HOLLAUS Mitglied CAD / CAFM / GIS Beratung-Programmierung-Schulung
Beiträge: 1049 Registriert: 06.11.2008
|
erstellt am: 04. Apr. 2016 20:16 <-- editieren / zitieren --> Unities abgeben: Nur für Feyza
|
Feyza Mitglied
Beiträge: 605 Registriert: 12.01.2004 AutoCAD Mechanical 2014 / Windows Win7 / HP-UX / Oracle 10 VB6 / Visual Studio:NET2005 / .NET 2010 - Vb.net / Windows Server 2012, ASP.net
|
erstellt am: 05. Apr. 2016 10:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, danke für Eure Hilfe. Ok. habe verstanden. Mit der Methode kann man nur Layer löschen, wo keine Elemente auf diesen Layer liegen. Man muss zuerst alle Elemente auf diesen Layer löschen und dann die Layerbezeichnung. Könnt Ihr bitte noch helfen, wie ich alle Elemente auf dem Layer z.B: SK2 lösche? Vielen Dank für Eure Hilfe. ------------------ Schöne Grüße Feyza : ) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2014 Plateia, Canalis Visual Basic
|
erstellt am: 05. Apr. 2016 14:13 <-- editieren / zitieren --> Unities abgeben: Nur für Feyza
Hallo, am einfachsten machst Du Dir ein SelectionSet mit Filter Layer="SK2" damit kannst Du schon enmal die "normalen" Objekte löschen Danach solltest Du noch sicherstellen dass der aktuelle Layer ein anderer ist, da der aktuelle Layer und der Layer 0 nicht gelöscht werden können, aber das kann man ja über eine Fehlerroutine herausfinden. Problematischer ist es wenn Teile von Blockdefinitionen, Stilen, Linientypen etc. Elemente auf dem zu löschenden Layer referenziet sind. Globales Löschen kann da schnell zu nicht gewünschten Auswirkungen führen. GRüße Klaus Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rexxitall Mitglied Dipl. -Ing. Bau
Beiträge: 266 Registriert: 07.06.2013
|
erstellt am: 12. Mrz. 2017 16:27 <-- editieren / zitieren --> Unities abgeben: Nur für Feyza
Das einfachste dürfte sein einmal durch alle Elemente in allen Blöcken zu laufen und diese- sofern sie sich auf besagtem Layer befinden auf einen anderen Layer verschieben. Ich würde für soetwas einen neuen TMP Layer anlegen, um nachsehen zu können welche Elemente betroffen waren. Da der Layer ja nun von allem "Unrat" (auch in Blockdefinitionen) befreit ist, dürfte dieser sich nun auch löschen lassen. Gruß Thomas ------------------ Wer es nicht versucht, hat schon verlorn Und bei 3 Typos gibts den vierten gratis ! <<< for sale ! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |