Autor
|
Thema: Trennen von 2 Elementen (963 mal gelesen)
|
theshadog Mitglied
Beiträge: 61 Registriert: 18.03.2009
|
erstellt am: 15. Mai. 2009 12:22 <-- editieren / zitieren --> Unities abgeben:
Hi Leute! Szenario: Ich habe 2 Körper die sich schneiden. Das eine ist mein Bauteil, das andere ist ein Block. Der Block wird dann so zertrennt, dass nur noch ein bestimmter Teil über der Bauteilfläche bleibt. Wenn das Makro jetzt den Block in die falsche Richtung aufbaut, funktioniert das logischerweise nicht. Meine Frage: Gibt es eine möglichkeit, vor dem Zertrennen zu überprüfen, ob der Block das Bauteil schneidet? Danke für Anregungen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ptit.tom Mitglied CAD-Berater
Beiträge: 114 Registriert: 11.02.2005 win10, CATIA R19 bis R30
|
erstellt am: 18. Mai. 2009 09:03 <-- editieren / zitieren --> Unities abgeben: Nur für theshadog
Hallo, Vielleicht kannst du ein "Intersection"-Feature erzeugen und prüfen, ob du beim Update ein Fehler kriegst (also "On Error Resume Next" benutzen). Wenn nicht hast du eine Verschneidung. Gruß, Florent. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
theshadog Mitglied
Beiträge: 61 Registriert: 18.03.2009
|
erstellt am: 19. Mai. 2009 10:12 <-- editieren / zitieren --> Unities abgeben:
So, da ich beim anderen Problem erstmal festhänge... Also erstmal danke Tom. Das war auch mein Gedanke. Allerdings bekomm ich keinen update Fehler, wenn er mir die Verschneidungen macht. Er trennt 2x, egal ob es 2 Körper zum Zertrennen gibt oder nicht.
Ich denk mal weiter nach. Andere Anregungen sind gern gesehen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ptit.tom Mitglied CAD-Berater
Beiträge: 114 Registriert: 11.02.2005 win10, CATIA R19 bis R30
|
erstellt am: 20. Mai. 2009 09:27 <-- editieren / zitieren --> Unities abgeben: Nur für theshadog
Hallo, VBA meldet die Fehler nur beim Update. Du muss zuerst das Feature erzeugen und zuerst aktualisieren, bevor du wissen kannst ob du eine Verschneidung hast. Code:
'### Verschneidung erzeugen ### Set MyIntersect = ...'### Lokales Update. oPart ist das Objekt Part ### On Error Resume Next oPart.UpdateObject MyIntersect '### Error Management ### If Err.Number = 0 Then 'Wenn es ein Fehler gibt 'Intersect löschen 'was anderes machen Err.Clear End If On Error GoTo 0
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
theshadog Mitglied
Beiträge: 61 Registriert: 18.03.2009
|
erstellt am: 20. Mai. 2009 18:23 <-- editieren / zitieren --> Unities abgeben:
Ok, sorry falsch ausgedrückt. Ich bekomme nicht "keinen update-Fehler" sondern ich bekomme gar keinen Fehler. Das Makro endet damit, dass er ein Bauteil und einen Block, der das Bauteil durchstößt, zertrennt. Er macht die Zerschneidung, egal ob da 2 Körper sind, die man zerschneiden kann oder nicht. Er updatet dann auch, ohne zu motzen, dass ein Problem vor liegt. Darum fällt die Methode "bei Updatefehler: Block löschen und mit anderer Ausrichtung aufbauen" leider weg.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |