MbCylinderSurface Cylindrical Surface

The MbCylinderSurface class is declared in the surf_cylinder_surface.h file.

The MbCylinderSurface cylindrical surface belongs to the group of elementary surfaces MbElementarySurface. The cylindrical surface is described by the radius radius and the height height, defined in the local coordinate system MbPlacement3D position.

The first surface parameter is measured along the arc from the vector position.axisX in the direction of the vector position.axisY. The first surface parameter u takes values on the interval: umin ≤ u ≤ umax. The values u = 0 and u = 2π correspond to a point on the XZ plane. The surface can be periodic with respect to the first parameter. For a periodic surface, umax - umin = 2π; for a non-periodic surface, umax - umin < 2π.

The second surface parameter is measured along the straight line in the direction of the vector position.axisZ. The second surface parameter v takes values on the interval: vmin ≤ v ≤ vmax. The value v = 0 corresponds to the origin of the local coordinate system, and the value v = 1 corresponds to the point at a distance height from the XY plane of the local coordinate system of the surface.

In the PointOn( double u, double v, MbCartPoint3D & s ) method, the position vector of the surface s is described by the vector function

\begin{equation} \mathbf{s}(u, v) = \mathbf{position.origin} + \mathit{radius} \left( \cos(u)\, \mathbf{position.axisX} + \sin(u)\, \mathbf{position.axisY} \right) + \mathit{height} \cdot v\, \mathbf{position.axisZ} \end{equation}

Fig. 1 shows the cylindrical surface:

../../../../_images/O.5.3.1.png

Fig. 1

The radius and height must be greater than zero: radius > 0, height > 0. The following inequalities must hold for the boundary parameters of the surface: umin < umax, vmin < vmax.

The local coordinate system position can be either right-handed or left-handed. If the local coordinate system is right-handed, the normal is directed towards the convex side of the surface (away from the surface axis); if the local coordinate system is left-handed, the normal is directed towards the concave side of the surface (towards the surface axis).