Knot Vector Generator
The knotvector module provides utility functions related to knot vector generation and validation.
Function Reference
- geomdl.knotvector.check(degree, knot_vector, num_ctrlpts)
Checks the validity of the input knot vector.
Please refer to The NURBS Book (2nd Edition), p.50 for details.
- Parameters:
degree (int) – degree of the curve or the surface
knot_vector (list, tuple) – knot vector to be checked
num_ctrlpts (int) – number of control points
- Returns:
True if the knot vector is valid, False otherwise
- Return type:
bool
- geomdl.knotvector.generate(degree, num_ctrlpts, **kwargs)
Generates an equally spaced knot vector.
It uses the following equality to generate knot vector:

where;
, degree
, number of control points
, number of knots
Keyword Arguments:
clamped: Flag to choose from clamped or unclamped knot vector options. Default: True
- Parameters:
degree (int) – degree
num_ctrlpts (int) – number of control points
- Returns:
knot vector
- Return type:
list
- geomdl.knotvector.normalize(knot_vector, decimals=18)
Normalizes the input knot vector to [0, 1] domain.
- Parameters:
knot_vector (list, tuple) – knot vector to be normalized
decimals (int) – rounding number
- Returns:
normalized knot vector
- Return type:
list