C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2
alg_nurbs_conic.h File Reference

Construction of conic sections as NURBS curves. More...

Functions

MbCurve3DNurbsConic_1 (const MbCartPoint3D &mbPoint0, const MbCartPoint3D &mbPoint1, const MbCartPoint3D &mbPoint2, double fDiscr)
 Construct a conic section by two points, an angle vertex and a discriminant. More...
 
MbCurveNurbsConic_1 (const MbCartPoint &mbPoint0, const MbCartPoint &mbPoint1, const MbCartPoint &mbPoint2, double fDiscr)
 Construct a conic section by two points, an angle vertex and a discriminant. More...
 
MbCurve3DNurbsConic_2 (std::vector< MbCartPoint3D > &vmbConicPoints, const MbCartPoint3D &mbVertex)
 Construct a conic section by three points, and an angle vertex. More...
 
MbCurveNurbsConic_2 (std::vector< MbCartPoint > &vmbConicPoints, const MbCartPoint &mbVertex)
 Construct a conic section by three points, and an angle vertex. More...
 
MbCurve3DNurbsConic_3 (const std::vector< MbCartPoint3D > &vmbConicPoints, MbVector3D &mbTangent1, MbVector3D &mbTangent2)
 Construct a conic section by three points and two inclinations. More...
 
MbCurveNurbsConic_3 (const std::vector< MbCartPoint > &vmbConicPoints, MbVector &mbTangent1, MbVector &mbTangent2)
 Construct a conic section by three points and two inclinations. More...
 
MbCurve3DNurbsConic_4 (const MbCartPoint3D &mbPoint1, const MbCartPoint3D &mbPoint2, const MbVector3D &mbTangent1, const MbVector3D &mbTangent2, double fDiscr)
 Construct a conic section by two points, two inclinations and a discriminant. More...
 
MbCurveNurbsConic_4 (const MbCartPoint &mbPoint1, const MbCartPoint &mbPoint2, const MbVector &mbTangent1, const MbVector &mbTangent2, double fDiscr)
 Construct a conic section by two points, two inclinations and a discriminant. More...
 
MbCurve3DNurbsConic_5 (const std::vector< MbCartPoint3D > &vmbConicPoints, MbVector3D &mbTangent1, size_t tanPntNb=1)
 Construct a conic section by four points, and an inclination. More...
 
MbCurveNurbsConic_5 (const std::vector< MbCartPoint > &vmbConicPoints, MbVector &mbTangent1, size_t tanPntNb=1)
 Construct a conic section by four points, and an inclination. More...
 
MbCurve3DNurbsConic_6 (const std::vector< MbCartPoint3D > &vmbConicPoints)
 Construct a conic section by five points. More...
 
MbCurveNurbsConic_6 (const std::vector< MbCartPoint > &vmbConicPoints)
 Construct a conic section by five points. More...
 

Detailed Description

Construction of conic sections as NURBS curves.

Construction of conic sections is performed in the following way: by two points, a vertex and a discriminant, by three points and a vertex, by three points and two inclinations, by two points, two inclinations and discriminant, by four points and inclination and by five points.
A NURBS curve describing a conic is constructed by three points: a start and an end of a conic and an average point (a vertex of angle which should be inscribed into the conic). Let weights of the start point and the end point be equal to 1. After calculating of the weight of the average point NURBS of third degree is constructed by these three weights. This NURBS is the required conic.