MbBridgeCurve3D Bridge Curve

The MbBridgeCurve3D class is declared in the cur_bridge3d.h file.

The bridge curve is derived from the MbCurve3D curve and is defined by two MbCurve3D curves curve1 and curve2, point parameters param1 and param2 of these curves, flags sense1 and sense2 indicating whether the directions of derivatives of the bridge curve and the curves being connected coincide, and two boundary parameters tmin and tmax of the bridge curve.

The bridge curve is constructed using the constructor

MbBridgeCurve3D( MbCurve3D & c1, double t1, bool s1,
                 MbCurve3D & c2, double t2, bool s2,
                 double _tmin = 0.0, double _tmax = 1.0 );

The bridge curve is intended for smoothly connecting two specified points of the curve1 and curve2 curves. It is a cubic Hermite spline constructed from two end points and curve derivatives at these points. The curve parameter t ranges from tmin to tmax:

\[\mathbf{tmin} \leq \mathbf{t} \leq \mathbf{tmax}\]

In the method

PointOn( double & t, MbCartPoint3D & r )

the radius vector r of the curve is described by the vector function

\[r(t) = (1 - 3w^{2} + 2w^{3}) \cdot point1 + (3w^{2} + 2w^{3}) \cdot point2 + \Bigl(\bigl(w - 2w^{2} + w^{3}\bigr) \cdot derive1 + \bigl(-w^{2} + w^{3}\bigr) \cdot derive2\Bigr) \cdot (tmax - tmin),\]

where

\[w = \frac{t - tmin}{tmax - tmin}\]

is the relative parameter value; point1 is a point of the curve1 curve calculated using the PointOn(param1, point1) method; point2 is a point of the curve2 curve calculated using the PointOn(param2, point2) method; derive1 and derive2 are derivatives of the bridge curve at its end points. The derive1 and derive2 vectors are parallel to the derivatives of the curves being connected. The lengths of the derive1 and derive2 vectors are equal to the distance between the end points divided by tmax – tmin. Fig. 1 shows the bridge curve:

../../../../_images/O.4.17.1.png

Fig. 1

The shape of the curve depends on the positions of the end points and on the directions of the curves being connected at these points. The boundary parameters must satisfy the condition tmin < tmax. The curve cannot be periodic.