#include <G4ScaledSolid.hh>
 | 
|   | G4ScaledSolid (const G4String &pName, G4VSolid *pSolid, const G4Scale3D &pScale) | 
|   | 
| virtual  | ~G4ScaledSolid () | 
|   | 
| EInside  | Inside (const G4ThreeVector &p) const  | 
|   | 
| void  | Extent (G4ThreeVector &pMin, G4ThreeVector &pMax) const  | 
|   | 
| G4bool  | CalculateExtent (const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pMin, G4double &pMax) const  | 
|   | 
| G4ThreeVector  | SurfaceNormal (const G4ThreeVector &p) const  | 
|   | 
| G4double  | DistanceToIn (const G4ThreeVector &p, const G4ThreeVector &v) const  | 
|   | 
| G4double  | DistanceToIn (const G4ThreeVector &p) const  | 
|   | 
| G4double  | DistanceToOut (const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const  | 
|   | 
| G4double  | DistanceToOut (const G4ThreeVector &p) const  | 
|   | 
| void  | ComputeDimensions (G4VPVParameterisation *p, const G4int n, const G4VPhysicalVolume *pRep) | 
|   | 
| void  | CleanTransformations () | 
|   | 
| G4ThreeVector  | GetPointOnSurface () const  | 
|   | 
| G4Scale3D  | GetScaleTransform () const  | 
|   | 
| void  | SetScaleTransform (const G4Scale3D &scale) | 
|   | 
| G4VSolid *  | GetUnscaledSolid () const  | 
|   | 
| G4GeometryType  | GetEntityType () const  | 
|   | 
| G4VSolid *  | Clone () const  | 
|   | 
| std::ostream &  | StreamInfo (std::ostream &os) const  | 
|   | 
|   | G4ScaledSolid (__void__ &) | 
|   | 
|   | G4ScaledSolid (const G4ScaledSolid &rhs) | 
|   | 
| G4ScaledSolid &  | operator= (const G4ScaledSolid &rhs) | 
|   | 
| void  | DescribeYourselfTo (G4VGraphicsScene &scene) const  | 
|   | 
| G4Polyhedron *  | CreatePolyhedron () const  | 
|   | 
| G4Polyhedron *  | GetPolyhedron () const  | 
|   | 
|   | G4VSolid (const G4String &name) | 
|   | 
| virtual  | ~G4VSolid () | 
|   | 
| G4bool  | operator== (const G4VSolid &s) const  | 
|   | 
| G4String  | GetName () const  | 
|   | 
| void  | SetName (const G4String &name) | 
|   | 
| G4double  | GetTolerance () const  | 
|   | 
| virtual G4double  | GetCubicVolume () | 
|   | 
| virtual G4double  | GetSurfaceArea () | 
|   | 
| void  | DumpInfo () const  | 
|   | 
| virtual G4VisExtent  | GetExtent () const  | 
|   | 
| virtual const G4VSolid *  | GetConstituentSolid (G4int no) const  | 
|   | 
| virtual G4VSolid *  | GetConstituentSolid (G4int no) | 
|   | 
| virtual const G4DisplacedSolid *  | GetDisplacedSolidPtr () const  | 
|   | 
| virtual G4DisplacedSolid *  | GetDisplacedSolidPtr () | 
|   | 
|   | G4VSolid (__void__ &) | 
|   | 
|   | G4VSolid (const G4VSolid &rhs) | 
|   | 
| G4VSolid &  | operator= (const G4VSolid &rhs) | 
|   | 
| G4double  | EstimateCubicVolume (G4int nStat, G4double epsilon) const  | 
|   | 
| G4double  | EstimateSurfaceArea (G4int nStat, G4double ell) const  | 
|   | 
 | 
| void  | CalculateClippedPolygonExtent (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const  | 
|   | 
| void  | ClipCrossSection (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const  | 
|   | 
| void  | ClipBetweenSections (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const  | 
|   | 
| void  | ClipPolygon (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis) const  | 
|   | 
| G4double  | kCarTolerance | 
|   | 
Definition at line 52 of file G4ScaledSolid.hh.
 
Definition at line 51 of file G4ScaledSolid.cc.
   54   : 
G4VSolid(pName), fPtrSolid(pSolid),
 
   55     fRebuildPolyhedron(
false), fpPolyhedron(0)
 
G4VSolid(const G4String &name)
 
 
 
 
  
  
      
        
          | G4ScaledSolid::~G4ScaledSolid  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
Definition at line 75 of file G4ScaledSolid.cc.
   77   delete fpPolyhedron; fpPolyhedron= 0;
 
   78   delete fScale; fScale= 0;
 
 
 
 
      
        
          | G4ScaledSolid::G4ScaledSolid  | 
          ( | 
          __void__ &  | 
          a | ) | 
           | 
        
      
 
Definition at line 65 of file G4ScaledSolid.cc.
   67     fRebuildPolyhedron(
false), fpPolyhedron(0)
 
std::vector< ExP01TrackerHit * > a
 
G4VSolid(const G4String &name)
 
 
 
 
Definition at line 85 of file G4ScaledSolid.cc.
   86   : 
G4VSolid (rhs), fPtrSolid(rhs.fPtrSolid),
 
   87     fRebuildPolyhedron(
false), fpPolyhedron(0)
 
G4VSolid(const G4String &name)
 
 
 
 
Implements G4VSolid.
Definition at line 159 of file G4ScaledSolid.cc.
  167   fPtrSolid->
Extent(bmin,bmax);
 
  176   return bbox.CalculateExtent(pAxis,pVoxelLimit,transform3D,pMin,pMax);
 
G4Scale3D GetScaleTransform() const 
 
HepRotation inverse() const 
 
virtual void Extent(G4ThreeVector &pMin, G4ThreeVector &pMax) const 
 
 
 
 
      
        
          | void G4ScaledSolid::CleanTransformations  | 
          ( | 
           | ) | 
           | 
        
      
 
 
  
  
      
        
          | G4VSolid * G4ScaledSolid::Clone  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
Reimplemented from G4VSolid.
Definition at line 337 of file G4ScaledSolid.cc.
G4ScaledSolid(const G4String &pName, G4VSolid *pSolid, const G4Scale3D &pScale)
 
 
 
 
Reimplemented from G4VSolid.
Definition at line 304 of file G4ScaledSolid.cc.
  311               "Method not applicable in this context!");
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
 
 
 
Reimplemented from G4VSolid.
Definition at line 403 of file G4ScaledSolid.cc.
G4Scale3D GetScaleTransform() const 
 
HepPolyhedron & Transform(const G4Transform3D &t)
 
virtual G4Polyhedron * CreatePolyhedron() const 
 
 
 
 
Implements G4VSolid.
Definition at line 213 of file G4ScaledSolid.cc.
  223   newDirection = newDirection/newDirection.
mag();
 
virtual G4double DistanceToIn(const G4ThreeVector &p, const G4ThreeVector &v) const =0
 
 
 
 
Implements G4VSolid.
Definition at line 237 of file G4ScaledSolid.cc.
virtual G4double DistanceToIn(const G4ThreeVector &p, const G4ThreeVector &v) const =0
 
 
 
 
Implements G4VSolid.
Definition at line 253 of file G4ScaledSolid.cc.
  266   newDirection = newDirection/newDirection.
mag();
 
  271                                            calcNorm,validNorm,&solNorm);
 
  276     *n = normal/normal.
mag();
 
static double normal(HepRandomEngine *eptr)
 
virtual G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const =0
 
 
 
 
Implements G4VSolid.
Definition at line 288 of file G4ScaledSolid.cc.
virtual G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const =0
 
 
 
 
Reimplemented from G4VSolid.
Definition at line 130 of file G4ScaledSolid.cc.
  135   fPtrSolid->
Extent(bmin,bmax);
 
  136   pMin.
set(bmin.
x()*scale.
x(),bmin.
y()*scale.
y(),bmin.
z()*scale.
z());
 
  137   pMax.
set(bmax.
x()*scale.
x(),bmax.
y()*scale.
y(),bmax.
z()*scale.
z());
 
  141   if (pMin.
x() >= pMax.
x() || pMin.
y() >= pMax.
y() || pMin.
z() >= pMax.
z())
 
  143     std::ostringstream message;
 
  144     message << 
"Bad bounding box (min >= max) for solid: " 
  146             << 
"\npMin = " << pMin
 
  147            << 
"\npMax = " << pMax;
 
  148     G4Exception(
"G4ScaledSolid::Extent()", 
"GeomMgt0001",
 
void set(double x, double y, double z)
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
virtual void Extent(G4ThreeVector &pMin, G4ThreeVector &pMax) const 
 
 
 
 
Reimplemented from G4VSolid.
Definition at line 414 of file G4ScaledSolid.cc.
  417       fRebuildPolyhedron ||
 
  422       fRebuildPolyhedron = 
false;
 
G4Polyhedron * CreatePolyhedron() const 
 
static G4int GetNumberOfRotationSteps()
 
G4int GetNumberOfRotationStepsAtTimeOfCreation() const 
 
 
 
 
      
        
          | G4Scale3D G4ScaledSolid::GetScaleTransform  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
      
        
          | G4VSolid * G4ScaledSolid::GetUnscaledSolid  | 
          ( | 
           | ) | 
           const | 
        
      
 
 
Definition at line 96 of file G4ScaledSolid.cc.
  100   if (
this == &rhs)  { 
return *
this; }
 
  108   fPtrSolid = rhs.fPtrSolid;
 
  111   fRebuildPolyhedron = 
false;
 
  112   delete fpPolyhedron; fpPolyhedron= 0;
 
G4VSolid & operator=(const G4VSolid &rhs)
 
 
 
 
Definition at line 357 of file G4ScaledSolid.cc.
  359   if (fScale) { 
delete fScale; }
 
  361   fRebuildPolyhedron = 
true;
 
 
 
 
  
  
      
        
          | std::ostream & G4ScaledSolid::StreamInfo  | 
          ( | 
          std::ostream &  | 
          os | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
Implements G4VSolid.
Definition at line 368 of file G4ScaledSolid.cc.
  370   os << 
"-----------------------------------------------------------\n" 
  371      << 
"    *** Dump for Scaled solid - " << 
GetName() << 
" ***\n" 
  372      << 
"    ===================================================\n" 
  374      << 
" Parameters of constituent solid: \n" 
  375      << 
"===========================================================\n";
 
  377   os << 
"===========================================================\n" 
  379      << 
"    Scale transformation : \n" 
  383      << 
"===========================================================\n";
 
virtual std::ostream & StreamInfo(std::ostream &os) const =0
 
G4GeometryType GetEntityType() const 
 
 
 
 
Implements G4VSolid.
Definition at line 193 of file G4ScaledSolid.cc.
  205   return normal/normal.
mag();
 
static double normal(HepRandomEngine *eptr)
 
virtual G4ThreeVector SurfaceNormal(const G4ThreeVector &p) const =0
 
 
 
 
The documentation for this class was generated from the following files: