|
Open CASCADE Technology
7.0.0
|
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_CopiousData > | 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. 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_TransformationMatrix > | 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. More... | |
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.
| IGESConvGeom_GeomBuilder::IGESConvGeom_GeomBuilder | ( | ) |
Creates a GeomBuilder at initial state.
| 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.
| void IGESConvGeom_GeomBuilder::AddXY | ( | const gp_XY & | val | ) |
Adds a XY (Z=0) to the list of points.
| void IGESConvGeom_GeomBuilder::AddXYZ | ( | const gp_XYZ & | val | ) |
Adds a XYZ to the list of points.
| void IGESConvGeom_GeomBuilder::Clear | ( | ) |
Clears list of Points/Vectors and data about Transformation.
| 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)
| Standard_Boolean IGESConvGeom_GeomBuilder::IsIdentity | ( | ) | const |
Returns True if the Position is Identity.
| Standard_Boolean IGESConvGeom_GeomBuilder::IsTranslation | ( | ) | const |
Returns True if the Position is a Translation only Remark : Identity and ZOnly will answer True.
| 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.
| 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.
| 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.
| Standard_Integer IGESConvGeom_GeomBuilder::NbPoints | ( | ) | const |
Returns the count of already recorded points.
| gp_XYZ IGESConvGeom_GeomBuilder::Point | ( | const Standard_Integer | num | ) | const |
Returns a point given its rank (if added as XY, Z will be 0)
| 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.
| void IGESConvGeom_GeomBuilder::SetPosition | ( | const gp_Trsf & | pos | ) |
Sets final position from an already defined Trsf.
| void IGESConvGeom_GeomBuilder::SetPosition | ( | const gp_Ax3 & | pos | ) |
Sets final position from an Ax3.
| void IGESConvGeom_GeomBuilder::SetPosition | ( | const gp_Ax2 & | pos | ) |
Sets final position from an Ax2.
| 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)
1.8.10