MbRuledSurface Ruled Surface
Class MbRuledSurface is declared in file surf_ruled_surface.h.
Ruled surface MbRuledSurface belongs to the group of swept surfaces MbSweptSurface. The ruled surface is defined by a curve MbCurve3D * curve, a curve MbCurve3D * sline, a flag of the presence of a pole of the surface at the initial value of the first parameter poleMin, a flag of the presence of a pole of the surface at the final value of the first parameter poleMax, the initial parameter tmin of curve sline, the derivative dt of the parameter of curve sline with respect to the parameter of curve curve, and the surface shape type type. The surface also has some additional data that are not mandatory and are used to speed up the work of the surface methods.
The first parameter of the surface u coincides with the parameter of curve curve. The first parameter of the surface takes values on the segment umin ≤ u ≤ umax, which corresponds to the domain of curve curve. The derivative dt is defined by
where tmax is the final parameter of curve sline. The surface can be periodic in the first parameter if curves curve and sline are periodic.
The second parameter of the surface v takes values on the segment vmin ≤ v ≤ vmax. Value v = vmin corresponds to a point on curve curve, and value v = vmax corresponds to a point on curve sline. The surface cannot be periodic in the second parameter.
In method PointOn( double u, double v, MbCartPoint3D & s ) the radius vector of the surface s is described by the vector function
where
The ruled surface is shown in Fig. 1:
Fig. 1
Curves of the surface s(const, v) with parameters u = const are straight-line segments. The surface may have a pole if one of the curves curve or sline is contracted to a point, or if curves curve and sline coincide at one of the ends.