# IGESGeom_SplineCurve Class Reference

Defines IGESSplineCurve, Type <112> Form <0> in package IGESGeom The parametric spline is a sequence of parametric polynomial segments. The curve could be of the type Linear, Quadratic, Cubic, Wilson-Fowler, Modified Wilson-Fowler, B-Spline. The N polynomial segments are delimited by the break points T(1), T(2), T(3), ..., T(N+1). More...

`#include <IGESGeom_SplineCurve.hxx>`

Inheritance diagram for IGESGeom_SplineCurve:
[legend]

## Public Member Functions

IGESGeom_SplineCurve ()

void Init (const Standard_Integer aType, const Standard_Integer aDegree, const Standard_Integer nbDimensions, const Handle< TColStd_HArray1OfReal > &allBreakPoints, const Handle< TColStd_HArray2OfReal > &allXPolynomials, const Handle< TColStd_HArray2OfReal > &allYPolynomials, const Handle< TColStd_HArray2OfReal > &allZPolynomials, const Handle< TColStd_HArray1OfReal > &allXvalues, const Handle< TColStd_HArray1OfReal > &allYvalues, const Handle< TColStd_HArray1OfReal > &allZvalues)
This method is used to set the fields of the class SplineCurve. More...

Standard_Integer SplineType () const
returns the type of Spline curve More...

Standard_Integer Degree () const
returns the degree of the curve More...

Standard_Integer NbDimensions () const
returns the number of dimensions 2 = Planar 3 = Non-planar More...

Standard_Integer NbSegments () const
returns the number of segments More...

Standard_Real BreakPoint (const Standard_Integer Index) const
returns breakpoint of piecewise polynomial raises exception if Index <= 0 or Index > NbSegments() + 1 More...

void XCoordPolynomial (const Standard_Integer Index, Standard_Real &AX, Standard_Real &BX, Standard_Real &CX, Standard_Real &DX) const
returns X coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments() More...

void YCoordPolynomial (const Standard_Integer Index, Standard_Real &AY, Standard_Real &BY, Standard_Real &CY, Standard_Real &DY) const
returns Y coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments() More...

void ZCoordPolynomial (const Standard_Integer Index, Standard_Real &AZ, Standard_Real &BZ, Standard_Real &CZ, Standard_Real &DZ) const
returns Z coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments() More...

void XValues (Standard_Real &TPX0, Standard_Real &TPX1, Standard_Real &TPX2, Standard_Real &TPX3) const
returns the value of X polynomial, the values of 1st, 2nd and 3rd derivatives of the X polynomial at the terminate point More...

void YValues (Standard_Real &TPY0, Standard_Real &TPY1, Standard_Real &TPY2, Standard_Real &TPY3) const
returns the value of Y polynomial, the values of 1st, 2nd and 3rd derivatives of the Y polynomial at the termminate point More...

void ZValues (Standard_Real &TPZ0, Standard_Real &TPZ1, Standard_Real &TPZ2, Standard_Real &TPZ3) const
returns the value of Z polynomial, the values of 1st, 2nd and 3rd derivatives of the Z polynomial at the termminate point More...

Public Member Functions inherited from IGESData_IGESEntity
IGESData_IGESType IGESType () const
gives IGES typing info (includes "Type" and "Form" data) More...

Standard_Integer TypeNumber () const
gives IGES Type Number (often coupled with Form Number) More...

Standard_Integer FormNumber () const
Returns the form number for that type of an IGES entity. The default form number is 0. More...

Handle< IGESData_IGESEntityDirFieldEntity (const Standard_Integer fieldnum) const
Returns the Entity which has been recorded for a given Field Number, i.e. without any cast. Maps with : 3 : Structure 4 : LineFont 5 : LevelList 6 : View 7 : Transf(ormation Matrix) 8 : LabelDisplay 13 : Color. Other values give a null handle It can then be of any kind, while specific items have a Type. More...

Standard_Boolean HasStructure () const
returns True if an IGESEntity is defined with a Structure (it is normally reserved for certain classes, such as Macros) More...

Handle< IGESData_IGESEntityStructure () const
Returns Structure (used by some types of IGES Entities only) Returns a Null Handle if Structure is not defined. More...

virtual IGESData_DefType DefLineFont () const
Returns the definition status of LineFont. More...

Standard_Integer RankLineFont () const
Returns LineFont definition as an Integer (if defined as Rank) If LineFont is defined as an Entity, returns a negative value. More...

Handle< IGESData_LineFontEntityLineFont () const
Returns LineFont as an Entity (if defined as Reference) Returns a Null Handle if DefLineFont is not "DefReference". More...

virtual IGESData_DefList DefLevel () const
Returns the definition status of Level. More...

Standard_Integer Level () const
Returns the level the entity belongs to. Returns -1 if the entity belongs to more than one level. More...

Handle< IGESData_LevelListEntityLevelList () const
Returns LevelList if Level is defined as a list. Returns a null handle if DefLevel is not DefSeveral. More...

virtual IGESData_DefList DefView () const
Returns the definition status of the view. This can be: none, one or several. More...

Handle< IGESData_ViewKindEntityView () const
Returns the view of this IGES entity. This view can be a single view or a list of views. Warning A null handle is returned if the view is not defined. More...

Handle< IGESData_ViewKindEntitySingleView () const
Returns the view as a single view if it was defined as such and not as a list of views. Warning A null handle is returned if DefView does not have the value DefOne. More...

Handle< IGESData_ViewKindEntityViewList () const
Returns the view of this IGES entity as a list. Warning A null handle is returned if the definition status does not have the value DefSeveral. More...

Standard_Boolean HasTransf () const
Returns True if a Transformation Matrix is defined. More...

Handle< IGESData_TransfEntityTransf () const
Returns the Transformation Matrix (under IGES definition) Returns a Null Handle if there is none for a more complete use, see Location & CompoundLocation. More...

Standard_Boolean HasLabelDisplay () const
Returns True if a LabelDisplay mode is defined for this entity. More...

Handle< IGESData_LabelDisplayEntityLabelDisplay () const
Returns the Label Display Associativity Entity if there is one. Returns a null handle if there is none. More...

Standard_Integer BlankStatus () const
gives Blank Status (0 visible, 1 blanked) More...

Standard_Integer SubordinateStatus () const
gives Subordinate Switch (0-1-2-3) More...

Standard_Integer UseFlag () const
gives Entity's Use Flag (0 to 5) More...

Standard_Integer HierarchyStatus () const
gives Hierarchy status (0-1-2) More...

Standard_Integer LineWeightNumber () const

Standard_Real LineWeight () const
Returns the true Line Weight, computed from LineWeightNumber and Global Parameter in the Model by call to SetLineWeight. More...

virtual IGESData_DefType DefColor () const
Returns the definition status of Color. More...

Standard_Integer RankColor () const
Returns the color definition as an integer value if the color was defined as a rank. Warning A negative value is returned if the color was defined as an entity. More...

Handle< IGESData_ColorEntityColor () const
Returns the IGES entity which describes the color of the entity. Returns a null handle if this entity was defined as an integer. More...

Standard_Boolean CResValues (const Standard_CString res1, const Standard_CString res2) const
returns "reserved" alphanumeric values res1 and res2 res1 and res2 have to be reserved as Character[9 at least] (remark : their content is changed) returned values are ended by null character in 9th returned Boolean is False if res1 and res2 are blank, true else More...

Standard_Boolean HasShortLabel () const
Returns true if a short label is defined. A short label is a non-blank 8-character string. More...

Handle< TCollection_HAsciiStringShortLabel () const
Returns the label value for this IGES entity as a string. Warning If the label is blank, this string is null. More...

virtual Standard_Boolean HasSubScriptNumber () const
Returns true if a subscript number is defined. A subscript number is an integer used to identify a label. More...

Standard_Integer SubScriptNumber () const
Returns the integer subscript number used to identify this IGES entity. Warning 0 is returned if no subscript number is defined for this IGES entity. More...

void InitDirFieldEntity (const Standard_Integer fieldnum, const Handle< IGESData_IGESEntity > &ent)
Initializes a directory field as an Entiy of any kind See DirFieldEntity for more details. More...

void InitTransf (const Handle< IGESData_TransfEntity > &ent)
Initializes Transf, or erases it if <ent> is given Null. More...

void InitView (const Handle< IGESData_ViewKindEntity > &ent)
Initializes View, or erases it if <ent> is given Null. More...

void InitLineFont (const Handle< IGESData_LineFontEntity > &ent, const Standard_Integer rank=0)
Initializes LineFont : if <ent> is not Null, it gives LineFont, else <rank> gives or erases (if zero) RankLineFont. More...

void InitLevel (const Handle< IGESData_LevelListEntity > &ent, const Standard_Integer val=0)
Initializes Level : if <ent> is not Null, it gives LevelList, else <val> gives or erases (if zero) unique Level. More...

void InitColor (const Handle< IGESData_ColorEntity > &ent, const Standard_Integer rank=0)
Initializes Color data : if <ent> is not Null, it gives Color, else <rank> gives or erases (if zero) RankColor. More...

void InitStatus (const Standard_Integer blank, const Standard_Integer subordinate, const Standard_Integer useflag, const Standard_Integer hierarchy)
Initializes the Status of Directory Part. More...

void SetLabel (const Handle< TCollection_HAsciiString > &label, const Standard_Integer sub=-1)
Sets a new Label to an IGES Entity If is given, it sets value of SubScriptNumber else, SubScriptNumber is erased. More...

void InitMisc (const Handle< IGESData_IGESEntity > &str, const Handle< IGESData_LabelDisplayEntity > &lab, const Standard_Integer weightnum)
Initializes various data (those not yet seen above), or erases them if they are given as Null (Zero for <weightnum>) : <str> for Structure, <lab> for LabelDisplay, and <weightnum> for WeightNumber. More...

Standard_Boolean HasOneParent () const
Returns True if an entity has one and only one parent, defined by a SingleParentEntity Type Associativity (explicit sharing). Thus, implicit sharing remains defined at model level (see class ToolLocation) More...

Handle< IGESData_IGESEntityUniqueParent () const
Returns the Unique Parent (in the sense given by HasOneParent) Error if there is none or several. More...

gp_GTrsf Location () const
Returns Location given by Transf in Directory Part (see above) It must be considered for local definition : if the Entity is set in a "Parent", that one can add its one Location, but this is not taken in account here : see CompoundLocation for that. If no Transf is defined, returns Identity If Transf is itself compound, gives the final result. More...

gp_GTrsf VectorLocation () const
Returns Location considered for Vectors, i.e. without its Translation Part. As Location, it gives local definition. More...

gp_GTrsf CompoundLocation () const
Returns Location by taking in account a Parent which has its own Location : that one will be combined to that of <me> The Parent is considered only if HasOneParent is True, else it is ignored and CompoundLocation = Location. More...

Standard_Boolean HasName () const
says if a Name is defined, as Short Label or as Name Property (Property is looked first, else ShortLabel is considered) More...

Handle< TCollection_HAsciiStringNameValue () const
returns Name value as a String (Property Name or ShortLabel) if SubNumber is defined, it is concatenated after ShortLabel as follows label(number). Ignored with a Property Name More...

Standard_Boolean ArePresentAssociativities () const
Returns True if the Entity is defined with an Associativity list, even empty (that is, file contains its length 0) Else, the file contained NO idencation at all about this list. More...

Standard_Integer NbAssociativities () const
gives number of recorded associativities (0 no list defined) More...

Interface_EntityIterator Associativities () const
Returns the Associativity List under the form of an EntityIterator. More...

Standard_Integer NbTypedAssociativities (const Handle< Standard_Type > &atype) const
gives how many Associativities have a given type More...

Handle< IGESData_IGESEntityTypedAssociativity (const Handle< Standard_Type > &atype) const
returns the Associativity of a given Type (if only one exists) Error if none or more than one More...

void Associate (const Handle< IGESData_IGESEntity > &ent) const
Sets "me" in the Associativity list of another Entity. More...

void Dissociate (const Handle< IGESData_IGESEntity > &ent) const
Resets "me" from the Associativity list of another Entity. More...

Standard_Boolean ArePresentProperties () const
Returns True if the Entity is defined with a Property list, even empty (that is, file contains its length 0) Else, the file contained NO idencation at all about this list. More...

Standard_Integer NbProperties () const
Gives number of recorded properties (0 no list defined) More...

Interface_EntityIterator Properties () const
Returns Property List under the form of an EntityIterator. More...

Standard_Integer NbTypedProperties (const Handle< Standard_Type > &atype) const
gives how many Properties have a given type More...

Handle< IGESData_IGESEntityTypedProperty (const Handle< Standard_Type > &atype, const Standard_Integer anum=0) const
returns the Property of a given Type Error if none or more than one More...

void AddProperty (const Handle< IGESData_IGESEntity > &ent)
Adds a Property in the list. More...

void RemoveProperty (const Handle< IGESData_IGESEntity > &ent)
Removes a Property from the list. More...

void SetLineWeight (const Standard_Real defw, const Standard_Real maxw, const Standard_Integer gradw)
computes and sets "true" line weight according IGES rules from global data MaxLineWeight (maxv) and LineWeightGrad (gradw), or sets it to defw (Default) if LineWeightNumber is null More...

Public Member Functions inherited from MMgt_TShared
virtual void Delete () const override
Memory deallocator for transient classes. More...

Public Member Functions inherited from Standard_Transient
Standard_Transient ()
Empty constructor. More...

Standard_Transient (const Standard_Transient &)
Copy constructor – does nothing. More...

Standard_Transientoperator= (const Standard_Transient &)
Assignment operator, needed to avoid copying reference counter. More...

virtual ~Standard_Transient ()
Destructor must be virtual. More...

virtual const opencascade::handle< Standard_Type > & DynamicType () const

Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
Returns a true value if this is an instance of Type. More...

Standard_Boolean IsInstance (const Standard_CString theTypeName) const
Returns a true value if this is an instance of TypeName. More...

Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...

Standard_Boolean IsKind (const Standard_CString theTypeName) const
Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...

Standard_TransientThis () const
Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...

Standard_Integer GetRefCount () const
Get the reference counter of this object. More...

void IncrementRefCounter () const
Increments the reference counter of this object. More...

Standard_Integer DecrementRefCounter () const
Decrements the reference counter of this object; returns the decremented value. More...

Public Types inherited from Standard_Transient
typedef void base_type

Static Public Member Functions inherited from Standard_Transient
static const char * get_type_name ()

static const opencascade::handle< Standard_Type > & get_type_descriptor ()
Returns type descriptor of Standard_Transient class. More...

Protected Member Functions inherited from IGESData_IGESEntity
IGESData_IGESEntity ()
prepares lists of optionnal data, set values to defaults More...

void InitTypeAndForm (const Standard_Integer typenum, const Standard_Integer formnum)
Initializes Type and Form Numbers to new values. Reserved for special uses. More...

void ClearProperties ()
Removes all properties in once. More...

## Detailed Description

Defines IGESSplineCurve, Type <112> Form <0> in package IGESGeom The parametric spline is a sequence of parametric polynomial segments. The curve could be of the type Linear, Quadratic, Cubic, Wilson-Fowler, Modified Wilson-Fowler, B-Spline. The N polynomial segments are delimited by the break points T(1), T(2), T(3), ..., T(N+1).

## Constructor & Destructor Documentation

 IGESGeom_SplineCurve::IGESGeom_SplineCurve ( )

## Member Function Documentation

 Standard_Real IGESGeom_SplineCurve::BreakPoint ( const Standard_Integer Index ) const

returns breakpoint of piecewise polynomial raises exception if Index <= 0 or Index > NbSegments() + 1

 Standard_Integer IGESGeom_SplineCurve::Degree ( ) const

returns the degree of the curve

 void IGESGeom_SplineCurve::Init ( const Standard_Integer aType, const Standard_Integer aDegree, const Standard_Integer nbDimensions, const Handle< TColStd_HArray1OfReal > & allBreakPoints, const Handle< TColStd_HArray2OfReal > & allXPolynomials, const Handle< TColStd_HArray2OfReal > & allYPolynomials, const Handle< TColStd_HArray2OfReal > & allZPolynomials, const Handle< TColStd_HArray1OfReal > & allXvalues, const Handle< TColStd_HArray1OfReal > & allYvalues, const Handle< TColStd_HArray1OfReal > & allZvalues )

This method is used to set the fields of the class SplineCurve.

• aType : Spline Type 1 = Linear 2 = Quadratic 3 = Cubic 4 = Wilson-Fowler 5 = Modified Wilson-Fowler 6 = B Spline
• aDegree : Degree of continuity w.r.t. arc length
• nbDimensions : Number of dimensions 2 = Planar 3 = Non-planar
• allBreakPoints : Array of break points
• allXPolynomials : X coordinate polynomials of segments
• allYPolynomials : Y coordinate polynomials of segments
• allZPolynomials : Z coordinate polynomials of segments
• allXValues : Values of 1st, 2nd, 3rd derivatives of X polynomials at the terminate point and values of X at terminate point
• allYValues : Values of 1st, 2nd, 3rd derivatives of Y polynomials at the terminate point and values of Y at terminate point
• allZvalues : Values of 1st, 2nd, 3rd derivatives of Z polynomials at the terminate point and values of Z at terminate point raises exception if allXPolynomials, allYPolynomials & allZPolynomials are not of same size OR allXValues, allYValues & allZValues are not of size 4
 Standard_Integer IGESGeom_SplineCurve::NbDimensions ( ) const

returns the number of dimensions 2 = Planar 3 = Non-planar

 Standard_Integer IGESGeom_SplineCurve::NbSegments ( ) const

returns the number of segments

 Standard_Integer IGESGeom_SplineCurve::SplineType ( ) const

returns the type of Spline curve

 void IGESGeom_SplineCurve::XCoordPolynomial ( const Standard_Integer Index, Standard_Real & AX, Standard_Real & BX, Standard_Real & CX, Standard_Real & DX ) const

returns X coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments()

 void IGESGeom_SplineCurve::XValues ( Standard_Real & TPX0, Standard_Real & TPX1, Standard_Real & TPX2, Standard_Real & TPX3 ) const

returns the value of X polynomial, the values of 1st, 2nd and 3rd derivatives of the X polynomial at the terminate point

 void IGESGeom_SplineCurve::YCoordPolynomial ( const Standard_Integer Index, Standard_Real & AY, Standard_Real & BY, Standard_Real & CY, Standard_Real & DY ) const

returns Y coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments()

 void IGESGeom_SplineCurve::YValues ( Standard_Real & TPY0, Standard_Real & TPY1, Standard_Real & TPY2, Standard_Real & TPY3 ) const

returns the value of Y polynomial, the values of 1st, 2nd and 3rd derivatives of the Y polynomial at the termminate point

 void IGESGeom_SplineCurve::ZCoordPolynomial ( const Standard_Integer Index, Standard_Real & AZ, Standard_Real & BZ, Standard_Real & CZ, Standard_Real & DZ ) const

returns Z coordinate polynomial for segment referred to by Index raises exception if Index <= 0 or Index > NbSegments()

 void IGESGeom_SplineCurve::ZValues ( Standard_Real & TPZ0, Standard_Real & TPZ1, Standard_Real & TPZ2, Standard_Real & TPZ3 ) const

returns the value of Z polynomial, the values of 1st, 2nd and 3rd derivatives of the Z polynomial at the termminate point

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