 |
BSplineCreateNURBSCurve(IListPoint3D, IListDouble, Double, Double, Int32) Method |
Returns a Point3DCollection that defines the NURBS curve (Non-uniform rational B-spline) based on the controlPoints, weights and positionsPerSegment.
The curve positions are created using an adaptive algorithm that adds more points where the curvature is higher.
This takes longer to compute than when using fixed positionsPerSegment, but generates smoother curves with less positions.
Namespace: Ab3d.UtilitiesAssembly: Ab3d.PowerToys (in Ab3d.PowerToys.dll) Version: 12.0.9484.2048
Syntaxpublic static Point3DCollection CreateNURBSCurve(
IList<Point3D> controlPoints,
IList<double> weights,
double angleThresholdDegrees,
double minSegmentLength,
int maxSubdivisionsCount = 10
)
Parameters
- controlPoints IListPoint3D
- list of control points
- weights IListDouble
- list of weights
- angleThresholdDegrees Double
- Angle threshold in degrees. Lower values produce more accurate curve.
- minSegmentLength Double
- Minimum segment length. Lower values produce more accurate curve.
- maxSubdivisionsCount Int32 (Optional)
- maximum number of recursive subdivisions (10 by default that generates at max 1024 positions for the curve)
Return Value
Point3DCollectionPoint3DCollection that defines the NURBS curve
See Also