Open CASCADE Technology 7.8.0
Public Member Functions
IGESGeom_BSplineSurface Class Reference

defines IGESBSplineSurface, Type <128> Form <0-9> 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 More...

#include <IGESGeom_BSplineSurface.hxx>

Inheritance diagram for IGESGeom_BSplineSurface:
Inheritance graph
[legend]

Public Member Functions

 IGESGeom_BSplineSurface ()
 
void Init (const Standard_Integer anIndexU, const Standard_Integer anIndexV, const Standard_Integer aDegU, const Standard_Integer aDegV, const Standard_Boolean aCloseU, const Standard_Boolean aCloseV, const Standard_Boolean aPolynom, const Standard_Boolean aPeriodU, const Standard_Boolean aPeriodV, const Handle< TColStd_HArray1OfReal > &allKnotsU, const Handle< TColStd_HArray1OfReal > &allKnotsV, const Handle< TColStd_HArray2OfReal > &allWeights, const Handle< TColgp_HArray2OfXYZ > &allPoles, const Standard_Real aUmin, const Standard_Real aUmax, const Standard_Real aVmin, const Standard_Real aVmax)
 This method is used to set the fields of the class BSplineSurface.
 
void SetFormNumber (const Standard_Integer form)
 Changes FormNumber (indicates the Shape of the Surface) Error if not in range [0-9].
 
Standard_Integer UpperIndexU () const
 returns the upper index of the first sum (U)
 
Standard_Integer UpperIndexV () const
 returns the upper index of the second sum (V)
 
Standard_Integer DegreeU () const
 returns degree of first set of basis functions
 
Standard_Integer DegreeV () const
 returns degree of second set of basis functions
 
Standard_Boolean IsClosedU () const
 True if closed in U direction else False.
 
Standard_Boolean IsClosedV () const
 True if closed in V direction else False.
 
Standard_Boolean IsPolynomial (const Standard_Boolean flag=Standard_False) const
 True if polynomial, False if rational <flag> False (D) : computed from Weights <flag> True : recorded.
 
Standard_Boolean IsPeriodicU () const
 True if periodic in U direction else False.
 
Standard_Boolean IsPeriodicV () const
 True if periodic in V direction else False.
 
Standard_Integer NbKnotsU () const
 returns number of knots in U direction KnotsU are numbered from -DegreeU
 
Standard_Integer NbKnotsV () const
 returns number of knots in V direction KnotsV are numbered from -DegreeV
 
Standard_Real KnotU (const Standard_Integer anIndex) const
 returns the value of knot referred to by anIndex in U direction raises exception if anIndex < -DegreeU() or anIndex > (NbKnotsU() - DegreeU())
 
Standard_Real KnotV (const Standard_Integer anIndex) const
 returns the value of knot referred to by anIndex in V direction raises exception if anIndex < -DegreeV() or anIndex > (NbKnotsV() - DegreeV())
 
Standard_Integer NbPolesU () const
 returns number of poles in U direction
 
Standard_Integer NbPolesV () const
 returns number of poles in V direction
 
Standard_Real Weight (const Standard_Integer anIndex1, const Standard_Integer anIndex2) const
 returns the weight referred to by anIndex1, anIndex2 raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()
 
gp_Pnt Pole (const Standard_Integer anIndex1, const Standard_Integer anIndex2) const
 returns the control point referenced by anIndex1, anIndex2 raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()
 
gp_Pnt TransformedPole (const Standard_Integer anIndex1, const Standard_Integer anIndex2) const
 returns the control point referenced by anIndex1, anIndex2 after applying the Transf.Matrix raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()
 
Standard_Real UMin () const
 returns starting value in the U direction
 
Standard_Real UMax () const
 returns ending value in the U direction
 
Standard_Real VMin () const
 returns starting value in the V direction
 
Standard_Real VMax () const
 returns ending value in the V direction
 
- Public Member Functions inherited from IGESData_IGESEntity
IGESData_IGESType IGESType () const
 gives IGES typing info (includes "Type" and "Form" data)
 
Standard_Integer TypeNumber () const
 gives IGES Type Number (often coupled with Form Number)
 
Standard_Integer FormNumber () const
 Returns the form number for that type of an IGES entity. The default form number is 0.
 
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.
 
Standard_Boolean HasStructure () const
 returns True if an IGESEntity is defined with a Structure (it is normally reserved for certain classes, such as Macros)
 
Handle< IGESData_IGESEntityStructure () const
 Returns Structure (used by some types of IGES Entities only) Returns a Null Handle if Structure is not defined.
 
virtual IGESData_DefType DefLineFont () const
 Returns the definition status of LineFont.
 
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.
 
Handle< IGESData_LineFontEntityLineFont () const
 Returns LineFont as an Entity (if defined as Reference) Returns a Null Handle if DefLineFont is not "DefReference".
 
virtual IGESData_DefList DefLevel () const
 Returns the definition status of Level.
 
Standard_Integer Level () const
 Returns the level the entity belongs to. Returns -1 if the entity belongs to more than one level.
 
Handle< IGESData_LevelListEntityLevelList () const
 Returns LevelList if Level is defined as a list. Returns a null handle if DefLevel is not DefSeveral.
 
virtual IGESData_DefList DefView () const
 Returns the definition status of the view. This can be: none, one or several.
 
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.
 
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.
 
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.
 
Standard_Boolean HasTransf () const
 Returns True if a Transformation Matrix is defined.
 
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.
 
Standard_Boolean HasLabelDisplay () const
 Returns True if a LabelDisplay mode is defined for this entity.
 
Handle< IGESData_LabelDisplayEntityLabelDisplay () const
 Returns the Label Display Associativity Entity if there is one. Returns a null handle if there is none.
 
Standard_Integer BlankStatus () const
 gives Blank Status (0 visible, 1 blanked)
 
Standard_Integer SubordinateStatus () const
 gives Subordinate Switch (0-1-2-3)
 
Standard_Integer UseFlag () const
 gives Entity's Use Flag (0 to 5)
 
Standard_Integer HierarchyStatus () const
 gives Hierarchy status (0-1-2)
 
Standard_Integer LineWeightNumber () const
 Returns the LineWeight Number (0 not defined), see also LineWeight.
 
Standard_Real LineWeight () const
 Returns the true Line Weight, computed from LineWeightNumber and Global Parameter in the Model by call to SetLineWeight.
 
virtual IGESData_DefType DefColor () const
 Returns the definition status of Color.
 
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.
 
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.
 
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
 
Standard_Boolean HasShortLabel () const
 Returns true if a short label is defined. A short label is a non-blank 8-character string.
 
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.
 
virtual Standard_Boolean HasSubScriptNumber () const
 Returns true if a subscript number is defined. A subscript number is an integer used to identify a label.
 
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.
 
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.
 
void InitTransf (const Handle< IGESData_TransfEntity > &ent)
 Initializes Transf, or erases it if <ent> is given Null.
 
void InitView (const Handle< IGESData_ViewKindEntity > &ent)
 Initializes View, or erases it if <ent> is given Null.
 
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.
 
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.
 
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.
 
void InitStatus (const Standard_Integer blank, const Standard_Integer subordinate, const Standard_Integer useflag, const Standard_Integer hierarchy)
 Initializes the Status of Directory Part.
 
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.
 
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.
 
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)
 
Handle< IGESData_IGESEntityUniqueParent () const
 Returns the Unique Parent (in the sense given by HasOneParent) Error if there is none or several.
 
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.
 
gp_GTrsf VectorLocation () const
 Returns Location considered for Vectors, i.e. without its Translation Part. As Location, it gives local definition.
 
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.
 
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)
 
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
 
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.
 
Standard_Integer NbAssociativities () const
 gives number of recorded associativities (0 no list defined)
 
Interface_EntityIterator Associativities () const
 Returns the Associativity List under the form of an EntityIterator.
 
Standard_Integer NbTypedAssociativities (const Handle< Standard_Type > &atype) const
 gives how many Associativities have a given type
 
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
 
void Associate (const Handle< IGESData_IGESEntity > &ent) const
 Sets "me" in the Associativity list of another Entity.
 
void Dissociate (const Handle< IGESData_IGESEntity > &ent) const
 Resets "me" from the Associativity list of another Entity.
 
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.
 
Standard_Integer NbProperties () const
 Gives number of recorded properties (0 no list defined)
 
Interface_EntityIterator Properties () const
 Returns Property List under the form of an EntityIterator.
 
Standard_Integer NbTypedProperties (const Handle< Standard_Type > &atype) const
 gives how many Properties have a given type
 
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
 
void AddProperty (const Handle< IGESData_IGESEntity > &ent)
 Adds a Property in the list.
 
void RemoveProperty (const Handle< IGESData_IGESEntity > &ent)
 Removes a Property from the list.
 
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
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
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.
 
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.
 
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.
 
Standard_Integer GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object.
 
Standard_Integer DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 
- Protected Member Functions inherited from IGESData_IGESEntity
 IGESData_IGESEntity ()
 prepares lists of optional data, set values to defaults
 
void InitTypeAndForm (const Standard_Integer typenum, const Standard_Integer formnum)
 Initializes Type and Form Numbers to new values. Reserved for special uses.
 
void LoadAssociativities (const Interface_EntityList &list)
 Loads a complete, already loaded, List of Asociativities (used during Read or Copy Operations)
 
void LoadProperties (const Interface_EntityList &list)
 Loads a complete, already loaded, List of Properties (used during Read or Copy Operations)
 
void ClearProperties ()
 Removes all properties in once.
 

Detailed Description

defines IGESBSplineSurface, Type <128> Form <0-9> 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

Constructor & Destructor Documentation

◆ IGESGeom_BSplineSurface()

IGESGeom_BSplineSurface::IGESGeom_BSplineSurface ( )

Member Function Documentation

◆ DegreeU()

Standard_Integer IGESGeom_BSplineSurface::DegreeU ( ) const

returns degree of first set of basis functions

◆ DegreeV()

Standard_Integer IGESGeom_BSplineSurface::DegreeV ( ) const

returns degree of second set of basis functions

◆ Init()

void IGESGeom_BSplineSurface::Init ( const Standard_Integer  anIndexU,
const Standard_Integer  anIndexV,
const Standard_Integer  aDegU,
const Standard_Integer  aDegV,
const Standard_Boolean  aCloseU,
const Standard_Boolean  aCloseV,
const Standard_Boolean  aPolynom,
const Standard_Boolean  aPeriodU,
const Standard_Boolean  aPeriodV,
const Handle< TColStd_HArray1OfReal > &  allKnotsU,
const Handle< TColStd_HArray1OfReal > &  allKnotsV,
const Handle< TColStd_HArray2OfReal > &  allWeights,
const Handle< TColgp_HArray2OfXYZ > &  allPoles,
const Standard_Real  aUmin,
const Standard_Real  aUmax,
const Standard_Real  aVmin,
const Standard_Real  aVmax 
)

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

  • anIndexU : Upper index of first sum
  • anIndexV : Upper index of second sum
  • aDegU, aDegV : Degrees of first and second sets of basis functions
  • aCloseU, aCloseV : 1 = Closed in U, V directions 0 = open in U, V directions
  • aPolynom : 0 = Rational, 1 = polynomial
  • aPeriodU, aPeriodV : 0 = Non periodic in U or V direction 1 = Periodic in U or V direction
  • allKnotsU, allKnotsV : Knots in U and V directions
  • allWeights : Array of weights
  • allPoles : XYZ coordinates of all control points
  • aUmin : Starting value of U direction
  • aUmax : Ending value of U direction
  • aVmin : Starting value of V direction
  • aVmax : Ending value of V direction raises exception if allWeights & allPoles are not of same size.

◆ IsClosedU()

Standard_Boolean IGESGeom_BSplineSurface::IsClosedU ( ) const

True if closed in U direction else False.

◆ IsClosedV()

Standard_Boolean IGESGeom_BSplineSurface::IsClosedV ( ) const

True if closed in V direction else False.

◆ IsPeriodicU()

Standard_Boolean IGESGeom_BSplineSurface::IsPeriodicU ( ) const

True if periodic in U direction else False.

◆ IsPeriodicV()

Standard_Boolean IGESGeom_BSplineSurface::IsPeriodicV ( ) const

True if periodic in V direction else False.

◆ IsPolynomial()

Standard_Boolean IGESGeom_BSplineSurface::IsPolynomial ( const Standard_Boolean  flag = Standard_False) const

True if polynomial, False if rational <flag> False (D) : computed from Weights <flag> True : recorded.

◆ KnotU()

Standard_Real IGESGeom_BSplineSurface::KnotU ( const Standard_Integer  anIndex) const

returns the value of knot referred to by anIndex in U direction raises exception if anIndex < -DegreeU() or anIndex > (NbKnotsU() - DegreeU())

◆ KnotV()

Standard_Real IGESGeom_BSplineSurface::KnotV ( const Standard_Integer  anIndex) const

returns the value of knot referred to by anIndex in V direction raises exception if anIndex < -DegreeV() or anIndex > (NbKnotsV() - DegreeV())

◆ NbKnotsU()

Standard_Integer IGESGeom_BSplineSurface::NbKnotsU ( ) const

returns number of knots in U direction KnotsU are numbered from -DegreeU

◆ NbKnotsV()

Standard_Integer IGESGeom_BSplineSurface::NbKnotsV ( ) const

returns number of knots in V direction KnotsV are numbered from -DegreeV

◆ NbPolesU()

Standard_Integer IGESGeom_BSplineSurface::NbPolesU ( ) const

returns number of poles in U direction

◆ NbPolesV()

Standard_Integer IGESGeom_BSplineSurface::NbPolesV ( ) const

returns number of poles in V direction

◆ Pole()

gp_Pnt IGESGeom_BSplineSurface::Pole ( const Standard_Integer  anIndex1,
const Standard_Integer  anIndex2 
) const

returns the control point referenced by anIndex1, anIndex2 raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()

◆ SetFormNumber()

void IGESGeom_BSplineSurface::SetFormNumber ( const Standard_Integer  form)

Changes FormNumber (indicates the Shape of the Surface) Error if not in range [0-9].

◆ TransformedPole()

gp_Pnt IGESGeom_BSplineSurface::TransformedPole ( const Standard_Integer  anIndex1,
const Standard_Integer  anIndex2 
) const

returns the control point referenced by anIndex1, anIndex2 after applying the Transf.Matrix raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()

◆ UMax()

Standard_Real IGESGeom_BSplineSurface::UMax ( ) const

returns ending value in the U direction

◆ UMin()

Standard_Real IGESGeom_BSplineSurface::UMin ( ) const

returns starting value in the U direction

◆ UpperIndexU()

Standard_Integer IGESGeom_BSplineSurface::UpperIndexU ( ) const

returns the upper index of the first sum (U)

◆ UpperIndexV()

Standard_Integer IGESGeom_BSplineSurface::UpperIndexV ( ) const

returns the upper index of the second sum (V)

◆ VMax()

Standard_Real IGESGeom_BSplineSurface::VMax ( ) const

returns ending value in the V direction

◆ VMin()

Standard_Real IGESGeom_BSplineSurface::VMin ( ) const

returns starting value in the V direction

◆ Weight()

Standard_Real IGESGeom_BSplineSurface::Weight ( const Standard_Integer  anIndex1,
const Standard_Integer  anIndex2 
) const

returns the weight referred to by anIndex1, anIndex2 raises exception if anIndex1 <= 0 or anIndex1 > NbPolesU() or if anIndex2 <= 0 or anIndex2 > NbPolesV()


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