Open CASCADE Technology
7.1.0.beta
|
Provides a tool to read STEP file and put it into DECAF document. Besides transfer of shapes (including assemblies) provided by STEPControl, supports also colors and part names. More...
#include <STEPCAFControl_Reader.hxx>
Public Member Functions | |
STEPCAFControl_Reader () | |
Creates a reader with an empty STEP model and sets ColorMode, LayerMode, NameMode and PropsMode to Standard_True. More... | |
STEPCAFControl_Reader (const Handle< XSControl_WorkSession > &WS, const Standard_Boolean scratch=Standard_True) | |
Creates a reader tool and attaches it to an already existing Session Clears the session if it was not yet set for STEP. More... | |
void | Init (const Handle< XSControl_WorkSession > &WS, const Standard_Boolean scratch=Standard_True) |
Clears the internal data structures and attaches to a new session Clears the session if it was not yet set for STEP. More... | |
IFSelect_ReturnStatus | ReadFile (const Standard_CString filename) |
Loads a file and returns the read status Provided for use like single-file reader. More... | |
Standard_Integer | NbRootsForTransfer () |
Returns number of roots recognized for transfer Shortcut for Reader().NbRootsForTransfer() More... | |
Standard_Boolean | TransferOneRoot (const Standard_Integer num, Handle< TDocStd_Document > &doc) |
Translates currently loaded STEP file into the document Returns True if succeeded, and False in case of fail Provided for use like single-file reader. More... | |
Standard_Boolean | Transfer (Handle< TDocStd_Document > &doc) |
Translates currently loaded STEP file into the document Returns True if succeeded, and False in case of fail Provided for use like single-file reader. More... | |
Standard_Boolean | Perform (const TCollection_AsciiString &filename, Handle< TDocStd_Document > &doc) |
Standard_Boolean | Perform (const Standard_CString filename, Handle< TDocStd_Document > &doc) |
Translate STEP file given by filename into the document Return True if succeeded, and False in case of fail. More... | |
const NCollection_DataMap< TCollection_AsciiString, Handle< STEPCAFControl_ExternFile > > & | ExternFiles () const |
Returns data on external files Returns Null handle if no external files are read. More... | |
Standard_Boolean | ExternFile (const Standard_CString name, Handle< STEPCAFControl_ExternFile > &ef) const |
Returns data on external file by its name Returns False if no external file with given name is read. More... | |
STEPControl_Reader & | ChangeReader () |
Returns basic reader. More... | |
const STEPControl_Reader & | Reader () const |
Returns basic reader as const. More... | |
void | SetColorMode (const Standard_Boolean colormode) |
Set ColorMode for indicate read Colors or not. More... | |
Standard_Boolean | GetColorMode () const |
void | SetNameMode (const Standard_Boolean namemode) |
Set NameMode for indicate read Name or not. More... | |
Standard_Boolean | GetNameMode () const |
void | SetLayerMode (const Standard_Boolean layermode) |
Set LayerMode for indicate read Layers or not. More... | |
Standard_Boolean | GetLayerMode () const |
void | SetPropsMode (const Standard_Boolean propsmode) |
PropsMode for indicate read Validation properties or not. More... | |
Standard_Boolean | GetPropsMode () const |
void | SetSHUOMode (const Standard_Boolean shuomode) |
Set SHUO mode for indicate write SHUO or not. More... | |
Standard_Boolean | GetSHUOMode () const |
void | SetGDTMode (const Standard_Boolean gdtmode) |
Set GDT mode for indicate write GDT or not. More... | |
Standard_Boolean | GetGDTMode () const |
void | SetMatMode (const Standard_Boolean matmode) |
Set Material mode. More... | |
Standard_Boolean | GetMatMode () const |
Static Public Member Functions | |
static TDF_Label | FindInstance (const Handle< StepRepr_NextAssemblyUsageOccurrence > &NAUO, const Handle< XCAFDoc_ShapeTool > &STool, const STEPConstruct_Tool &Tool, const STEPCAFControl_DataMapOfPDExternFile &PDRFileMap, const XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) |
Returns label of instance of an assembly component corresponding to a given NAUO. More... | |
Protected Member Functions | |
Standard_Boolean | Transfer (STEPControl_Reader &rd, const Standard_Integer num, Handle< TDocStd_Document > &doc, TDF_LabelSequence &Lseq, const Standard_Boolean asOne=Standard_False) |
Translates STEP file already loaded into the reader into the document If num==0, translates all roots, else only root number num Returns True if succeeded, and False in case of fail If asOne is True, in case of multiple results composes them into assembly. Fills sequence of produced labels. More... | |
TDF_Label | AddShape (const TopoDS_Shape &S, const Handle< XCAFDoc_ShapeTool > &STool, const TopTools_MapOfShape &NewShapesMap, const STEPCAFControl_DataMapOfShapePD &ShapePDMap, const STEPCAFControl_DataMapOfPDExternFile &PDFileMap, XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) const |
Add a shape to a document Depending on a case, this shape can be added as one, or as assembly, or (in case if it is associated with external reference) taken as that referred shape. More... | |
Handle< STEPCAFControl_ExternFile > | ReadExternFile (const Standard_CString file, const Standard_CString fullpath, Handle< TDocStd_Document > &doc) |
Reads (or if returns already read) extern file with given name. More... | |
Standard_Boolean | ReadColors (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc, const STEPCAFControl_DataMapOfPDExternFile &PDFileMap, const XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) const |
Reads style assignments from STEP model and sets corresponding color assignments in the DECAF document. More... | |
Standard_Boolean | ReadNames (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc, const STEPCAFControl_DataMapOfPDExternFile &PDFileMap, const XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) const |
Reads names of parts defined in the STEP model and assigns them to corresponding labels in the DECAF document. More... | |
Standard_Boolean | ReadValProps (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc, const STEPCAFControl_DataMapOfPDExternFile &PDFileMap, const XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) const |
Reads validation properties assigned to shapes in the STEP model and assigns them to corresponding labels in the DECAF document. More... | |
Standard_Boolean | ReadLayers (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc) const |
Reads layers of parts defined in the STEP model and set reference between shape and layers in the DECAF document. More... | |
Standard_Boolean | ReadSHUOs (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc, const STEPCAFControl_DataMapOfPDExternFile &PDFileMap, const XCAFDoc_DataMapOfShapeLabel &ShapeLabelMap) const |
Reads SHUO for instances defined in the STEP model and set reference between shape instances from different assemblyes. More... | |
Standard_Boolean | ReadGDTs (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc) const |
Reads D> for instances defined in the STEP model and set reference between shape instances from different assemblyes. More... | |
Standard_Boolean | ReadMaterials (const Handle< XSControl_WorkSession > &WS, Handle< TDocStd_Document > &doc, const Handle< TColStd_HSequenceOfTransient > &SeqPDS) const |
Reads materials for instances defined in the STEP model and set reference between shape instances from different assemblyes. More... | |
TDF_Label | SettleShapeData (const Handle< StepRepr_RepresentationItem > &theItem, TDF_Label &theLab, const Handle< XCAFDoc_ShapeTool > &theShapeTool, const Handle< Transfer_TransientProcess > &theTP) const |
Populates the sub-Label of the passed TDF Label with shape data associated with the given STEP Representation Item, including naming and topological information. More... | |
void | ExpandSubShapes (const Handle< XCAFDoc_ShapeTool > &theShapeTool, const XCAFDoc_DataMapOfShapeLabel &theShapeLabelMap, const STEPCAFControl_DataMapOfShapePD &theShapePDMap) const |
Given the maps of already translated shapes, this method expands their correspondent Labels in XDE Document so that to have a dedicated sub-Label for each sub-shape coming with associated name in its STEP Representation Item. More... | |
void | ExpandManifoldSolidBrep (TDF_Label &theLab, const Handle< StepRepr_RepresentationItem > &theItem, const Handle< Transfer_TransientProcess > &theTP, const Handle< XCAFDoc_ShapeTool > &theShapeTool) const |
Expands the topological structure of Manifold Solid BRep STEP entity to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped. More... | |
void | ExpandSBSM (TDF_Label &theLab, const Handle< StepRepr_RepresentationItem > &theItem, const Handle< Transfer_TransientProcess > &theTP, const Handle< XCAFDoc_ShapeTool > &theShapeTool) const |
Expands the topological structure of Shell-Based Surface Model STEP entity to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped. More... | |
void | ExpandShell (const Handle< StepShape_ConnectedFaceSet > &theShell, TDF_Label &theLab, const Handle< Transfer_TransientProcess > &theTP, const Handle< XCAFDoc_ShapeTool > &theShapeTool) const |
Expands STEP Shell structure to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped. More... | |
Provides a tool to read STEP file and put it into DECAF document. Besides transfer of shapes (including assemblies) provided by STEPControl, supports also colors and part names.
This reader supports reading files with external references i.e. multifile reading It behaves as usual Reader (from STEPControl) for the main file (e.g. if it is single file) Results of reading other files can be accessed by name of the file or by iterating on a readers
STEPCAFControl_Reader::STEPCAFControl_Reader | ( | ) |
Creates a reader with an empty STEP model and sets ColorMode, LayerMode, NameMode and PropsMode to Standard_True.
STEPCAFControl_Reader::STEPCAFControl_Reader | ( | const Handle< XSControl_WorkSession > & | WS, |
const Standard_Boolean | scratch = Standard_True |
||
) |
Creates a reader tool and attaches it to an already existing Session Clears the session if it was not yet set for STEP.
|
protected |
Add a shape to a document Depending on a case, this shape can be added as one, or as assembly, or (in case if it is associated with external reference) taken as that referred shape.
STEPControl_Reader& STEPCAFControl_Reader::ChangeReader | ( | ) |
Returns basic reader.
|
protected |
Expands the topological structure of Manifold Solid BRep STEP entity to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped.
|
protected |
Expands the topological structure of Shell-Based Surface Model STEP entity to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped.
|
protected |
Expands STEP Shell structure to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped.
|
protected |
Given the maps of already translated shapes, this method expands their correspondent Labels in XDE Document so that to have a dedicated sub-Label for each sub-shape coming with associated name in its STEP Representation Item.
Standard_Boolean STEPCAFControl_Reader::ExternFile | ( | const Standard_CString | name, |
Handle< STEPCAFControl_ExternFile > & | ef | ||
) | const |
Returns data on external file by its name Returns False if no external file with given name is read.
const NCollection_DataMap<TCollection_AsciiString, Handle< STEPCAFControl_ExternFile > >& STEPCAFControl_Reader::ExternFiles | ( | ) | const |
Returns data on external files Returns Null handle if no external files are read.
|
static |
Returns label of instance of an assembly component corresponding to a given NAUO.
Standard_Boolean STEPCAFControl_Reader::GetColorMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetGDTMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetLayerMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetMatMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetNameMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetPropsMode | ( | ) | const |
Standard_Boolean STEPCAFControl_Reader::GetSHUOMode | ( | ) | const |
void STEPCAFControl_Reader::Init | ( | const Handle< XSControl_WorkSession > & | WS, |
const Standard_Boolean | scratch = Standard_True |
||
) |
Clears the internal data structures and attaches to a new session Clears the session if it was not yet set for STEP.
Standard_Integer STEPCAFControl_Reader::NbRootsForTransfer | ( | ) |
Returns number of roots recognized for transfer Shortcut for Reader().NbRootsForTransfer()
Standard_Boolean STEPCAFControl_Reader::Perform | ( | const TCollection_AsciiString & | filename, |
Handle< TDocStd_Document > & | doc | ||
) |
Standard_Boolean STEPCAFControl_Reader::Perform | ( | const Standard_CString | filename, |
Handle< TDocStd_Document > & | doc | ||
) |
Translate STEP file given by filename into the document Return True if succeeded, and False in case of fail.
|
protected |
Reads style assignments from STEP model and sets corresponding color assignments in the DECAF document.
const STEPControl_Reader& STEPCAFControl_Reader::Reader | ( | ) | const |
Returns basic reader as const.
|
protected |
Reads (or if returns already read) extern file with given name.
IFSelect_ReturnStatus STEPCAFControl_Reader::ReadFile | ( | const Standard_CString | filename | ) |
Loads a file and returns the read status Provided for use like single-file reader.
|
protected |
Reads D> for instances defined in the STEP model and set reference between shape instances from different assemblyes.
|
protected |
Reads layers of parts defined in the STEP model and set reference between shape and layers in the DECAF document.
|
protected |
Reads materials for instances defined in the STEP model and set reference between shape instances from different assemblyes.
|
protected |
Reads names of parts defined in the STEP model and assigns them to corresponding labels in the DECAF document.
|
protected |
Reads SHUO for instances defined in the STEP model and set reference between shape instances from different assemblyes.
|
protected |
Reads validation properties assigned to shapes in the STEP model and assigns them to corresponding labels in the DECAF document.
void STEPCAFControl_Reader::SetColorMode | ( | const Standard_Boolean | colormode | ) |
Set ColorMode for indicate read Colors or not.
void STEPCAFControl_Reader::SetGDTMode | ( | const Standard_Boolean | gdtmode | ) |
Set GDT mode for indicate write GDT or not.
void STEPCAFControl_Reader::SetLayerMode | ( | const Standard_Boolean | layermode | ) |
Set LayerMode for indicate read Layers or not.
void STEPCAFControl_Reader::SetMatMode | ( | const Standard_Boolean | matmode | ) |
Set Material mode.
void STEPCAFControl_Reader::SetNameMode | ( | const Standard_Boolean | namemode | ) |
Set NameMode for indicate read Name or not.
void STEPCAFControl_Reader::SetPropsMode | ( | const Standard_Boolean | propsmode | ) |
PropsMode for indicate read Validation properties or not.
void STEPCAFControl_Reader::SetSHUOMode | ( | const Standard_Boolean | shuomode | ) |
Set SHUO mode for indicate write SHUO or not.
|
protected |
Populates the sub-Label of the passed TDF Label with shape data associated with the given STEP Representation Item, including naming and topological information.
Standard_Boolean STEPCAFControl_Reader::Transfer | ( | Handle< TDocStd_Document > & | doc | ) |
Translates currently loaded STEP file into the document Returns True if succeeded, and False in case of fail Provided for use like single-file reader.
|
protected |
Translates STEP file already loaded into the reader into the document If num==0, translates all roots, else only root number num Returns True if succeeded, and False in case of fail If asOne is True, in case of multiple results composes them into assembly. Fills sequence of produced labels.
Standard_Boolean STEPCAFControl_Reader::TransferOneRoot | ( | const Standard_Integer | num, |
Handle< TDocStd_Document > & | doc | ||
) |
Translates currently loaded STEP file into the document Returns True if succeeded, and False in case of fail Provided for use like single-file reader.