Geant4  10.02.p03
DicomPhantomParameterisationColour Class Reference

Class inherited from G4PhantomParameterisation to provide different. More...

#include <DicomPhantomParameterisationColour.hh>

Inheritance diagram for DicomPhantomParameterisationColour:
Collaboration diagram for DicomPhantomParameterisationColour:

Public Member Functions

 DicomPhantomParameterisationColour ()
 
 ~DicomPhantomParameterisationColour ()
 
virtual G4MaterialComputeMaterial (const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=0)
 
- Public Member Functions inherited from G4PhantomParameterisation
 G4PhantomParameterisation ()
 
 ~G4PhantomParameterisation ()
 
virtual void ComputeTransformation (const G4int, G4VPhysicalVolume *) const
 
virtual G4VSolidComputeSolid (const G4int, G4VPhysicalVolume *)
 
void ComputeDimensions (G4Box &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Tubs &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Trd &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Trap &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Cons &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Orb &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Sphere &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Ellipsoid &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Torus &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Para &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Hype &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Polycone &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Polyhedra &, const G4int, const G4VPhysicalVolume *) const
 
void BuildContainerSolid (G4VPhysicalVolume *pPhysicalVol)
 
void BuildContainerSolid (G4VSolid *pMotherSolid)
 
virtual G4int GetReplicaNo (const G4ThreeVector &localPoint, const G4ThreeVector &localDir)
 
void SetMaterials (std::vector< G4Material *> &mates)
 
void SetMaterialIndices (size_t *matInd)
 
void SetVoxelDimensions (G4double halfx, G4double halfy, G4double halfz)
 
void SetNoVoxel (size_t nx, size_t ny, size_t nz)
 
G4double GetVoxelHalfX () const
 
G4double GetVoxelHalfY () const
 
G4double GetVoxelHalfZ () const
 
size_t GetNoVoxelX () const
 
size_t GetNoVoxelY () const
 
size_t GetNoVoxelZ () const
 
size_t GetNoVoxel () const
 
std::vector< G4Material * > GetMaterials () const
 
size_t * GetMaterialIndices () const
 
G4VSolidGetContainerSolid () const
 
G4ThreeVector GetTranslation (const G4int copyNo) const
 
G4bool SkipEqualMaterials () const
 
void SetSkipEqualMaterials (G4bool skip)
 
size_t GetMaterialIndex (size_t nx, size_t ny, size_t nz) const
 
size_t GetMaterialIndex (size_t copyNo) const
 
G4MaterialGetMaterial (size_t nx, size_t ny, size_t nz) const
 
G4MaterialGetMaterial (size_t copyNo) const
 
void CheckVoxelsFillContainer (G4double contX, G4double contY, G4double contZ) const
 
- Public Member Functions inherited from G4VPVParameterisation
 G4VPVParameterisation ()
 
virtual ~G4VPVParameterisation ()
 
virtual G4bool IsNested () const
 
virtual G4VVolumeMaterialScannerGetMaterialScanner ()
 

Private Member Functions

void ReadColourData ()
 

Private Attributes

std::map< G4String, G4VisAttributes * > fColours
 

Additional Inherited Members

- Protected Attributes inherited from G4PhantomParameterisation
G4double fVoxelHalfX
 
G4double fVoxelHalfY
 
G4double fVoxelHalfZ
 
size_t fNoVoxelX
 
size_t fNoVoxelY
 
size_t fNoVoxelZ
 
size_t fNoVoxelXY
 
size_t fNoVoxel
 
std::vector< G4Material * > fMaterials
 
size_t * fMaterialIndices
 
G4VSolidfContainerSolid
 
G4double fContainerWallX
 
G4double fContainerWallY
 
G4double fContainerWallZ
 
G4double kCarTolerance
 
G4bool bSkipEqualMaterials
 

Detailed Description

Class inherited from G4PhantomParameterisation to provide different.

History:

  • Created. 5 December 2007
    Author
    P. Arce

Definition at line 49 of file DicomPhantomParameterisationColour.hh.

Constructor & Destructor Documentation

◆ DicomPhantomParameterisationColour()

DicomPhantomParameterisationColour::DicomPhantomParameterisationColour ( )

Definition at line 40 of file DicomPhantomParameterisationColour.cc.

Here is the call graph for this function:

◆ ~DicomPhantomParameterisationColour()

DicomPhantomParameterisationColour::~DicomPhantomParameterisationColour ( )

Definition at line 48 of file DicomPhantomParameterisationColour.cc.

49 {
50 }

Member Function Documentation

◆ ComputeMaterial()

G4Material * DicomPhantomParameterisationColour::ComputeMaterial ( const G4int  repNo,
G4VPhysicalVolume currentVol,
const G4VTouchable parentTouch = 0 
)
virtual

Reimplemented from G4PhantomParameterisation.

Definition at line 79 of file DicomPhantomParameterisationColour.cc.

80 {
81  G4Material* mate = G4PhantomParameterisation::ComputeMaterial( copyNo, physVol, 0 );
82  if( physVol ) {
83  G4String mateName = mate->GetName();
84  std::string::size_type iuu = mateName.find("__");
85  if( iuu != std::string::npos ) {
86  mateName = mateName.substr( 0, iuu );
87  }
88  std::map<G4String,G4VisAttributes*>::const_iterator ite =
89  fColours.find(mateName);
90  if( ite != fColours.end() ){
91  physVol->GetLogicalVolume()->SetVisAttributes( (*ite).second );
92  } else {
93  physVol->GetLogicalVolume()->SetVisAttributes(
94  (*(fColours.begin()) ).second );
95  // set it as unseen
96  }
97  }
98 
99  return mate;
100 }
std::map< G4String, G4VisAttributes * > fColours
virtual G4Material * ComputeMaterial(const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=0)
const G4String & GetName() const
Definition: G4Material.hh:178
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadColourData()

void DicomPhantomParameterisationColour::ReadColourData ( )
private

Definition at line 53 of file DicomPhantomParameterisationColour.cc.

54 {
55  //----- Add a G4VisAttributes for materials not defined in file;
56  G4VisAttributes* blankAtt = new G4VisAttributes;
57  blankAtt->SetVisibility( FALSE );
58  fColours["Default"] = blankAtt;
59 
60  //----- Read file
61  G4String colourFile = "ColourMap.dat";
62  std::ifstream fin(colourFile.c_str());
63  G4int nMate;
64  G4String mateName;
65  G4double cred, cgreen, cblue, copacity;
66  fin >> nMate;
67  for( G4int ii = 0; ii < nMate; ii++ ){
68  fin >> mateName >> cred >> cgreen >> cblue >> copacity;
69  G4Colour colour( cred, cgreen, cblue, copacity );
70  G4VisAttributes* visAtt = new G4VisAttributes( colour );
71  //visAtt->SetForceSolid(true);
72  fColours[mateName] = visAtt;
73  }
74 
75 }
TString fin
std::map< G4String, G4VisAttributes * > fColours
void SetVisibility(G4bool)
int G4int
Definition: G4Types.hh:78
#define FALSE
Definition: globals.hh:52
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ fColours

std::map<G4String,G4VisAttributes*> DicomPhantomParameterisationColour::fColours
private

Definition at line 64 of file DicomPhantomParameterisationColour.hh.


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