Ich bin auf der Suche nach einer Möglichkeit Konturen eines Blechbauteils zu analysieren. Dabei möchte ich unter anderem herausfinden, wie viele Innenkonturen ein Bauteil hat und dessen Konturlängen ermitteln. Über ComponentDefinition.FlatPattern.TopFace.Edges finde ich mal grundsätzlich alle Kanten der Oberfläche und ComponentDefinition.FlatPattern.TopFace.EdgeLoops alle geschlossenen Konturen mit Unterscheidung Innen- oder Aussenkontur. Wie aber kann ich deren Längen ermitteln?
erstellt am: 03. Mai. 2021 17:27 <-- editieren / zitieren --> Unities abgeben: Nur für OibelTroibel
Hi Raphael,
man kann das MeasureTool für Konturlänge nutzen.
Ohne Abfragen, Error Handling und Garantie
Code: Private Sub KonturlaengeInnen() Dim oApp As Inventor.Application: Set oApp = ThisApplication Dim oPrtDoc As Inventor.PartDocument: Set oPrtDoc = oApp.ActiveDocument Dim oCompDef As Inventor.ComponentDefinition: Set oCompDef = oPrtDoc.ComponentDefinition
Dim oTopFace As Inventor.Face: Set oTopFace = oCompDef.FlatPattern.TopFace Dim oEdgeLoop As Inventor.EdgeLoop
Dim oMeasureTools As MeasureTools: Set oMeasureTools = ThisApplication.MeasureTools
Dim oLoopLength As Double
oLoopLength = 0 For Each oEdgeLoop In oTopFace.EdgeLoops If Not oEdgeLoop.IsOuterEdgeLoop Then oLoopLength = oLoopLength + oMeasureTools.GetLoopLength(oEdgeLoop) End If Next
Vereint die langjährige Erfahrung von pit-cup im Bereich der Gebäudetechnikplanung
und des Facility Management zu einem durchgängigen 2D/3D CAD/BIM Planungswerkzeug, über den gesamten Lebenszyklus einer Immobilie.