---
name: "gluPwlCurve"
section: "3x"
platform: "linux"
package: "xlibmesa-glu-dev"
version: "4.3.0.dfsg.1-14sarge7"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/gluPwlCurve"
---

# gluPwlCurve(3x)

describe a piecewise linear NURBS trimming curve

## NAME

**gluPwlCurve** - describe a piecewise linear NURBS trimming curve

## C SPECIFICATION

void **gluPwlCurve**( GLUnurbs\* *nurb*,

```
	GLint count,
	GLfloat* data,
	GLint stride,
	GLenum type )
```

delim $$

## PARAMETERS

- *nurb*

  Specifies the NURBS object (created with **gluNewNurbsRenderer**).

- *count*

  Specifies the number of points on the curve.

- *data*

  Specifies an array containing the curve points.

- *stride*

  Specifies the offset (a number of single-precision floating-point values) between points on the curve.

- *type*

  Specifies the type of curve. Must be either **GLU\_MAP1\_TRIM\_2** or **GLU\_MAP1\_TRIM\_3**.

## DESCRIPTION

**gluPwlCurve** describes a piecewise linear trimming curve for a NURBS surface. A piecewise linear curve consists of a list of  coordinates of points in the parameter space for the NURBS surface to be trimmed. These points are connected with line segments to form a curve. If the curve is an approximation to a curve that is not piecewise linear,  the points should be close enough in parameter space that the  resulting path appears curved at the resolution used in the application.

If *type* is **GLU\_MAP1\_TRIM\_2**, then it describes a curve in two-dimensional (*u*  and *v*) parameter space. If it is **GLU\_MAP1\_TRIM\_3**, then it describes a curve in two-dimensional homogeneous (*u*, *v*, and *w*) parameter space.  See the **gluBeginTrim** reference page for more information  about trimming curves.

## NOTES

To describe a trim curve that closely follows the contours of a NURBS  surface, call **gluNurbsCurve**.

## SEE ALSO

**gluBeginCurve(3G)**, **gluBeginTrim(3G)**, **gluNewNurbsRenderer(3G)**, **gluNurbsCurve(3G)**
