| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Alle Gruppen einer Zeichnung auslesen (806 mal gelesen)
|
Benny4 Mitglied Softwareentwickler
Beiträge: 178 Registriert: 16.02.2006 AutoCAD 2008 WIN XP Pro SP2
|
erstellt am: 02. Mrz. 2009 16:49 <-- editieren / zitieren --> Unities abgeben:
Hallo, hab mal wieder eine Frage: Wie kann ich alle Gruppen einer Zeichnung auslesen? Ich meine jene Gruppen die ich im Dialog sehen wenn ich in AutoCAD den Befehl _group ausführe. Habe es geschafft Gruppen zu erzeugen, aber bestehende auszulesen leider noch nicht. Danke für eure Hilfe! ------------------ Grüsse Benny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 02. Mrz. 2009 21:50 <-- editieren / zitieren -->
Hi Benny, hilft das Code: Public Shared Sub listGroups(ByRef AcadDoc As ApplicationServices.Document) Dim tAcadDocDB As DatabaseServices.Database = AcadDoc.Database Dim tTrAct As DatabaseServices.Transaction = Nothing Try tTrAct = tAcadDocDB.TransactionManager.StartTransaction Dim tMainDict As DatabaseServices.DBDictionary = CType(tTrAct.GetObject(tAcadDocDB.NamedObjectsDictionaryId, DatabaseServices.OpenMode.ForRead), DatabaseServices.DBDictionary) Dim tGroupDict As DatabaseServices.DBDictionary = CType(tTrAct.GetObject(CType(tMainDict.Item("ACAD_GROUP"), DatabaseServices.ObjectId), DatabaseServices.OpenMode.ForRead), DatabaseServices.DBDictionary) If tGroupDict.Count > 0 Then Dim tEnum As DatabaseServices.DbDictionaryEnumerator = tGroupDict.GetEnumerator Do While tEnum.MoveNext Dim tDictID As DatabaseServices.ObjectId = tEnum.Current.Value If (tDictID.IsValid) AndAlso (Not tDictID.IsErased) Then Dim tDict As DatabaseServices.Group = CType(tTrAct.GetObject(tDictID, DatabaseServices.OpenMode.ForRead), DatabaseServices.Group) Debug.Print(tDict.Name) 'und da ist jetzt der gruppenname End If Loop End If Catch ex As Exception Debug.Print("Fehler aufgetreten: " & ex.Message) Finally If tTrAct IsNot Nothing Then tTrAct.Dispose() : tTrAct = Nothing End Try End Sub
- alfred - ------------------ www.hollaus.at |
Benny4 Mitglied Softwareentwickler
Beiträge: 178 Registriert: 16.02.2006 AutoCAD 2008 WIN XP Pro SP2
|
erstellt am: 03. Mrz. 2009 11:41 <-- editieren / zitieren --> Unities abgeben:
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|