# NurbsCurve

## Overview

NurbsCurve is a 3D curve analogous to NurbsPatchSurface.

The NurbsCurve node belongs to the **NURBS** component and requires at least level **1,** its default container field is *geometry.* It is available from X3D version 3.0 or higher.

## Hierarchy

1
2
3
4

+ X3DNode
+ X3DGeometryNode
+ X3DParametricGeometryNode
+ NurbsCurve

## Fields

### SFNode [in, out] **metadata** NULL [X3DMetadataObject]

Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.

#### Hint

### SFInt32 [in, out] **tessellation** 0 (-∞,∞)

Hint for surface *tessellation*.

### SFBool [ ] **closed** FALSE

Whether or not the curve is *closed* (i.e. matching end values).

### SFInt32 [ ] **order** 3 [2,∞)

Define *order* of surface by polynomials of degree = *order*-1.

### MFDouble [ ] **knot** [ ] (-∞,∞)

*knot* vector, where size = number of control points + order of curve.

### MFDouble [in, out] **weight** [ ] (0,∞)

Vector assigning relative *weight* value to each control point.

### SFNode [in, out] **controlPoint** NULL [X3DCoordinateNode]

Single contained Coordinate or CoordinateDouble node that can specify control points for NURBS geometry definitions.

## Advice

### Hint

- The contained controlPoint field can hold a Coordinate or CoordinateDouble node.