# FoundationClasses
TKMath
Convert

# Convert_ConicToBSplineCurve Class Reference

Root class for algorithms which convert a conic curve into
a BSpline curve (CircleToBSplineCurve, EllipseToBSplineCurve,
HyperbolaToBSplineCurve, ParabolaToBSplineCurve).
These algorithms all work on 2D curves from the gp
package and compute all the data needed to construct a
BSpline curve equivalent to the conic curve. This data consists of:
- the degree of the curve,
- the periodic characteristics of the curve,
- a poles table with associated weights,
- a knots table with associated multiplicities.
The abstract class ConicToBSplineCurve provides a
framework for storing and consulting this computed data.
The data may then be used to construct a
Geom2d_BSplineCurve curvSuper class of the following classes :
This abstract class implements the methods to get the geometric
representation of the B-spline curve equivalent to the conic.
The B-spline is computed at the creation time in the sub classes.
The B-spline curve is defined with its degree, its control points
(Poles), its weights, its knots and their multiplicity.
All the geometric entities used in this package are defined in 2D
space.
KeyWords :
Convert, Conic, BSplineCurve, 2D.
.

`#include <Convert_ConicToBSplineCurve.hxx>`

Inheritance diagram for Convert_ConicToBSplineCurve:

[legend]

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT Standard_Integer | Degree () const
| Returns the degree of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Integer | NbPoles () const
| Returns the number of poles of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Integer | NbKnots () const
| Returns the number of knots of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Boolean | IsPeriodic () const
| Returns true if the BSpline curve whose data is computed in this framework is periodic. .
Standard_EXPORT gp_Pnt2d | Pole (const Standard_Integer Index) const
| Returns the pole of index Index to the poles table of the BSpline curve whose data is computed in this framework. Exceptions Standard_OutOfRange if Index is outside the bounds of the poles table of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Real | Weight (const Standard_Integer Index) const
| Returns the weight of the pole of index Index to the poles table of the BSpline curve whose data is computed in this framework. Exceptions Standard_OutOfRange if Index is outside the bounds of the poles table of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Real | Knot (const Standard_Integer Index) const
| Returns the knot of index Index to the knots table of the BSpline curve whose data is computed in this framework. Exceptions Standard_OutOfRange if Index is outside the bounds of the knots table of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT Standard_Integer | Multiplicity (const Standard_Integer Index) const
| Returns the multiplicity of the knot of index Index to the knots table of the BSpline curve whose data is computed in this framework. Exceptions Standard_OutOfRange if Index is outside the bounds of the knots table of the BSpline curve whose data is computed in this framework. .
Standard_EXPORT void | BuildCosAndSin (const Convert_ParameterisationType Parametrisation, Handle(TColStd_HArray1OfReal)&CosNumerator, Handle(TColStd_HArray1OfReal)&SinNumerator, Handle(TColStd_HArray1OfReal)&Denominator, Standard_Integer &Degree, Handle(TColStd_HArray1OfReal)&Knots, Handle(TColStd_HArray1OfInteger)&Mults) const
Standard_EXPORT void | BuildCosAndSin (const Convert_ParameterisationType Parametrisation, const Standard_Real UFirst, const Standard_Real ULast, Handle(TColStd_HArray1OfReal)&CosNumerator, Handle(TColStd_HArray1OfReal)&SinNumerator, Handle(TColStd_HArray1OfReal)&Denominator, Standard_Integer &Degree, Handle(TColStd_HArray1OfReal)&Knots, Handle(TColStd_HArray1OfInteger)&Mults) const

## Protected Member Functions

Standard_EXPORT | Convert_ConicToBSplineCurve (const Standard_Integer NumberOfPoles, const Standard_Integer NumberOfKnots, const Standard_Integer Degree)

## Protected Attributes

Handle_TColgp_HArray1OfPnt2d | poles
Handle_TColStd_HArray1OfReal | weights
Handle_TColStd_HArray1OfReal | knots
Handle_TColStd_HArray1OfInteger | mults
Standard_Integer | degree
Standard_Integer | nbPoles
Standard_Integer | nbKnots
Standard_Boolean | isperiodic

## Constructor & Destructor Documentation

Standard_EXPORT Convert_ConicToBSplineCurve::Convert_ConicToBSplineCurve | ( | const Standard_Integer | NumberOfPoles,
|  | const Standard_Integer | NumberOfKnots,
|  | const Standard_Integer | Degree
| ) | `[protected]`

## Member Function Documentation

Standard_EXPORT void Convert_ConicToBSplineCurve::BuildCosAndSin | ( | const Convert_ParameterisationType | Parametrisation,
|  | const Standard_Real | UFirst,
|  | const Standard_Real | ULast,
|  | Handle(TColStd_HArray1OfReal)& | CosNumerator,
|  | Handle(TColStd_HArray1OfReal)& | SinNumerator,
|  | Handle(TColStd_HArray1OfReal)& | Denominator,
|  | Standard_Integer & | Degree,
|  | Handle(TColStd_HArray1OfReal)& | Knots,
|  | Handle(TColStd_HArray1OfInteger)& | Mults
| ) | const

Standard_EXPORT void Convert_ConicToBSplineCurve::BuildCosAndSin | ( | const Convert_ParameterisationType | Parametrisation,
|  | Handle(TColStd_HArray1OfReal)& | CosNumerator,
|  | Handle(TColStd_HArray1OfReal)& | SinNumerator,
|  | Handle(TColStd_HArray1OfReal)& | Denominator,
|  | Standard_Integer & | Degree,
|  | Handle(TColStd_HArray1OfReal)& | Knots,
|  | Handle(TColStd_HArray1OfInteger)& | Mults
| ) | const

Standard_EXPORT Standard_Integer Convert_ConicToBSplineCurve::Degree | ( |  | ) | const

Standard_EXPORT Standard_Boolean Convert_ConicToBSplineCurve::IsPeriodic | ( |  | ) | const

Standard_EXPORT Standard_Real Convert_ConicToBSplineCurve::Knot | ( | const Standard_Integer | Index | ) | const

Standard_EXPORT Standard_Integer Convert_ConicToBSplineCurve::Multiplicity | ( | const Standard_Integer | Index | ) | const

Standard_EXPORT Standard_Integer Convert_ConicToBSplineCurve::NbKnots | ( |  | ) | const

Standard_EXPORT Standard_Integer Convert_ConicToBSplineCurve::NbPoles | ( |  | ) | const

void Convert_ConicToBSplineCurve::operator delete | ( | void * | anAddress | ) | `[inline]`

| Reimplemented in Convert_CircleToBSplineCurve, Convert_EllipseToBSplineCurve, Convert_HyperbolaToBSplineCurve, and Convert_ParabolaToBSplineCurve.

void* Convert_ConicToBSplineCurve::operator new | ( | size_t | size | ) | `[inline]`

| Reimplemented in Convert_CircleToBSplineCurve, Convert_EllipseToBSplineCurve, Convert_HyperbolaToBSplineCurve, and Convert_ParabolaToBSplineCurve.

void* Convert_ConicToBSplineCurve::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

| Reimplemented in Convert_CircleToBSplineCurve, Convert_EllipseToBSplineCurve, Convert_HyperbolaToBSplineCurve, and Convert_ParabolaToBSplineCurve.

Standard_EXPORT gp_Pnt2d Convert_ConicToBSplineCurve::Pole | ( | const Standard_Integer | Index | ) | const

Standard_EXPORT Standard_Real Convert_ConicToBSplineCurve::Weight | ( | const Standard_Integer | Index | ) | const

## Field Documentation

Standard_Integer Convert_ConicToBSplineCurve::degree `[protected]`

Standard_Boolean Convert_ConicToBSplineCurve::isperiodic `[protected]`

Handle_TColStd_HArray1OfReal Convert_ConicToBSplineCurve::knots `[protected]`

Handle_TColStd_HArray1OfInteger Convert_ConicToBSplineCurve::mults `[protected]`

Standard_Integer Convert_ConicToBSplineCurve::nbKnots `[protected]`

Standard_Integer Convert_ConicToBSplineCurve::nbPoles `[protected]`

Handle_TColgp_HArray1OfPnt2d Convert_ConicToBSplineCurve::poles `[protected]`

Handle_TColStd_HArray1OfReal Convert_ConicToBSplineCurve::weights `[protected]`

The documentation for this class was generated from the following file:

- Convert_ConicToBSplineCurve.hxx