G4OCCT 0.1.0
Geant4 interface to Open CASCADE Technology (OCCT) geometry definitions
Loading...
Searching...
No Matches
TGeoOCCTSolid Class Reference

ROOT/TGeo adapter backed by the shared G4OCCT solid-query kernel. More...

#include <TGeoOCCTSolid.hh>

Inheritance diagram for TGeoOCCTSolid:

Public Member Functions

 TGeoOCCTSolid ()
 
 TGeoOCCTSolid (const char *name, const TopoDS_Shape &shape)
 
 ~TGeoOCCTSolid () override
 
 TGeoOCCTSolid (const TGeoOCCTSolid &)=delete
 
TGeoOCCTSolidoperator= (const TGeoOCCTSolid &)=delete
 
Double_t Capacity () const override
 
void ComputeBBox () override
 
void ComputeNormal (const Double_t *point, const Double_t *dir, Double_t *norm) const override
 
Bool_t Contains (const Double_t *point) const override
 
Bool_t CouldBeCrossed (const Double_t *point, const Double_t *dir) const override
 
Int_t DistancetoPrimitive (Int_t px, Int_t py) override
 
Double_t DistFromInside (const Double_t *point, const Double_t *dir, Int_t iact=1, Double_t step=TGeoShape::Big(), Double_t *safe=nullptr) const override
 
Double_t DistFromOutside (const Double_t *point, const Double_t *dir, Int_t iact=1, Double_t step=TGeoShape::Big(), Double_t *safe=nullptr) const override
 
TGeoVolume * Divide (TGeoVolume *voldiv, const char *divname, Int_t iaxis, Int_t ndiv, Double_t start, Double_t step) override
 
const char * GetAxisName (Int_t iaxis) const override
 
Double_t GetAxisRange (Int_t iaxis, Double_t &xlo, Double_t &xhi) const override
 
void GetBoundingCylinder (Double_t *param) const override
 
const TBuffer3D & GetBuffer3D (Int_t reqSections, Bool_t localFrame) const override
 
Int_t GetByteCount () const override
 
Bool_t GetPointsOnSegments (Int_t npoints, Double_t *array) const override
 
Int_t GetFittingBox (const TGeoBBox *parambox, TGeoMatrix *mat, Double_t &dx, Double_t &dy, Double_t &dz) const override
 
void GetMeshNumbers (Int_t &nvert, Int_t &nsegs, Int_t &npols) const override
 
TGeoShape * GetMakeRuntimeShape (TGeoShape *mother, TGeoMatrix *mat) const override
 
Bool_t IsCylType () const override
 
Bool_t IsValidBox () const override
 
void InspectShape () const override
 
TBuffer3D * MakeBuffer3D () const override
 
Double_t Safety (const Double_t *point, Bool_t in=kTRUE) const override
 
void SetDimensions (Double_t *param) override
 
void SetPoints (Double_t *points) const override
 
void SetPoints (Float_t *points) const override
 
void SetSegsAndPols (TBuffer3D &buff) const override
 
void Sizeof3D () const override
 
const TopoDS_Shape & GetOCCTShape () const
 
void SetOCCTShape (const TopoDS_Shape &shape)
 

Static Public Member Functions

static TGeoOCCTSolidFromSTEP (const char *name, const std::string &path)
 

Detailed Description

ROOT/TGeo adapter backed by the shared G4OCCT solid-query kernel.

TGeoOCCTSolid exposes an OCCT TopoDS_Shape through the TGeoShape navigation interface by delegating all geometric queries to G4OCCTSolidKernel via an internal bridge layer.

Coordinate and distance units at the TGeo boundary are centimetres, while the shared kernel uses Geant4 millimetres internally. The bridge performs the required cm↔mm conversions for all query inputs and outputs.

Definition at line 43 of file TGeoOCCTSolid.hh.

Constructor & Destructor Documentation

◆ TGeoOCCTSolid() [1/3]

TGeoOCCTSolid::TGeoOCCTSolid ( )
default

Referenced by FromSTEP(), and GetMakeRuntimeShape().

◆ TGeoOCCTSolid() [2/3]

TGeoOCCTSolid::TGeoOCCTSolid ( const char *  name,
const TopoDS_Shape &  shape 
)

Definition at line 36 of file TGeoOCCTSolid.cc.

◆ ~TGeoOCCTSolid()

TGeoOCCTSolid::~TGeoOCCTSolid ( )
overridedefault

◆ TGeoOCCTSolid() [3/3]

TGeoOCCTSolid::TGeoOCCTSolid ( const TGeoOCCTSolid )
delete

Member Function Documentation

◆ Capacity()

Double_t TGeoOCCTSolid::Capacity ( ) const
override

Definition at line 48 of file TGeoOCCTSolid.cc.

◆ ComputeBBox()

void TGeoOCCTSolid::ComputeBBox ( )
override

Definition at line 50 of file TGeoOCCTSolid.cc.

◆ ComputeNormal()

void TGeoOCCTSolid::ComputeNormal ( const Double_t *  point,
const Double_t *  dir,
Double_t *  norm 
) const
override

Definition at line 52 of file TGeoOCCTSolid.cc.

◆ Contains()

Bool_t TGeoOCCTSolid::Contains ( const Double_t *  point) const
override

Definition at line 63 of file TGeoOCCTSolid.cc.

References g4occt::detail::TGeoOCCTSolidBridge::kOutside.

◆ CouldBeCrossed()

Bool_t TGeoOCCTSolid::CouldBeCrossed ( const Double_t *  point,
const Double_t *  dir 
) const
override

Definition at line 71 of file TGeoOCCTSolid.cc.

◆ DistancetoPrimitive()

Int_t TGeoOCCTSolid::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
override

Definition at line 76 of file TGeoOCCTSolid.cc.

◆ DistFromInside()

Double_t TGeoOCCTSolid::DistFromInside ( const Double_t *  point,
const Double_t *  dir,
Int_t  iact = 1,
Double_t  step = TGeoShape::Big(),
Double_t *  safe = nullptr 
) const
override

◆ DistFromOutside()

Double_t TGeoOCCTSolid::DistFromOutside ( const Double_t *  point,
const Double_t *  dir,
Int_t  iact = 1,
Double_t  step = TGeoShape::Big(),
Double_t *  safe = nullptr 
) const
override

◆ Divide()

TGeoVolume * TGeoOCCTSolid::Divide ( TGeoVolume *  voldiv,
const char *  divname,
Int_t  iaxis,
Int_t  ndiv,
Double_t  start,
Double_t  step 
)
override

Definition at line 99 of file TGeoOCCTSolid.cc.

◆ FromSTEP()

TGeoOCCTSolid * TGeoOCCTSolid::FromSTEP ( const char *  name,
const std::string &  path 
)
static

Definition at line 41 of file TGeoOCCTSolid.cc.

References g4occt::detail::TGeoOCCTSolidBridge::FromSTEP(), and TGeoOCCTSolid().

Referenced by create_step_solid().

◆ GetAxisName()

const char * TGeoOCCTSolid::GetAxisName ( Int_t  iaxis) const
override

Definition at line 105 of file TGeoOCCTSolid.cc.

◆ GetAxisRange()

Double_t TGeoOCCTSolid::GetAxisRange ( Int_t  iaxis,
Double_t &  xlo,
Double_t &  xhi 
) const
override

Definition at line 110 of file TGeoOCCTSolid.cc.

◆ GetBoundingCylinder()

void TGeoOCCTSolid::GetBoundingCylinder ( Double_t *  param) const
override

Definition at line 115 of file TGeoOCCTSolid.cc.

◆ GetBuffer3D()

const TBuffer3D & TGeoOCCTSolid::GetBuffer3D ( Int_t  reqSections,
Bool_t  localFrame 
) const
override

Definition at line 120 of file TGeoOCCTSolid.cc.

◆ GetByteCount()

Int_t TGeoOCCTSolid::GetByteCount ( ) const
override

Definition at line 125 of file TGeoOCCTSolid.cc.

◆ GetFittingBox()

Int_t TGeoOCCTSolid::GetFittingBox ( const TGeoBBox *  parambox,
TGeoMatrix *  mat,
Double_t &  dx,
Double_t &  dy,
Double_t &  dz 
) const
override

Definition at line 132 of file TGeoOCCTSolid.cc.

◆ GetMakeRuntimeShape()

TGeoShape * TGeoOCCTSolid::GetMakeRuntimeShape ( TGeoShape *  mother,
TGeoMatrix *  mat 
) const
override

Definition at line 143 of file TGeoOCCTSolid.cc.

References GetOCCTShape(), and TGeoOCCTSolid().

◆ GetMeshNumbers()

void TGeoOCCTSolid::GetMeshNumbers ( Int_t &  nvert,
Int_t &  nsegs,
Int_t &  npols 
) const
override

Definition at line 138 of file TGeoOCCTSolid.cc.

◆ GetOCCTShape()

const TopoDS_Shape & TGeoOCCTSolid::GetOCCTShape ( ) const

Definition at line 211 of file TGeoOCCTSolid.cc.

Referenced by GetMakeRuntimeShape().

◆ GetPointsOnSegments()

Bool_t TGeoOCCTSolid::GetPointsOnSegments ( Int_t  npoints,
Double_t *  array 
) const
override

Definition at line 127 of file TGeoOCCTSolid.cc.

◆ InspectShape()

void TGeoOCCTSolid::InspectShape ( ) const
override

Definition at line 159 of file TGeoOCCTSolid.cc.

◆ IsCylType()

Bool_t TGeoOCCTSolid::IsCylType ( ) const
override

Definition at line 152 of file TGeoOCCTSolid.cc.

◆ IsValidBox()

Bool_t TGeoOCCTSolid::IsValidBox ( ) const
override

Definition at line 154 of file TGeoOCCTSolid.cc.

◆ MakeBuffer3D()

TBuffer3D * TGeoOCCTSolid::MakeBuffer3D ( ) const
override

Definition at line 177 of file TGeoOCCTSolid.cc.

◆ operator=()

TGeoOCCTSolid & TGeoOCCTSolid::operator= ( const TGeoOCCTSolid )
delete

◆ Safety()

Double_t TGeoOCCTSolid::Safety ( const Double_t *  point,
Bool_t  in = kTRUE 
) const
override

Definition at line 182 of file TGeoOCCTSolid.cc.

◆ SetDimensions()

void TGeoOCCTSolid::SetDimensions ( Double_t *  param)
override

Definition at line 186 of file TGeoOCCTSolid.cc.

◆ SetOCCTShape()

void TGeoOCCTSolid::SetOCCTShape ( const TopoDS_Shape &  shape)

Definition at line 219 of file TGeoOCCTSolid.cc.

◆ SetPoints() [1/2]

void TGeoOCCTSolid::SetPoints ( Double_t *  points) const
override

Definition at line 191 of file TGeoOCCTSolid.cc.

◆ SetPoints() [2/2]

void TGeoOCCTSolid::SetPoints ( Float_t *  points) const
override

Definition at line 196 of file TGeoOCCTSolid.cc.

◆ SetSegsAndPols()

void TGeoOCCTSolid::SetSegsAndPols ( TBuffer3D &  buff) const
override

Definition at line 201 of file TGeoOCCTSolid.cc.

◆ Sizeof3D()

void TGeoOCCTSolid::Sizeof3D ( ) const
override

Definition at line 206 of file TGeoOCCTSolid.cc.


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