Open CASCADE Technology
6.5.4
|
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
#include <IGESConvGeom_GeomBuilder.hxx>
Public Member Functions | |
DEFINE_STANDARD_ALLOC | IGESConvGeom_GeomBuilder () |
Creates a GeomBuilder at initial state. | |
void | Clear () |
Clears list of Points/Vectors and data about Transformation | |
void | AddXY (const gp_XY &val) |
Adds a XY (Z=0) to the list of points | |
void | AddXYZ (const gp_XYZ &val) |
Adds a XYZ to the list of points | |
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 | |
Standard_Integer | NbPoints () const |
Returns the count of already recorded points | |
gp_XYZ | Point (const Standard_Integer num) const |
Returns a point given its rank (if added as XY, Z will be 0) | |
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 | |
Handle_TColgp_HArray1OfXY | MakeXY () const |
Returns the list of points as a HArray1OfXY. Z are ignored. | |
Handle_TColgp_HArray1OfXYZ | MakeXYZ () const |
Returns the list of points as a HArray1OfXYZ | |
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 | |
void | SetPosition (const gp_Trsf &pos) |
Sets final position from an already defined Trsf | |
void | SetPosition (const gp_Ax3 &pos) |
Sets final position from an Ax3 | |
void | SetPosition (const gp_Ax2 &pos) |
Sets final position from an Ax2 | |
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) | |
Standard_Boolean | IsIdentity () const |
Returns True if the Position is Identity | |
Standard_Boolean | IsTranslation () const |
Returns True if the Position is a Translation only Remark : Identity and ZOnly will answer True | |
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 | |
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) | |
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 |
void IGESConvGeom_GeomBuilder::AddVec | ( | const gp_XYZ & | val | ) |
void IGESConvGeom_GeomBuilder::AddXY | ( | const gp_XY & | val | ) |
void IGESConvGeom_GeomBuilder::AddXYZ | ( | const gp_XYZ & | val | ) |
void IGESConvGeom_GeomBuilder::EvalXYZ | ( | const gp_XYZ & | val, |
Standard_Real & | X, | ||
Standard_Real & | Y, | ||
Standard_Real & | Z | ||
) | const |
Handle_IGESGeom_CopiousData IGESConvGeom_GeomBuilder::MakeCopiousData | ( | const Standard_Integer | datatype, |
const Standard_Boolean | polyline = Standard_False |
||
) | const |
Handle_IGESGeom_TransformationMatrix IGESConvGeom_GeomBuilder::MakeTransformation | ( | const Standard_Real | unit = 1 | ) | const |
Handle_TColgp_HArray1OfXY IGESConvGeom_GeomBuilder::MakeXY | ( | ) | const |
Handle_TColgp_HArray1OfXYZ IGESConvGeom_GeomBuilder::MakeXYZ | ( | ) | const |
gp_XYZ IGESConvGeom_GeomBuilder::Point | ( | const Standard_Integer | num | ) | const |
gp_Trsf IGESConvGeom_GeomBuilder::Position | ( | ) | const |