| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
Autor
|
Thema: Feature-Namen auslesen (2229 mal gelesen)
|
Sgt.Pepper Mitglied Dipl.Ing.(BA) Maschinenbau

 Beiträge: 15 Registriert: 24.03.2004
|
erstellt am: 24. Mrz. 2004 14:27 <-- editieren / zitieren --> Unities abgeben:         
Hallo ich möchte für ein Makro aus einer Baugruppenzeichnung die Namen aller verbauten Einzelteile sowie Baugruppen auslesen. While Not feature Is Nothing featureName = feature.Name Set feature = feature.GetNextFeature() Wend So werden aber alle Features ausgelesen sprich Beschriftung, Beleuchtung usw. ebenfalls. Wie kann ich erkennen ob es sich bei dem Feature um ein Einzelteil bzw. um eine Baugruppe handelt?
------------------  Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
  
 Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 24. Mrz. 2004 15:24 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
Hallo Sgt.Pepper - wo hast Du denn Deine Band gelassen - im Club der einsamen Herzen ??? http://www.infotel.it/~gambetti/ aber nun zum Thema: Du must abfragen, ob das jeweils gefundene Feature ein sog. Bodyfeature ist, z.B. so: isbody = Part.SelectByID(Feature.Name, "BODYFEATURE", 0, 0, 0) BTW: Du willst in einer BG-Zeichnung die Namen aller ET und BG auslesen - Schreibst dann aber von Features, Beschriftung, Beleuchtung, ...  ------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sgt.Pepper Mitglied Dipl.Ing.(BA) Maschinenbau

 Beiträge: 15 Registriert: 24.03.2004
|
erstellt am: 24. Mrz. 2004 16:22 <-- editieren / zitieren --> Unities abgeben:         
Danke du hast mir sehr geholfen. Aber wie unterscheide ich ob es sich bei dem Feature um ein Einzelteil oder um eine Baugruppe handelt? Gibt es nicht so etwas wie Feature-Typen oder Klassen? ------------------  Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
  
 Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 24. Mrz. 2004 16:44 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
Zitat: Original erstellt von Sgt.Pepper: Gibt es nicht so etwas wie Feature-Typen oder Klassen?
doch gibt es, schau in der API Hilfe unter "Feature Types" nach - da werden Sie alle aufgelistet. den Unterschied ob Teil oder Baugruppe erhälst Du mit ModelDoc2::GetType. ------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1384 Registriert: 20.12.2003 SolidWorks 2023 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 24. Mrz. 2004 16:52 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
Hallo Sgt. Pepper, wie wäre es denn, wenn du dir die Excel-Stückliste V7.0 von Andreas Müller einmal zu Gemüte führst???? In diesem klasse Teil findest du wahrscheinlich viel, was du für deine Makros benutzen kannst. Gruß Andreas
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sgt.Pepper Mitglied Dipl.Ing.(BA) Maschinenbau

 Beiträge: 15 Registriert: 24.03.2004
|
erstellt am: 24. Mrz. 2004 17:05 <-- editieren / zitieren --> Unities abgeben:         
Das ist nicht mein Problem über ModelDoc2::GetType bekomme ich raus ob das aktive Dokument eine Zeichnung, eine Baugruppe oder ein Part ist. Ich möchte aber innerhalb eines Baugruppendokuments die einzelnen Bauteile auslesen um daraus eine Baukastenstückliste zu erstellen. Daher muss ich zwischen Einzelteilen und Baugruppen innerhalb des Dokuments unterscheiden können um später die Struktur der Stückliste zu ermitteln. Wenn ich aber die Namen der Features im Featuremanager mit dem zuerst genannten Quellcode auslese erscheinen auch Features wie "Beleuchtung", die einzelnen Ebenen (oben,unten,vorne...)usw. die ich aber sozusagen rausfiltern möchte. Wie kann ich also herausfinden ob es sich bei dem Feature um ein "Part" handelt oder eine "Baugruppe"? Ich hätte wohl meine Frage von Anfang an besser ausformulieren sollen sorry!  ------------------  Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sgt.Pepper Mitglied Dipl.Ing.(BA) Maschinenbau

 Beiträge: 15 Registriert: 24.03.2004
|
erstellt am: 24. Mrz. 2004 17:12 <-- editieren / zitieren --> Unities abgeben:         
|
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau

 Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 24. Mrz. 2004 17:19 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
Ich finde es auch nicht besonders glücklich, das über das Auslesen des FeatureManagers und die Ermittlung der Featuretypen zu lösen. Besser wäre eine rekursive Baugruppentraverse wie in der API  -Hilfe beschrieben. Kannst Du aber trotzdem, die Beschriftungs- und Beleuchtungseinträge stehen doch oben. Wenn Du erst ab dem 7. Feature Deine Teile anzeigen läßt, hast Du die schon mal nicht mehr. Wenn der Featuretyp "Reference" ist, hast Du ein Teil oder eine Baugruppe vor Dir - hat das Feature noch Subfeatures, dann war es wohl eine Baugruppe! Bei der Teileermittlung auf diese Weise aber nicht die Muster vergessen! ------------------ Lutz Federbusch Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
u.clemens Mitglied Konstrukteur
  
 Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 24. Mrz. 2004 17:23 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
Zitat: Original erstellt von Sgt.Pepper:
Ich möchte aber innerhalb eines Baugruppendokuments die einzelnen Bauteile auslesen um daraus eine Baukastenstückliste zu erstellen.
Na nun wird ja einiges klarer. Offensichtlich redest Du von Komponenten (einer Baugruppe) und nicht von Features (eines Teiles). In diesem Falle kannst Du ganz anders vorgehen. In meinem Vortrag auf der SWWCE2003 in Landau hatte ich ein Beispiel, das glaub ich Dein Problem trifft. Besorg Dir doch mal die CD von der Veranstaltung, da ist der komplette Vortrag drauf und auch der Quelltext der gezeigten Makros.
------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ad_man Mitglied freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))
   
 Beiträge: 1384 Registriert: 20.12.2003 SolidWorks 2023 SP5 mit Enterprise PDM , Windows 11, Dell Precision 3660, i7-12700K, 96 GB DDR-Ram, Quadro RTX A4000
|
erstellt am: 25. Mrz. 2004 08:13 <-- editieren / zitieren --> Unities abgeben:          Nur für Sgt.Pepper
|