## Сплайновые кривые C3D Solver использует NURBS-кривые в качестве математической основы сплайновых кривых. NURBS-представление стало фактически промышленным стандартом для представления кривых свободной формы и поддерживается практически всеми САПР. Общепризнанным каноническим трудом на данную тему является книга The NURBS Book авторов Les Piegl и Wayne Tiller (издательство Springer). C3D Solver предоставляет два способа определения сплайна: - сплайн по набору характеристических точек, заданных значениями их координат; - сплайн, проходящий через набор интерполяционных точек, заданных дескрипторами, ранее зарегистрированных геометрических объектов. Сплайн на основе NURBS-кривой создается с помощью метода ```cpp geom_item GCE_AddSpline(GCE_system gSys, GCE_spline spl). ``` Функция принимает структуру данных GCE_spline, которая содержит в себе информацию, определяющую сплайн: начальные значения контрольных точек, массив интерполяционных точек (при необходимости), веса , признак замкнутости и т.д. Специальное ограничение, фиксирующее вектор производной сплайна, создается методом ```cpp constraint_item GCE_FixSplineDerivative(GCE_system gSys, geom_item spline, double par, uint derOrder, GCE_vec2d * fixVal = NULL ); ```