Returns a complete data description of a nurbs surface trim.
A trim is a nurbs curve list that is projected on a nurbs surface.
Note: This method uses output arguments. C# and some
scripting languages (such as JScript and PerlScript) don't support arguments passed by reference. However, there is a
alternate version of this method which is considered safe to use with C#, JScript and PerlScript:
NurbsSurface.GetTrim2.
NurbsSurface.GetTrim( Int32 in_nTrimIndex, siNurbsFormat in_eNurbsFormat, Object& out_vsabIsBoundary, Object& out_vsalProjectionType, Object& out_vsalCount, Object& out_vsaControlPoints, Object& out_vsaNbControlPoints, Object& out_vsadKnots, Object& out_vsaNbKnots, Object& out_vsasClosed, Object& out_vsalDegree, Object& out_vsalParameterization ); |
NurbsSurface.GetTrim( TrimIndex, [NurbsFormat], IsBoundary, ProjectionType, Count, ControlPoints, [NbControlPoints], [Knots], [NbKnots], [Closed], [Degree], [Parameterization] ); |
Parameter | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
TrimIndex | Long | Specifies which trim must be described. | ||||||
NurbsFormat | siNurbsFormat |
Specifies how the data is formatted. Default Value: siSINurbs |
||||||
IsBoundary | Boolean | Specifies whether the trim is a boundary. | ||||||
ProjectionType | Long |
Specifies the projection type of this trim.
|
||||||
Count | Long | Number of nurbs curve in the trim | ||||||
ControlPoints | 2D Array |
The control points are stored in a 2 dimensional array. The array is a 4 x Number of ControlPoints |
||||||
NbControlPoints | Array of Long | Specifies the number of ControlPoints per NurbsCurve. | ||||||
Knots | Array of Doubles | An array of knot values. | ||||||
NbKnots | Array of Longs | Specifies the number of Knots per nurbs curve. | ||||||
Closed | Array of Boolean |
Specifies whether the nurbs curve is closed . Default Value: False |
||||||
Degree | Array of Long |
Degree of the nurbs curves. Default Value: 3 |
||||||
Parameterization | Array of siKnotParameterization | The parameterization factor of the nurbs curve. |
Dim lDegree, bClosed, eParameterization, aControlVertex, aKnots, lCount, aNbControlVertex, bIsBoundary, lProjType set oRoot = application.activeproject.activescene.root set oSphere = oRoot.AddGeometry( "Sphere", "NurbsSurface" ) ' extract each trim contained in the surface for i = 0 to (oSphere.ActivePrimitive.Geometry.Surfaces.Item(0).TrimCount - 1) oSphere.ActivePrimitive.Geometry.Surfaces.Item(0).GetTrim _ i, _ siSINurbs, _ bIsBoundary, _ lProjType, _ lCount, _ aControlVertex, _ aNbControlVertex, _ aKnots , _ aNbKnots, _ bClosed, _ lDegree, _ eParameterization oRoot.AddNurbsCurveList2 _ lCount, _ aControlVertex, _ aNbControlVertex, _ aKnots, _ aNbKnots, _ bClosed, _ lDegree, _ eParameterization, _ siSINurbs next |