Поверхность выдавливания MbExtrusionSurface

Класс MbExtrusionSurface объявлен в файле surf_extrusion_surface.h.

Поверхность выдавливания MbExtrusionSurface принадлежит к группе поверхностей движения MbSweptSurface. Поверхность выдавливания является частным случаем поверхности движения с прямолинейной направляющей кривой. Поверхность выдавливания описывается образующей кривой MbCurve3D curve, вектором направления выдавливания MbVector3D direction и длиной выдавливания distance.

Первый параметр поверхности u совпадает с параметром образующей кривой. Первый параметр поверхности принимает значения на отрезке umin ≤ u ≤ umax, который соответствует области определения образующей кривой. Поверхность может быть периодической по первому параметру, если периодической является образующая кривая.

Второй параметр поверхности v принимает значения на отрезке: vmin ≤ v ≤ vmax. Значение v = 0 соответствует точке на образующей кривой, значение v = 1 соответствует точке образующей кривой, смещённой на вектор direction * distance. Поверхность не может быть периодической по второму параметру.

В методе PointOn( double u, double v, MbCartPoint3D & s ) радиус-вектор поверхности s описывается векторной функцией

\begin{equation} \mathbf{s}(u, v) = \mathbf{curve}(u) + \mathbf{direction} \cdot \mathit{distance} \cdot v \end{equation}

Поверхность выдавливания приведена на рисунке:

../../../../_images/O.5.7.1.png

Для граничных значений второго параметра поверхности должно соблюдаться неравенство: vmin < vmax.