RhinoCommon API
NurbsCurveCreateSpiral Method (Point3d, Vector3d, Point3d, Double, Double, Double, Double) |
Creates a C1 cubic NURBS approximation of a helix or spiral. For a helix,
you may have radius0 == radius1. For a spiral radius0 == radius1 produces
a circle. Zero and negative radii are permissible.
Namespace: Rhino.Geometry
Assembly: RhinoCommon (in RhinoCommon.dll)
Since: 5.2

public static NurbsCurve CreateSpiral( Point3d axisStart, Vector3d axisDir, Point3d radiusPoint, double pitch, double turnCount, double radius0, double radius1 )
Public Shared Function CreateSpiral ( axisStart As Point3d, axisDir As Vector3d, radiusPoint As Point3d, pitch As Double, turnCount As Double, radius0 As Double, radius1 As Double ) As NurbsCurve
Parameters
- axisStart
- Type: Rhino.GeometryPoint3d
Helix's axis starting point or center of spiral. - axisDir
- Type: Rhino.GeometryVector3d
Helix's axis vector or normal to spiral's plane. - radiusPoint
- Type: Rhino.GeometryPoint3d
Point used only to get a vector that is perpendicular to the axis. In particular, this vector must not be (anti)parallel to the axis vector. - pitch
- Type: SystemDouble
The pitch, where a spiral has a pitch = 0, and pitch > 0 is the distance between the helix's "threads". - turnCount
- Type: SystemDouble
The number of turns in spiral or helix. Positive values produce counter-clockwise orientation, negative values produce clockwise orientation. Note, for a helix, turnCount * pitch = length of the helix's axis. - radius0
- Type: SystemDouble
The starting radius. - radius1
- Type: SystemDouble
The ending radius.
Return Value
Type: NurbsCurveNurbsCurve on success, null on failure.
