'---------------------------------------------------------------------------------------------------------------------------------------------------------------------- '-------------------Funktion um Splines zu ziehen------------------------------------------------------------------------------------------------------------------- '---------------------------------------------------------------------------------------------------------------------------------------------------------------------- Function SplineZiehen(oPart,oHybridb,oHybridw,intZahl,strSpName,strPName,strTan1,strTan2) 'oPart = aktuelles Part, oHybridb = Geometrsiches Set in dem der Spline erzeugt wird, intZahl = Zahl der Stuetzpunkte 'strSpName = Name des Splines, strPName = Name der Punkte Set oHybridShapes = oHybridb.HybridShapes 'das Objekt "oHybridShapes" wird erzeugt um die geometrischen Teile des Splines zu enthalten Set oHybridShapes1= oHybridw.Hybridshapes Set oHybridShapeFactory = oPart.HybridShapeFactory 'das Objekt "oHybridShapeFactory" wird erzeugt und enthaelt die Werkzeuge fuer die Geometrieerzeugung Set oSpline = oHybridShapeFactory.AddNewSpline() 'aus der "oHybridShapeFactory" wird ein Spline erzeugt oSpline.SetSplineType 0 'Art des Splines 0^=kubisch, 1^=Wilson-Fowler oSpline.SetClosing 0 'der Spline wird nicht geschlossen If strTan1 = "" then for n=1 to intZahl-1 step 1 'Schleifenbedingung um alle Punkte zu bearbeiten Set oPunktKoord = oHybridShapes1.Item(strPName & n) 'der aktuelle Punkt wird in ein Objekt "oPunktKoord" uebernommen Set oReferenz1 = oPart.CreateReferenceFromObject(oPunktKoord) 'auf das Objekt des Punktes wird referenziert oSpline.AddPointWithConstraintExplicit oReferenz1, Nothing, -1.000000, 1, Nothing, 0.000000 'dem Spline wird ein Stuetzpunkt aus der Referenz hinzugefuegt, ohne Tangente, ohne Radius next 'Ende der Schleife Else Set oPunktKoord = oHybridShapes.Item(strPName & 1) 'der aktuelle Punkt wird in ein Objekt "oPunktKoord" uebernommen Set oReferenz1 = oPart.CreateReferenceFromObject(oPunktKoord) 'auf das Objekt des Punktes wird referenziert Set oReferenz2 = oPart.CreateReferenceFromObject(oHybridShapes.Item(strTan1)) oSpline.AddPointWithConstraintFromCurve oReferenz1, oReferenz2, 1.000000, 1, 1 for n=2 to intZahl-1 step 1 Set oPunktKoord = oHybridShapes.Item(strPName & n) Set oReferenz = oPart.CreateReferenceFromObject(oPunktKoord) oSpline.AddPointWithConstraintExplicit oReferenz, Nothing, -1.000000, 1, Nothing, 0.000000 next End If Set oPunktKoord = oHybridShapes1.Item(strPName & intZahl) Set oReferenz1 = oPart.CreateReferenceFromObject(oPunktKoord) If strTan2 <> "" then Set oReferenz2 = oPart.CreateReferenceFromObject(oHybridShapes.Item(strTan2)) oSpline.AddPointWithConstraintFromCurve oReferenz1, oReferenz2, 1.000000, 1, 1 Else oSpline.AddPointWithConstraintExplicit oReferenz1, Nothing, -1.000000, 1, Nothing, 0.000000 End If oHybridb.AppendHybridShape oSpline 'der Spline wird in den oHybridb geschrieben oSpline.name = strSpName 'der Spline wird benannt End Function