# NurbsCurveKnotList class

Namespace: [Rhino.Geometry.Collections](https://developer.rhino3d.com/api/rhinocommon/namespace/rhino.geometry.collections.md) · Assembly: [RhinoCommon](https://developer.rhino3d.com/api/rhinocommon/assembly/rhinocommon.md)

```cs
public sealed class NurbsCurveKnotList : IEnumerable<double>, IEpsilonComparable<NurbsCurveKnotList>, IList<double>
```

Provides access to the knot vector of a NURBS curve.

## Properties

- [Count](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/count.md): Total number of knots in this curve.
- [IsClampedEnd](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/isclampedend.md): Gets a value indicating whether or not the knot vector is clamped at the end of the curve. Clamped curves are coincident with the first and last control-point. This requires fully multiple knots.
- [IsClampedStart](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/isclampedstart.md): Gets a value indicating whether or not the knot vector is clamped at the start of the curve. Clamped curves start at the first control-point. This requires fully multiple knots.
- [KnotStyle](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/knotstyle.md): Gets the style of the knot vector.
- [ICollection<double>.IsReadOnly](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-icollection-system-double-isreadonly.md)

## Indexers

- [this[]](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/item.md): Gets or sets the knot vector value at the given index.

## Methods

- [ClampEnd](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/clampend.md): Clamp end knots. Does not modify control point locations.
- [Contains](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/contains.md): Returns an indication of the presence of a value in the knot list.
- [CopyTo](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/copyto.md): Copies the list to an array.
- [CreatePeriodicKnots](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/createperiodicknots.md): Compute a clamped, uniform, periodic knot vector based on the current degree and control point count. Does not change values of control vertices.
- [CreateUniformKnots](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/createuniformknots.md): Compute a clamped, uniform knot vector based on the current degree and control point count. Does not change values of control vertices.
- [EnsurePrivateCopy](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/ensureprivatecopy.md): If you want to keep a copy of this class around by holding onto it in a variable after a command completes, call EnsurePrivateCopy to make sure that this class is not tied to the document. You can call this function as many times as you want.
- [EpsilonEquals](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/epsilonequals.md): Checks that all values in the other list are sequentially equal within epsilon to the values in this list.
- [IndexOf](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/indexof.md): Returns the first item in the list.
- [InsertKnot](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/insertknot.md): (2 overloads) Inserts a knot and update control point locations. Does not change parameterization or locus of curve.
- [KnotMultiplicity](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/knotmultiplicity.md): Get knot multiplicity.
- [RemoveKnotAt](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/removeknotat.md): Remove a knot from a curve and adjusts the remaining control points to maintain curve position as closely as possible.
- [RemoveKnots](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/removeknots.md): Remove knots from a curve and adjusts the remaining control points to maintain curve position as closely as possible. The knots from Knots[index0] through Knots[index1 - 1] will be removed.
- [RemoveMultipleKnots](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/removemultipleknots.md): Remove multiple knots from this curve.
- [SuperfluousKnot](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/superfluousknot.md): Computes the knots that are superfluous because they are not used in NURBs evaluation. These make it appear so that the first and last curve spans are different from interior spans. http://wiki.mcneel.com/developer/onsuperfluousknot
- [ICollection<double>.Add](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-icollection-system-double-add.md)
- [ICollection<double>.Clear](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-icollection-system-double-clear.md)
- [ICollection<double>.Remove](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-icollection-system-double-remove.md)
- [IEnumerable<double>.GetEnumerator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-ienumerable-system-double-getenumerator.md)
- [IList<double>.Insert](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-ilist-system-double-insert.md)
- [IList<double>.RemoveAt](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-generic-ilist-system-double-removeat.md)
- [IEnumerable.GetEnumerator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.nurbscurveknotlist/system-collections-ienumerable-getenumerator.md)
