OCC Main Page | DataExchange | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

DataExchange
TKIGES
IGESGeom


IGESGeom_BSplineCurve Class Reference

defines IGESBSplineCurve, Type <126> Form <0-5>
in package IGESGeom
A parametric equation obtained by dividing two summations
involving weights (which are real numbers), the control
points, and B-Spline basis functions

#include <IGESGeom_BSplineCurve.hxx>

Inheritance diagram for IGESGeom_BSplineCurve:

Inheritance graph
[legend]

Public Member Functions

Standard_EXPORT IGESGeom_BSplineCurve ()
Standard_EXPORT void Init (const Standard_Integer anIndex, const Standard_Integer aDegree, const Standard_Boolean aPlanar, const Standard_Boolean aClosed, const Standard_Boolean aPolynom, const Standard_Boolean aPeriodic, const Handle(TColStd_HArray1OfReal)&allKnots, const Handle(TColStd_HArray1OfReal)&allWeights, const Handle(TColgp_HArray1OfXYZ)&allPoles, const Standard_Real aUmin, const Standard_Real aUmax, const gp_XYZ &aNorm)
 This method is used to set the fields of the class
BSplineCurve. Beware about indexation of arrays
- anIndex : Upper index of the sum
- aDegree : Degree of basis functions
- aPlanar : 0 = nonplanar curve, 1 = planar curve
- aClosed : 0 = open curve, 1 = closed curve
- aPolynom : 0 = rational, 1 = polynomial
- aPeriodic : 0 = nonperiodic, 1 = periodic
- allKnots : Knot sequence values [-Degree,Index+1]
- allWeights : Array of weights [0,Index]
- allPoles : X, Y, Z coordinates of all control points
[0,Index]
- aUmin, aUmax : Starting and ending parameter values
- aNorm : Unit normal (if the curve is planar)
raises exception if allWeights & allPoles are not of same size.
.
Standard_EXPORT void SetFormNumber (const Standard_Integer form)
 Changes FormNumber (indicates the Shape of the Curve)
Error if not in range [0-5]
.
Standard_EXPORT Standard_Integer UpperIndex () const
 returns the upper index of the sum (see Knots,Poles)

Standard_EXPORT Standard_Integer Degree () const
 returns the degree of basis functions

Standard_EXPORT Standard_Boolean IsPlanar () const
 returns True if the curve is Planar, False if non-planar

Standard_EXPORT Standard_Boolean IsClosed () const
 returns True if the curve is closed, False if open

Standard_EXPORT Standard_Boolean IsPolynomial (const Standard_Boolean flag=Standard_False) const
 returns True if the curve is polynomial, False if rational
<flag> False (D) : computed from the list of weights
(all must be equal)
<flag> True : as recorded

Standard_EXPORT Standard_Boolean IsPeriodic () const
 returns True if the curve is periodic, False otherwise

Standard_EXPORT Standard_Integer NbKnots () const
 returns the number of knots (i.e. Degree + UpperIndex + 2)

Standard_EXPORT Standard_Real Knot (const Standard_Integer anIndex) const
 returns the knot referred to by anIndex,
inside the range [-Degree,UpperIndex+1]
raises exception if
anIndex < -Degree() or anIndex > (NbKnots() - Degree())
Note : Knots are numbered from -Degree (not from 1)

Standard_EXPORT Standard_Integer NbPoles () const
 returns number of poles (i.e. UpperIndex + 1)

Standard_EXPORT Standard_Real Weight (const Standard_Integer anIndex) const
 returns the weight referred to by anIndex, in [0,UpperIndex]
raises exception if anIndex < 0 or anIndex > UpperIndex()

Standard_EXPORT gp_Pnt Pole (const Standard_Integer anIndex) const
 returns the pole referred to by anIndex, in [0,UpperIndex]
raises exception if anIndex < 0 or anIndex > UpperIndex()

Standard_EXPORT gp_Pnt TransformedPole (const Standard_Integer anIndex) const
 returns the anIndex'th pole after applying Transf. Matrix
raises exception if an Index < 0 or an Index > UpperIndex()

Standard_EXPORT Standard_Real UMin () const
 returns starting parameter value

Standard_EXPORT Standard_Real UMax () const
 returns ending parameter value

Standard_EXPORT gp_XYZ Normal () const
 if the curve is nonplanar then (0, 0, 0) is returned

Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Private Attributes

Standard_Integer theIndex
Standard_Integer theDegree
Standard_Boolean isPlanar
Standard_Boolean isClosed
Standard_Boolean isPolynomial
Standard_Boolean isPeriodic
Handle_TColStd_HArray1OfReal theKnots
Handle_TColStd_HArray1OfReal theWeights
Handle_TColgp_HArray1OfXYZ thePoles
Standard_Real theUmin
Standard_Real theUmax
gp_XYZ theNorm

Constructor & Destructor Documentation

Standard_EXPORT IGESGeom_BSplineCurve::IGESGeom_BSplineCurve  ) 
 


Member Function Documentation

Standard_EXPORT Standard_Integer IGESGeom_BSplineCurve::Degree  )  const
 

Standard_EXPORT const IGESGeom_BSplineCurve::Handle Standard_Type   )  const
 

Reimplemented from IGESData_IGESEntity.

Standard_EXPORT void IGESGeom_BSplineCurve::Init const Standard_Integer  anIndex,
const Standard_Integer  aDegree,
const Standard_Boolean  aPlanar,
const Standard_Boolean  aClosed,
const Standard_Boolean  aPolynom,
const Standard_Boolean  aPeriodic,
const Handle(TColStd_HArray1OfReal)&  allKnots,
const Handle(TColStd_HArray1OfReal)&  allWeights,
const Handle(TColgp_HArray1OfXYZ)&  allPoles,
const Standard_Real  aUmin,
const Standard_Real  aUmax,
const gp_XYZ &  aNorm
 

Standard_EXPORT Standard_Boolean IGESGeom_BSplineCurve::IsClosed  )  const
 

Standard_EXPORT Standard_Boolean IGESGeom_BSplineCurve::IsPeriodic  )  const
 

Standard_EXPORT Standard_Boolean IGESGeom_BSplineCurve::IsPlanar  )  const
 

Standard_EXPORT Standard_Boolean IGESGeom_BSplineCurve::IsPolynomial const Standard_Boolean  flag = Standard_False  )  const
 

Standard_EXPORT Standard_Real IGESGeom_BSplineCurve::Knot const Standard_Integer  anIndex  )  const
 

Standard_EXPORT Standard_Integer IGESGeom_BSplineCurve::NbKnots  )  const
 

Standard_EXPORT Standard_Integer IGESGeom_BSplineCurve::NbPoles  )  const
 

Standard_EXPORT gp_XYZ IGESGeom_BSplineCurve::Normal  )  const
 

Standard_EXPORT gp_Pnt IGESGeom_BSplineCurve::Pole const Standard_Integer  anIndex  )  const
 

Standard_EXPORT void IGESGeom_BSplineCurve::SetFormNumber const Standard_Integer  form  ) 
 

Standard_EXPORT gp_Pnt IGESGeom_BSplineCurve::TransformedPole const Standard_Integer  anIndex  )  const
 

Standard_EXPORT Standard_Real IGESGeom_BSplineCurve::UMax  )  const
 

Standard_EXPORT Standard_Real IGESGeom_BSplineCurve::UMin  )  const
 

Standard_EXPORT Standard_Integer IGESGeom_BSplineCurve::UpperIndex  )  const
 

Standard_EXPORT Standard_Real IGESGeom_BSplineCurve::Weight const Standard_Integer  anIndex  )  const
 


Field Documentation

Standard_Boolean IGESGeom_BSplineCurve::isClosed [private]
 

Standard_Boolean IGESGeom_BSplineCurve::isPeriodic [private]
 

Standard_Boolean IGESGeom_BSplineCurve::isPlanar [private]
 

Standard_Boolean IGESGeom_BSplineCurve::isPolynomial [private]
 

Standard_Integer IGESGeom_BSplineCurve::theDegree [private]
 

Standard_Integer IGESGeom_BSplineCurve::theIndex [private]
 

Handle_TColStd_HArray1OfReal IGESGeom_BSplineCurve::theKnots [private]
 

gp_XYZ IGESGeom_BSplineCurve::theNorm [private]
 

Handle_TColgp_HArray1OfXYZ IGESGeom_BSplineCurve::thePoles [private]
 

Standard_Real IGESGeom_BSplineCurve::theUmax [private]
 

Standard_Real IGESGeom_BSplineCurve::theUmin [private]
 

Handle_TColStd_HArray1OfReal IGESGeom_BSplineCurve::theWeights [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 14:40:48 2008 for OpenCASCADE by  doxygen 1.4.1