2016-03-24 5 views
1

Ich bin neu in Catia und VBA-Programmierung.vba catia v5 R24 Start- und Endpunkt der Kanten

Ich habe versucht, Start-End-Endpunkte von Kanten zu bekommen, um Abfangpunkte zu berechnen.

Es ist einfach für RectilinearTriDimFeatEdge bietet es eine GetOrigin und GetDirection-Methode, wo Endpunkt von origin + length * direction berechnet werden kann. Aber für andere Typen wie BiDimFeatEdge bekomme ich nicht einmal den Ursprungspunkt.

Gibt es eine Möglichkeit, Start- und Endpunkte von jeder Art von Kanten zu bekommen? Danke

Antwort

2

für offene Kurven, können Sie einfach den Punkt auf jeder Seite der Kurve mit Funktion wie folgt, wo iCurve ist Ihre Eingabe, und iBeginEnd ist, wechseln von welcher Seite Sie es wollen.

Private Function endPoint(iCurve As Reference, Optional iBeginEnd As Boolean = False) As HybridShapePointOnCurve 
    Set endPoint = CATIA.ActiveDocument.Part.HybridShapeFactory.AddNewPointOnCurveFromDistance(iCurve, 0#, iBeginEnd) 
End Function 

oder Sie können in die gewünschte Richtung verwenden extremum

dies nicht funktionieren natürlich auch für geschlossene Kurven, da sie nicht Start- und Endpunkte haben, aber wenn Sie Lösung für diejenigen brauchen, fragen ..

Wenn Sie einfach die Länge eines Objekts erhalten möchten, dann gibt es eine einfachere Messmethode.

Verwandte Themen