| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | |  | Von Digital Twins bis Hochleistungs-Computing: PNY präsentiert seine Zukunftstechnologien für die Industrie von morgen, eine Pressemitteilung
|
Autor
|
Thema: Wie bekommt man alle ViewportIDs (750 mal gelesen)
|
Gloem Mitglied Geoinformatiker
 
 Beiträge: 181 Registriert: 07.12.2007 Windows 10 - 64 Bit, mindestens 16 GB RAM <P>AutoCAD Map 2020, VBA, Dot-Net
|
erstellt am: 22. Mrz. 2010 20:16 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich möchte mit einem kleinem Programm allen Layern abhängig ihrer Linienstärke eine Farbe zuordnen. Bei den normalen Layern funktioniert das auch ohne Probleme nur bei den überschriebenen Layern hänge ich gerade weil ich nicht weiß wie ich am besten alle ViewportIDs einer Zeichnung bekomme. Gibt es irgendwas so das ich schreiben kann:
Code: for each viewportID as ObjectID in (??? alle ViewportIDs eben)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 22. Mrz. 2010 20:40 <-- editieren / zitieren -->
Hi, Code: Dim tDxfFilter As ResultBuffer = New DatabaseServices.ResultBuffer tDxfFilter.Add(New TypedValue(DxfCode.Start, "VIEWPORT")) Dim tSelFilter As New EditorInput.SelectionFilter(tDxfFilter.AsArray) Dim tSelSetRes As EditorInput.PromptSelectionResult = tAcadDoc.Editor.SelectAll(tSelFilter) If (tSelSetRes IsNot Nothing) AndAlso (tSelSetRes.Status = EditorInput.PromptStatus.OK) Then For Each tObjID As DatabaseServices.ObjectId In tSelSetRes.Value.GetObjectIds If (tObjID.IsValid) AndAlso (Not tObjID.IsErased) Then Dim tVP As DatabaseServices.Viewport = CType(tTrAct.GetObject(tObjID, OpenMode.ForRead, True, True), DatabaseServices.Viewport) 'da ist es, nur Vorsicht, kann linkes oder echtes Viewport sein (Layout ist selbst so was wie Viewport) End If Next End If
Nur bitte Vorsicht (wie im Kommentar schon angemerkt), der Papierbereich ist selbst auch ein Viewport, hast Du also aus der Sicht von einem normalen AutoCAD-User 1 Layout mit 1 Viewport drin, dann bekommst Du hier 2 Viewports retourniert. - alfred - ------------------ www.hollaus.at |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |