.. role:: code :class: code MbBridgeCurve3D Bridge Curve ============================ .. _MbBridgeCurve3D_Joining_Curve_: .. kernel version: 118066 The :code:`MbBridgeCurve3D` class is declared in the *cur_bridge3d.h* file. The bridge curve is derived from the :ref:`MbCurve3D ` curve and is defined by two :code:`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 .. code-block:: cpp 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**: .. math:: \mathbf{tmin} \leq \mathbf{t} \leq \mathbf{tmax} In the method .. code-block:: cpp PointOn( double & t, MbCartPoint3D & r ) the radius vector **r** of the curve is described by the vector function .. math:: 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 .. math:: w = \frac{t - tmin}{tmax - tmin} is the relative parameter value; **point1** is a point of the **curve1** curve calculated using the :code:`PointOn`\(**param1**, **point1**) method; **point2** is a point of the **curve2** curve calculated using the :code:`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: .. figure:: ../../pictures/O.4.17.1.png :width: 15cm :align: center 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.