Open CASCADE Technology  7.3.0
Public Member Functions
IGESConvGeom_GeomBuilder Class Reference

This class provides some useful basic tools to build IGESGeom curves, especially : define a curve in a plane in 3D space (ex. Circular or Conic arc, or Copious Data defined in 2D) make a CopiousData from a list of points/vectors. More...

#include <IGESConvGeom_GeomBuilder.hxx>

Public Member Functions

 IGESConvGeom_GeomBuilder ()
 Creates a GeomBuilder at initial state. More...
 
void Clear ()
 Clears list of Points/Vectors and data about Transformation. More...
 
void AddXY (const gp_XY &val)
 Adds a XY (Z=0) to the list of points. More...
 
void AddXYZ (const gp_XYZ &val)
 Adds a XYZ to the list of points. More...
 
void AddVec (const gp_XYZ &val)
 Adds a Vector part to the list of points. It will be used for CopiousData, datatype=3, only. AddXY and AddXYZ consider a null vector part (0,0,0) AddVec adds to the last added XY or XYZ. More...
 
Standard_Integer NbPoints () const
 Returns the count of already recorded points. More...
 
gp_XYZ Point (const Standard_Integer num) const
 Returns a point given its rank (if added as XY, Z will be 0) More...
 
Handle< IGESGeom_CopiousDataMakeCopiousData (const Standard_Integer datatype, const Standard_Boolean polyline=Standard_False) const
 Makes a CopiousData with the list of recorded Points/Vectors according to <datatype>, which must be 1,2 or 3 If <polyline> is given True, the CopiousData is coded as a Polyline, but <datatype> must not be 3 <datatype> = 1 : Common Z is computed as average of all Z <datatype> = 1 or 2 : Vectors are ignored. More...
 
gp_Trsf Position () const
 Returns the Position in which the method EvalXYZ will evaluate a XYZ. It can be regarded as defining a local system. It is initially set to Identity. More...
 
void SetPosition (const gp_Trsf &pos)
 Sets final position from an already defined Trsf. More...
 
void SetPosition (const gp_Ax3 &pos)
 Sets final position from an Ax3. More...
 
void SetPosition (const gp_Ax2 &pos)
 Sets final position from an Ax2. More...
 
void SetPosition (const gp_Ax1 &pos)
 Sets final position from an Ax1 (this means that origin point and Z-axis are defined, the other axes are defined arbitrarily) More...
 
Standard_Boolean IsIdentity () const
 Returns True if the Position is Identity. More...
 
Standard_Boolean IsTranslation () const
 Returns True if the Position is a Translation only Remark : Identity and ZOnly will answer True. More...
 
Standard_Boolean IsZOnly () const
 Returns True if the Position corresponds to a Z-Displacement, i.e. is a Translation only, and only on Z Remark : Identity will answer True. More...
 
void EvalXYZ (const gp_XYZ &val, Standard_Real &X, Standard_Real &Y, Standard_Real &Z) const
 Evaluates a XYZ value in the Position already defined. Returns the transformed coordinates. For a 2D definition, X,Y will then be used to define a XY and Z will be regarded as a Z Displacement (can be ignored) More...
 
Handle< IGESGeom_TransformationMatrixMakeTransformation (const Standard_Real unit=1) const
 Returns the IGES Transformation which corresponds to the Position. Even if it is an Identity : IsIdentity should be tested first. <unit> is the unit value in which the model is created : it is used to convert translation part. More...
 

Detailed Description

This class provides some useful basic tools to build IGESGeom curves, especially : define a curve in a plane in 3D space (ex. Circular or Conic arc, or Copious Data defined in 2D) make a CopiousData from a list of points/vectors.

Constructor & Destructor Documentation

◆ IGESConvGeom_GeomBuilder()

IGESConvGeom_GeomBuilder::IGESConvGeom_GeomBuilder ( )

Creates a GeomBuilder at initial state.

Member Function Documentation

◆ AddVec()

void IGESConvGeom_GeomBuilder::AddVec ( const gp_XYZ val)

Adds a Vector part to the list of points. It will be used for CopiousData, datatype=3, only. AddXY and AddXYZ consider a null vector part (0,0,0) AddVec adds to the last added XY or XYZ.

◆ AddXY()

void IGESConvGeom_GeomBuilder::AddXY ( const gp_XY val)

Adds a XY (Z=0) to the list of points.

◆ AddXYZ()

void IGESConvGeom_GeomBuilder::AddXYZ ( const gp_XYZ val)

Adds a XYZ to the list of points.

◆ Clear()

void IGESConvGeom_GeomBuilder::Clear ( )

Clears list of Points/Vectors and data about Transformation.

◆ EvalXYZ()

void IGESConvGeom_GeomBuilder::EvalXYZ ( const gp_XYZ val,
Standard_Real X,
Standard_Real Y,
Standard_Real Z 
) const

Evaluates a XYZ value in the Position already defined. Returns the transformed coordinates. For a 2D definition, X,Y will then be used to define a XY and Z will be regarded as a Z Displacement (can be ignored)

◆ IsIdentity()

Standard_Boolean IGESConvGeom_GeomBuilder::IsIdentity ( ) const

Returns True if the Position is Identity.

◆ IsTranslation()

Standard_Boolean IGESConvGeom_GeomBuilder::IsTranslation ( ) const

Returns True if the Position is a Translation only Remark : Identity and ZOnly will answer True.

◆ IsZOnly()

Standard_Boolean IGESConvGeom_GeomBuilder::IsZOnly ( ) const

Returns True if the Position corresponds to a Z-Displacement, i.e. is a Translation only, and only on Z Remark : Identity will answer True.

◆ MakeCopiousData()

Handle< IGESGeom_CopiousData > IGESConvGeom_GeomBuilder::MakeCopiousData ( const Standard_Integer  datatype,
const Standard_Boolean  polyline = Standard_False 
) const

Makes a CopiousData with the list of recorded Points/Vectors according to <datatype>, which must be 1,2 or 3 If <polyline> is given True, the CopiousData is coded as a Polyline, but <datatype> must not be 3 <datatype> = 1 : Common Z is computed as average of all Z <datatype> = 1 or 2 : Vectors are ignored.

◆ MakeTransformation()

Handle< IGESGeom_TransformationMatrix > IGESConvGeom_GeomBuilder::MakeTransformation ( const Standard_Real  unit = 1) const

Returns the IGES Transformation which corresponds to the Position. Even if it is an Identity : IsIdentity should be tested first. <unit> is the unit value in which the model is created : it is used to convert translation part.

◆ NbPoints()

Standard_Integer IGESConvGeom_GeomBuilder::NbPoints ( ) const

Returns the count of already recorded points.

◆ Point()

gp_XYZ IGESConvGeom_GeomBuilder::Point ( const Standard_Integer  num) const

Returns a point given its rank (if added as XY, Z will be 0)

◆ Position()

gp_Trsf IGESConvGeom_GeomBuilder::Position ( ) const

Returns the Position in which the method EvalXYZ will evaluate a XYZ. It can be regarded as defining a local system. It is initially set to Identity.

◆ SetPosition() [1/4]

void IGESConvGeom_GeomBuilder::SetPosition ( const gp_Trsf pos)

Sets final position from an already defined Trsf.

◆ SetPosition() [2/4]

void IGESConvGeom_GeomBuilder::SetPosition ( const gp_Ax3 pos)

Sets final position from an Ax3.

◆ SetPosition() [3/4]

void IGESConvGeom_GeomBuilder::SetPosition ( const gp_Ax2 pos)

Sets final position from an Ax2.

◆ SetPosition() [4/4]

void IGESConvGeom_GeomBuilder::SetPosition ( const gp_Ax1 pos)

Sets final position from an Ax1 (this means that origin point and Z-axis are defined, the other axes are defined arbitrarily)


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