Open CASCADE Technology 7.8.0
Public Member Functions
IGESControl_Reader Class Reference

Reads IGES files, checks them and translates their contents into Open CASCADE models. The IGES data can be that of a whole model or that of a specific list of entities in the model. As in XSControl_Reader, you specify the list using a selection. For translation of iges files it is possible to use the following sequence: To change parameters of translation class Interface_Static should be used before the beginning of translation (see IGES Parameters and General Parameters) Creation of reader IGESControl_Reader reader; To load a file in a model use method: reader.ReadFile("filename.igs") To check a loading file use method Check: reader.Check(failsonly); where failsonly is equal to Standard_True or Standard_False; To print the results of load: reader.PrintCheckLoad(failsonly,mode) where mode is equal to the value of enumeration IFSelect_PrintCount To transfer entities from a model the following methods can be used: for the whole model reader.TransferRoots(onlyvisible); where onlyvisible is equal to Standard_True or Standard_False; To transfer a list of entities: reader.TransferList(list); To transfer one entity reader.TransferEntity(ent) or reader.Transfer(num); To obtain a result the following method can be used: reader.IsDone() reader.NbShapes() and reader.Shape(num); or reader.OneShape(); To print the results of transfer use method: reader.PrintTransferInfo(failwarn,mode); where printfail is equal to the value of enumeration IFSelect_PrintFail, mode see above. Gets correspondence between an IGES entity and a result shape obtained therefrom. reader.TransientProcess(); TopoDS_Shape shape = TransferBRep::ShapeResult(reader.TransientProcess(),ent);. More...

#include <IGESControl_Reader.hxx>

Inheritance diagram for IGESControl_Reader:
Inheritance graph
[legend]

Public Member Functions

 IGESControl_Reader ()
 Creates a Reader from scratch.
 
 IGESControl_Reader (const Handle< XSControl_WorkSession > &WS, const Standard_Boolean scratch=Standard_True)
 Creates a Reader from an already existing Session.
 
void SetReadVisible (const Standard_Boolean ReadRoot)
 Set the transion of ALL Roots (if theReadOnlyVisible is False) or of Visible Roots (if theReadOnlyVisible is True)
 
Standard_Boolean GetReadVisible () const
 
Handle< IGESData_IGESModelIGESModel () const
 Returns the model as a IGESModel. It can then be consulted (header, product)
 
virtual Standard_Integer NbRootsForTransfer () override
 Determines the list of root entities from Model which are candidate for a transfer to a Shape (type of entities is PRODUCT) <theReadOnlyVisible> is taken into account to define roots.
 
void PrintTransferInfo (const IFSelect_PrintFail failwarn, const IFSelect_PrintCount mode) const
 Prints Statistics and check list for Transfer.
 
- Public Member Functions inherited from XSControl_Reader
 XSControl_Reader ()
 Creates a Reader from scratch (creates an empty WorkSession) A WorkSession or a Controller must be provided before running.
 
 XSControl_Reader (const Standard_CString norm)
 Creates a Reader from scratch, with a norm name which identifies a Controller.
 
 XSControl_Reader (const Handle< XSControl_WorkSession > &WS, const Standard_Boolean scratch=Standard_True)
 Creates a Reader from an already existing Session, with a Controller already set Virtual destructor.
 
virtual ~XSControl_Reader ()
 Empty virtual destructor.
 
Standard_Boolean SetNorm (const Standard_CString norm)
 Sets a specific norm to <me> Returns True if done, False if <norm> is not available.
 
void SetWS (const Handle< XSControl_WorkSession > &WS, const Standard_Boolean scratch=Standard_True)
 Sets a specific session to <me>
 
Handle< XSControl_WorkSessionWS () const
 Returns the session used in <me>
 
virtual IFSelect_ReturnStatus ReadFile (const Standard_CString filename)
 Loads a file and returns the read status Zero for a Model which compies with the Controller.
 
virtual IFSelect_ReturnStatus ReadStream (const Standard_CString theName, std::istream &theIStream)
 Loads a file from stream and returns the read status.
 
Handle< Interface_InterfaceModelModel () const
 Returns the model. It can then be consulted (header, product)
 
Handle< TColStd_HSequenceOfTransientGiveList (const Standard_CString first="", const Standard_CString second="")
 Returns a list of entities from the IGES or STEP file according to the following rules:
 
Handle< TColStd_HSequenceOfTransientGiveList (const Standard_CString first, const Handle< Standard_Transient > &ent)
 Computes a List of entities from the model as follows <first> being a Selection, <ent> being an entity or a list of entities (as a HSequenceOfTransient) : the standard result of this selection applied to this list if <first> is erroneous, a null handle is returned.
 
Handle< Standard_TransientRootForTransfer (const Standard_Integer num=1)
 Returns an IGES or STEP root entity for translation. The entity is identified by its rank in a list.
 
Standard_Boolean TransferOneRoot (const Standard_Integer num=1, const Message_ProgressRange &theProgress=Message_ProgressRange())
 Translates a root identified by the rank num in the model. false is returned if no shape is produced.
 
Standard_Boolean TransferOne (const Standard_Integer num, const Message_ProgressRange &theProgress=Message_ProgressRange())
 Translates an IGES or STEP entity identified by the rank num in the model. false is returned if no shape is produced.
 
Standard_Boolean TransferEntity (const Handle< Standard_Transient > &start, const Message_ProgressRange &theProgress=Message_ProgressRange())
 Translates an IGES or STEP entity in the model. true is returned if a shape is produced; otherwise, false is returned.
 
Standard_Integer TransferList (const Handle< TColStd_HSequenceOfTransient > &list, const Message_ProgressRange &theProgress=Message_ProgressRange())
 Translates a list of entities. Returns the number of IGES or STEP entities that were successfully translated. The list can be produced with GiveList. Warning - This function does not clear the existing output shapes.
 
Standard_Integer TransferRoots (const Message_ProgressRange &theProgress=Message_ProgressRange())
 Translates all translatable roots and returns the number of successful translations. Warning - This function clears existing output shapes first.
 
void ClearShapes ()
 Clears the list of shapes that may have accumulated in calls to TransferOne or TransferRoot.C.
 
Standard_Integer NbShapes () const
 Returns the number of shapes produced by translation.
 
TopoDS_Shape Shape (const Standard_Integer num=1) const
 Returns the shape resulting from a translation and identified by the rank num. num equals 1 by default. In other words, the first shape resulting from the translation is returned.
 
TopoDS_Shape OneShape () const
 Returns all of the results in a single shape which is:
 
void PrintCheckLoad (const Standard_Boolean failsonly, const IFSelect_PrintCount mode) const
 Prints the check list attached to loaded data, on the Standard Trace File (starts at std::cout) All messages or fails only, according to <failsonly> mode = 0 : per entity, prints messages mode = 1 : per message, just gives count of entities per check mode = 2 : also gives entity numbers.
 
void PrintCheckLoad (Standard_OStream &theStream, const Standard_Boolean failsonly, const IFSelect_PrintCount mode) const
 Prints the check list attached to loaded data.
 
void PrintCheckTransfer (const Standard_Boolean failsonly, const IFSelect_PrintCount mode) const
 Displays check results for the last translation of IGES or STEP entities to Open CASCADE entities. Only fail messages are displayed if failsonly is true. All messages are displayed if failsonly is false. mode determines the contents and the order of the messages according to the terms of the IFSelect_PrintCount enumeration.
 
void PrintCheckTransfer (Standard_OStream &theStream, const Standard_Boolean failsonly, const IFSelect_PrintCount mode) const
 Displays check results for the last translation of IGES or STEP entities to Open CASCADE entities.
 
void PrintStatsTransfer (const Standard_Integer what, const Standard_Integer mode=0) const
 Displays the statistics for the last translation. what defines the kind of statistics that are displayed as follows:
 
void PrintStatsTransfer (Standard_OStream &theStream, const Standard_Integer what, const Standard_Integer mode=0) const
 Displays the statistics for the last translation.
 
void GetStatsTransfer (const Handle< TColStd_HSequenceOfTransient > &list, Standard_Integer &nbMapped, Standard_Integer &nbWithResult, Standard_Integer &nbWithFail) const
 Gives statistics about Transfer.
 

Additional Inherited Members

- Protected Member Functions inherited from XSControl_Reader
TopTools_SequenceOfShapeShapes ()
 Returns a sequence of produced shapes.
 
- Protected Attributes inherited from XSControl_Reader
Standard_Boolean therootsta
 
TColStd_SequenceOfTransient theroots
 

Detailed Description

Reads IGES files, checks them and translates their contents into Open CASCADE models. The IGES data can be that of a whole model or that of a specific list of entities in the model. As in XSControl_Reader, you specify the list using a selection. For translation of iges files it is possible to use the following sequence: To change parameters of translation class Interface_Static should be used before the beginning of translation (see IGES Parameters and General Parameters) Creation of reader IGESControl_Reader reader; To load a file in a model use method: reader.ReadFile("filename.igs") To check a loading file use method Check: reader.Check(failsonly); where failsonly is equal to Standard_True or Standard_False; To print the results of load: reader.PrintCheckLoad(failsonly,mode) where mode is equal to the value of enumeration IFSelect_PrintCount To transfer entities from a model the following methods can be used: for the whole model reader.TransferRoots(onlyvisible); where onlyvisible is equal to Standard_True or Standard_False; To transfer a list of entities: reader.TransferList(list); To transfer one entity reader.TransferEntity(ent) or reader.Transfer(num); To obtain a result the following method can be used: reader.IsDone() reader.NbShapes() and reader.Shape(num); or reader.OneShape(); To print the results of transfer use method: reader.PrintTransferInfo(failwarn,mode); where printfail is equal to the value of enumeration IFSelect_PrintFail, mode see above. Gets correspondence between an IGES entity and a result shape obtained therefrom. reader.TransientProcess(); TopoDS_Shape shape = TransferBRep::ShapeResult(reader.TransientProcess(),ent);.

Constructor & Destructor Documentation

◆ IGESControl_Reader() [1/2]

IGESControl_Reader::IGESControl_Reader ( )

Creates a Reader from scratch.

◆ IGESControl_Reader() [2/2]

IGESControl_Reader::IGESControl_Reader ( const Handle< XSControl_WorkSession > &  WS,
const Standard_Boolean  scratch = Standard_True 
)

Creates a Reader from an already existing Session.

Member Function Documentation

◆ GetReadVisible()

Standard_Boolean IGESControl_Reader::GetReadVisible ( ) const

◆ IGESModel()

Handle< IGESData_IGESModel > IGESControl_Reader::IGESModel ( ) const

Returns the model as a IGESModel. It can then be consulted (header, product)

◆ NbRootsForTransfer()

virtual Standard_Integer IGESControl_Reader::NbRootsForTransfer ( )
overridevirtual

Determines the list of root entities from Model which are candidate for a transfer to a Shape (type of entities is PRODUCT) <theReadOnlyVisible> is taken into account to define roots.

Reimplemented from XSControl_Reader.

◆ PrintTransferInfo()

void IGESControl_Reader::PrintTransferInfo ( const IFSelect_PrintFail  failwarn,
const IFSelect_PrintCount  mode 
) const

Prints Statistics and check list for Transfer.

◆ SetReadVisible()

void IGESControl_Reader::SetReadVisible ( const Standard_Boolean  ReadRoot)

Set the transion of ALL Roots (if theReadOnlyVisible is False) or of Visible Roots (if theReadOnlyVisible is True)


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