Autor
|
Thema: GSMBiDim.1;1 ??? (2275 mal gelesen)
|
danielsc Mitglied
Beiträge: 45 Registriert: 18.06.2009
|
erstellt am: 03. Jul. 2009 11:10 <-- editieren / zitieren --> Unities abgeben:
Also ich habe ein Makro geschrieben welches um ein Part einen "Quader" mit den Extremmaßen legt. Aus diesem erzeuge ich dann durch close surface einen geschlossenen Körper. Jetzt soll aber noch auf alle 6 (wenn ichs hinbekomm auf 5) Seiten ein Aufmaß mit Thikness gelegt werden. hat bei meinem testkörper auch super funktionier aber jetzt habe ich es einmal bei anderen Parts ausprobiert und bei manchen geht es bei manchen wiederum nicht. Habe auch schon den Fehler gefunden aber weiß trotzdem nicht so richtig weiter. hier erst einmal die Codestelle in der, der Fehler steckt: Bei meinem Testkörper:
Code: Dim seite1 As Reference Set seite1 = part1.CreateReferenceFromBRepName("RSur:(Face:(Brp:(CloseSurface.1;(Brp:(GSMBiDim.1;1)));None:();Cf11:());WithTemporaryBody;WithoutBuildError;WithSelectingFeatureSupport;MFB RepVersion_CXR15)", closeSurface1)
und so bei einem anderen Körper:
Code: Dim seite1 As Reference Set seite1 = part1.CreateReferenceFromBRepName("RSur:(Face:(Brp:(CloseSurface.1;(Brp:(GSMBiDim.2;1)));None:();Cf11:());WithTemporaryBody;WithoutBuildError;WithSelectingFeatureSupport;MFB RepVersion_CXR15)", closeSurface1)
Nur leider finde ich nirgends eine Beschreibung was sich hiner dem: (GSMBiDim.2;1) wirklich verbirgt. Darauf zu kommen das sich die letzte Zahl auf eine Seite des Körpers bezieht war ja nicht schwer aber warum ändert sich die Zahl davor obwohl ich vorher immer genau mit den selben Makros diesen Körper erstell? MfG danny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
zoltan.bekesi Mitglied
Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 03. Jul. 2009 19:02 <-- editieren / zitieren --> Unities abgeben: Nur für danielsc
Hallo danny, willkommen im Welt der B-Reps . Ein Paar Zeilen über diese kannst du sowohl im Ziethen Buch, als auch bei Jens Hansen sein Buch finden. Zu deine Frage aber: "GSMBiDim.2" ist die sog. Internal Name einer Flächenobjekt, die CATIA intern verwendet. Im ganzen B-Rep String ist beschrieben, wie diese Flächenstück in CATIA erstellt ist. Da B-Reps nicht allzu gut dokumentiert sind, versuche ich die nach Möglichkeit zu vermeiden. Dir würde ich in diesen Fall vorschlagen, die 6 Seiten des Quaders mit der CATIA Suchfunktion zu ermitteln. Das würde etwa so gehen: Code: dim oSel as selection set oSel = catia.activedocument.selection osel.clear osel.Add oDeinCloseSurfaceObject osel.Search "Topology.CGMFace,sel" dim seite as reference if osel.count2>0 then dim i as integer for i=1 to osel.count2 'hier wird dein B-Rep string ausgegeben. Ggf. kannst du aus diesen Entscheiden, welchen du nicht den Aufmaß verpassen möchtest msgbox(osel.item(i).reference.name) set seite = osel.item(i).reference 'Hier kannst du dein Thickness aufsetzen next end if
Ich hoffe, dass das dir weiterbringt.Gruß, Zoltan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
danielsc Mitglied
Beiträge: 45 Registriert: 18.06.2009
|
erstellt am: 06. Jul. 2009 13:01 <-- editieren / zitieren --> Unities abgeben:
Danke klappt perfekt Ich möchte mich hiermit auch mal bei allen anderen bedanken die ich in den letzten wochen mit meinen Fragen genervt hab Echt ein super Forum hier in dem einem wirklich immer geholfen wird. Also in diesem Sinne danke an alle und macht so super weiter MfG Danny Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|