Open CASCADE Technology: STEPCAFControl_Reader Class Reference

Open CASCADE Technology 6.8.0

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Static Public Member Functions | Protected Member Functions
STEPCAFControl_Reader Class Reference

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 Handle < STEPCAFControl_DictionaryOfExternFile > & | 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&GT 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...

## Detailed Description

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

## Constructor & Destructor Documentation

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.

## Member Function Documentation

TDF_Label STEPCAFControl_Reader::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
| 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.

void STEPCAFControl_Reader::ExpandManifoldSolidBrep | ( | TDF_Label & | theLab,
|  | const Handle< StepRepr_RepresentationItem > & | theItem,
|  | const Handle< Transfer_TransientProcess > & | theTP,
|  | const Handle< XCAFDoc_ShapeTool > & | theShapeTool
| ) |  | const
| 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.

void STEPCAFControl_Reader::ExpandSBSM | ( | TDF_Label & | theLab,
|  | const Handle< StepRepr_RepresentationItem > & | theItem,
|  | const Handle< Transfer_TransientProcess > & | theTP,
|  | const Handle< XCAFDoc_ShapeTool > & | theShapeTool
| ) |  | const
| 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.

void STEPCAFControl_Reader::ExpandShell | ( | const Handle< StepShape_ConnectedFaceSet > & | theShell,
|  | TDF_Label & | theLab,
|  | const Handle< Transfer_TransientProcess > & | theTP,
|  | const Handle< XCAFDoc_ShapeTool > & | theShapeTool
| ) |  | const
| protected

Expands STEP Shell structure to OCAF sub-tree. Entities having no names associated via their Representation Items are skipped.

void STEPCAFControl_Reader::ExpandSubShapes | ( | const Handle< XCAFDoc_ShapeTool > & | theShapeTool,
|  | const XCAFDoc_DataMapOfShapeLabel & | theShapeLabelMap,
|  | const STEPCAFControl_DataMapOfShapePD & | theShapePDMap
| ) |  | const
| 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 Handle< STEPCAFControl_DictionaryOfExternFile >& STEPCAFControl_Reader::ExternFiles | ( |  | ) | const

Returns data on external files Returns Null handle if no external files are read.

static TDF_Label STEPCAFControl_Reader::FindInstance | ( | const Handle< StepRepr_NextAssemblyUsageOccurrence > & | NAUO,
|  | const Handle< XCAFDoc_ShapeTool > & | STool,
|  | const STEPConstruct_Tool & | Tool,
|  | const STEPCAFControl_DataMapOfPDExternFile & | PDRFileMap,
|  | const XCAFDoc_DataMapOfShapeLabel & | ShapeLabelMap
| ) |  |
| 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.

Standard_Boolean STEPCAFControl_Reader::ReadColors | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc,
|  | const STEPCAFControl_DataMapOfPDExternFile & | PDFileMap,
|  | const XCAFDoc_DataMapOfShapeLabel & | ShapeLabelMap
| ) |  | const
| 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.

Handle< STEPCAFControl_ExternFile > STEPCAFControl_Reader::ReadExternFile | ( | const Standard_CString | file,
|  | const Standard_CString | fullpath,
|  | Handle< TDocStd_Document > & | doc
| ) |  |
| 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.

Standard_Boolean STEPCAFControl_Reader::ReadGDTs | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc
| ) |  | const
| protected

Reads D&GT for instances defined in the STEP model and set reference between shape instances from different assemblyes.

Standard_Boolean STEPCAFControl_Reader::ReadLayers | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc
| ) |  | const
| protected

Reads layers of parts defined in the STEP model and set reference between shape and layers in the DECAF document.

Standard_Boolean STEPCAFControl_Reader::ReadMaterials | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc,
|  | const Handle< TColStd_HSequenceOfTransient > & | SeqPDS
| ) |  | const
| protected

Reads materials for instances defined in the STEP model and set reference between shape instances from different assemblyes.

Standard_Boolean STEPCAFControl_Reader::ReadNames | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc,
|  | const STEPCAFControl_DataMapOfPDExternFile & | PDFileMap,
|  | const XCAFDoc_DataMapOfShapeLabel & | ShapeLabelMap
| ) |  | const
| protected

Reads names of parts defined in the STEP model and assigns them to corresponding labels in the DECAF document.

Standard_Boolean STEPCAFControl_Reader::ReadSHUOs | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc,
|  | const STEPCAFControl_DataMapOfPDExternFile & | PDFileMap,
|  | const XCAFDoc_DataMapOfShapeLabel & | ShapeLabelMap
| ) |  | const
| protected

Reads SHUO for instances defined in the STEP model and set reference between shape instances from different assemblyes.

Standard_Boolean STEPCAFControl_Reader::ReadValProps | ( | const Handle< XSControl_WorkSession > & | WS,
|  | Handle< TDocStd_Document > & | doc,
|  | const STEPCAFControl_DataMapOfPDExternFile & | PDFileMap,
|  | const XCAFDoc_DataMapOfShapeLabel & | ShapeLabelMap
| ) |  | const
| 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.

TDF_Label STEPCAFControl_Reader::SettleShapeData | ( | const Handle< StepRepr_RepresentationItem > & | theItem,
|  | TDF_Label & | theLab,
|  | const Handle< XCAFDoc_ShapeTool > & | theShapeTool,
|  | const Handle< Transfer_TransientProcess > & | theTP
| ) |  | const
| 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.

Standard_Boolean STEPCAFControl_Reader::Transfer | ( | STEPControl_Reader & | rd,
|  | const Standard_Integer | num,
|  | Handle< TDocStd_Document > & | doc,
|  | TDF_LabelSequence & | Lseq,
|  | const Standard_Boolean | asOne = `Standard_False`
| ) |  |
| 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.

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

- STEPCAFControl_Reader.hxx