| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Material auslesen (2244 mal gelesen)
|
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004 Precision M4700 i7 32 GB RAM NVIDIA
|
erstellt am: 13. Sep. 2006 11:46 <-- editieren / zitieren --> Unities abgeben:
Hallo Forum, jetzt bastele ich schon eine weile ich möchte einfach nur das Material auslesen um dann eine weitere Aktion zu starten. "oDoc.PropertySets("{F29F85E0-4FF9-1068-AB91-08002B27B3D9}").Item("Material").Value" den habe ich aus der API Hilfe aber damit komme ich nicht weiter kann mir jemand Helfen ------------------ Gruß Fredy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 13. Sep. 2006 12:52 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Hallo Fredy, ist nur das falsche PropertySet: Private Sub getMaterial() Dim oApp As Inventor.Application Set oApp = ThisApplication Dim oDoc As PartDocument Set oDoc = oApp.ActiveDocument Debug.Print oDoc.PropertySets(3).Item("Material").Value End Sub Du hast im 1. PropSet (oDoc.PropertySets(1)...) gesucht.
Grüsse,
Paul www.morecam.ch www.thinkcad.de
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Zimmermann Mitglied Maschinenbautechniker Konstrukteur
Beiträge: 34 Registriert: 28.06.2004 Precision M4700 i7 32 GB RAM NVIDIA
|
erstellt am: 13. Sep. 2006 13:15 <-- editieren / zitieren --> Unities abgeben:
|
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 13. Sep. 2006 13:54 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
|
ylps Mitglied
Beiträge: 89 Registriert: 29.07.2005 Inventor 10 INV 2008
|
erstellt am: 06. Mrz. 2008 22:32 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Hallo, beim Suchen nach meinem Problem bin ich jetzt hier gelandet. Auslesen aus der IPT funktioniert hervorragend. Aber wie kann ich das Material aus einer IDW auslesen. Bei mir kommt bei Material als Textinhalt " " (nichts)! Gruß Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Doc Snyder Ehrenmitglied V.I.P. h.c. Dr.-Ing. Maschinenbau, Entwicklung & Konstruktion von Spezialmaschinen
Beiträge: 13115 Registriert: 02.04.2004 AIP2013SP2.2 XPproSP2 MS-IntelliMouse-Optical SpacePilot DellM4600 2,13GHz 2GB FxGo1400 1920x1200 am Dock Dell2711
|
erstellt am: 06. Mrz. 2008 22:41 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Moin! Ich kann zwar kaum VBA, aber so viel ist logisch: IDW hat kein Material, denn IDW definiert eine Zeichnung. Ich würde in den Eigenschaften der IDW nach dem(n) von der IDW referenzierten Modell(en) suchen, und wenn das eine IAM ist, darin nach den referenzierten IPT. Die haben dann Material. ------------------ Roland www.Das-Entwicklungsbuero.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ylps Mitglied
Beiträge: 89 Registriert: 29.07.2005 Inventor 10 INV 2008
|
erstellt am: 06. Mrz. 2008 23:01 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Danke für die schnelle Antwort. Das Material wird im IPT abgefragt, das ist klar! Auch das der Schriftkopf nach dem "Modell-Material" nachfragt ist auch klar. Da ich auch so gut wie kein VBA kann, wie kann ich meinem Programmm sagen, er soll von der aktuellen Zeichnung im Modell nach dem Material nachfragen? Gruß Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Manfred Zirk Mitglied
Beiträge: 513 Registriert: 01.11.2002 IV2008 SP1 MDT2008 WIN XP SP2, Vista x64 Asus A8N-SLI, AMD Opteron 180 , 4GB, Quadro FX 3400
|
erstellt am: 07. Mrz. 2008 16:37 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
Hallo Michael, das ist im Prinzip auch möglich, aber nicht ganz problemlos umzusetzen. Man kann auf diverse Properties der Modelle zugreifen, die in einer idw referenziert sind. Die Modellproperties im Schriftfeld stammen immer aus der ersten auf dem aktuellen Blatt eingefügten Modelldatei. Dazu muss man die in der idw auf dem aktuellen Blatt die Liste der referenzierten Modelldateien abfragen und den vorhandenen ersten Eintrag der Liste nehmen. Damit greift man dann auf die Properties der entsprechenden Modelldatei zu. Das sieht dann ungefähr so im Code aus: ---- If MainProgPropMgr.oInventor.ActiveDocumentType = DocumentTypeEnum.kDrawingDocumentObject Then If MainProgPropMgr.oDoc.ReferencedDocuments.Count > 0 Then 'Modell vorhanden Me.TextBox_Material.Text = MainProgPropMgr.oDoc.ReferencedDocuments.Item(1).PropertySets.Item("Design Tracking Properties") _ .ItemByPropId(PropertiesForDesignTrackingPropertiesEnum.kMaterialDesignTrackingProperties).Value Me.TextBox_Material_P2plus.Text = Me.TextBox_Material.Text Else Me.TextBox_Material.Text = "" Me.TextBox_Material_P2plus.Text = "" End If End If ---- In dem Beispiel wird allerdings vereinfacht das erste in der idw referenzierte Modell zur Anzeige der Daten genutzt. Grüße Manfred [Diese Nachricht wurde von Manfred Zirk am 07. Mrz. 2008 editiert.] [Diese Nachricht wurde von Manfred Zirk am 07. Mrz. 2008 editiert.] [Diese Nachricht wurde von Manfred Zirk am 07. Mrz. 2008 editiert.] [Diese Nachricht wurde von Manfred Zirk am 07. Mrz. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ylps Mitglied
Beiträge: 89 Registriert: 29.07.2005 Inventor 10 INV 2008
|
erstellt am: 11. Mrz. 2008 14:45 <-- editieren / zitieren --> Unities abgeben: Nur für Zimmermann
|