Logo ROOT   6.16/01
Reference Guide
List of all members | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
TOCCToStep Class Reference

This class contains implementation of writing OpenCascade's geometry shapes to the STEP file reproducing the original ROOT geometry tree.

The TRootStep Class takes a gGeoManager pointer and gives back a STEP file. The OCCShapeCreation(TGeoManager *m) method starting from the top of the ROOT geometry tree translates each ROOT shape in the OCC one. A fLabel is created for each OCC shape and the correspondance between the the fLabel and the shape is saved in a map. The OCCTreeCreation(TGeoManager *m) method starting from the top of the ROOT geometry and using the fLabel-shape map reproduce the ROOT tree that will be written to the STEP file using the OCCWriteStep(const char * fname ) method.

Definition at line 27 of file TOCCToStep.h.

Public Member Functions

 TOCCToStep ()
 
bool OCCPartialTreeCreation (TGeoManager *m, const char *node_name, int max_level=-1)
 
bool OCCPartialTreeCreation (TGeoManager *m, std::map< std::string, int > part_name_levels)
 
TDF_Label OCCShapeCreation (TGeoManager *m)
 Logical fTree creation. More...
 
void OCCTreeCreation (TGeoManager *m, int max_level=-1)
 
void OCCWriteStep (const char *fname)
 
void PrintAssembly ()
 

Private Types

typedef std::map< TGeoVolume *, TDF_Label > LabelMap_t
 

Private Member Functions

void AddChildLabel (TDF_Label mother, TDF_Label child, TopLoc_Location loc)
 
TopoDS_Shape AssemblyShape (TGeoVolume *vol, TGeoHMatrix m)
 
TopLoc_Location CalcLocation (TGeoHMatrix matrix)
 
void FillOCCWithNode (TGeoManager *m, TGeoNode *currentNode, TGeoIterator &nextNode, int level, int max_level, int level1_skipped)
 
TDF_Label GetLabelOfVolume (TGeoVolume *v)
 
TGeoVolumeGetVolumeOfLabel (TDF_Label fLabel)
 
 Handle (TDocStd_Document) fDoc
 
void OCCDocCreation ()
 

Private Attributes

TDF_Label fLabel
 
TGeoToOCC fRootShape
 
TopoDS_Shape fShape
 
LabelMap_t fTree
 
STEPCAFControl_Writer fWriter
 

#include </home/sftnight/build/workspace/root-makedoc-v616/rootspi/rdoc/src/v6-16-00-patches/geom/geocad/src/TOCCToStep.h>

Member Typedef Documentation

◆ LabelMap_t

typedef std::map<TGeoVolume *, TDF_Label> TOCCToStep::LabelMap_t
private

Definition at line 30 of file TOCCToStep.h.

Constructor & Destructor Documentation

◆ TOCCToStep()

TOCCToStep::TOCCToStep ( )

Definition at line 51 of file TOCCToStep.cxx.

Member Function Documentation

◆ AddChildLabel()

void TOCCToStep::AddChildLabel ( TDF_Label  mother,
TDF_Label  child,
TopLoc_Location  loc 
)
private

Definition at line 179 of file TOCCToStep.cxx.

◆ AssemblyShape()

TopoDS_Shape TOCCToStep::AssemblyShape ( TGeoVolume vol,
TGeoHMatrix  m 
)
private

◆ CalcLocation()

TopLoc_Location TOCCToStep::CalcLocation ( TGeoHMatrix  matrix)
private

Definition at line 187 of file TOCCToStep.cxx.

◆ FillOCCWithNode()

void TOCCToStep::FillOCCWithNode ( TGeoManager m,
TGeoNode currentNode,
TGeoIterator nextNode,
int  level,
int  max_level,
int  level1_skipped 
)
private

Definition at line 349 of file TOCCToStep.cxx.

◆ GetLabelOfVolume()

TDF_Label TOCCToStep::GetLabelOfVolume ( TGeoVolume v)
private

Definition at line 157 of file TOCCToStep.cxx.

◆ GetVolumeOfLabel()

TGeoVolume * TOCCToStep::GetVolumeOfLabel ( TDF_Label  fLabel)
private

Definition at line 168 of file TOCCToStep.cxx.

◆ Handle()

TOCCToStep::Handle ( TDocStd_Document  )
private

◆ OCCDocCreation()

void TOCCToStep::OCCDocCreation ( )
private

Definition at line 58 of file TOCCToStep.cxx.

◆ OCCPartialTreeCreation() [1/2]

bool TOCCToStep::OCCPartialTreeCreation ( TGeoManager m,
const char *  node_name,
int  max_level = -1 
)

Definition at line 255 of file TOCCToStep.cxx.

◆ OCCPartialTreeCreation() [2/2]

bool TOCCToStep::OCCPartialTreeCreation ( TGeoManager m,
std::map< std::string, int >  part_name_levels 
)

Definition at line 292 of file TOCCToStep.cxx.

◆ OCCShapeCreation()

TDF_Label TOCCToStep::OCCShapeCreation ( TGeoManager m)

Logical fTree creation.

Definition at line 71 of file TOCCToStep.cxx.

◆ OCCTreeCreation()

void TOCCToStep::OCCTreeCreation ( TGeoManager m,
int  max_level = -1 
)

Definition at line 208 of file TOCCToStep.cxx.

◆ OCCWriteStep()

void TOCCToStep::OCCWriteStep ( const char *  fname)

Definition at line 142 of file TOCCToStep.cxx.

◆ PrintAssembly()

void TOCCToStep::PrintAssembly ( )

Definition at line 394 of file TOCCToStep.cxx.

Member Data Documentation

◆ fLabel

TDF_Label TOCCToStep::fLabel
private

Definition at line 37 of file TOCCToStep.h.

◆ fRootShape

TGeoToOCC TOCCToStep::fRootShape
private

Definition at line 38 of file TOCCToStep.h.

◆ fShape

TopoDS_Shape TOCCToStep::fShape
private

Definition at line 39 of file TOCCToStep.h.

◆ fTree

LabelMap_t TOCCToStep::fTree
private

Definition at line 36 of file TOCCToStep.h.

◆ fWriter

STEPCAFControl_Writer TOCCToStep::fWriter
private

Definition at line 32 of file TOCCToStep.h.

Libraries for TOCCToStep:
[legend]

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