#include <G4ParameterisationCons.hh>
Inheritance diagram for G4VParameterisationCons:
Public Member Functions | |
G4VParameterisationCons (EAxis axis, G4int nCopies, G4double offset, G4double step, G4VSolid *msolid, DivisionType divType) | |
virtual | ~G4VParameterisationCons () |
Definition at line 65 of file G4ParameterisationCons.hh.
G4VParameterisationCons::G4VParameterisationCons | ( | EAxis | axis, | |
G4int | nCopies, | |||
G4double | offset, | |||
G4double | step, | |||
G4VSolid * | msolid, | |||
DivisionType | divType | |||
) |
Definition at line 48 of file G4ParameterisationCons.cc.
References G4VDivisionParameterisation::fDeleteSolid, G4VDivisionParameterisation::fmotherSolid, G4VDivisionParameterisation::fReflectedSolid, G4Cons::GetDeltaPhiAngle(), G4VSolid::GetEntityType(), G4Cons::GetInnerRadiusMinusZ(), G4Cons::GetInnerRadiusPlusZ(), G4VSolid::GetName(), G4Cons::GetOuterRadiusMinusZ(), G4Cons::GetOuterRadiusPlusZ(), G4Cons::GetStartPhiAngle(), and G4Cons::GetZHalfLength().
00051 : G4VDivisionParameterisation( axis, nDiv, width, offset, divType, msolid ) 00052 { 00053 G4Cons* msol = (G4Cons*)(msolid); 00054 if (msolid->GetEntityType() == "G4ReflectedSolid") 00055 { 00056 // Get constituent solid 00057 G4VSolid* mConstituentSolid 00058 = ((G4ReflectedSolid*)msolid)->GetConstituentMovedSolid(); 00059 msol = (G4Cons*)(mConstituentSolid); 00060 00061 // Create a new solid with inversed parameters 00062 G4Cons* newSolid 00063 = new G4Cons(msol->GetName(), 00064 msol->GetInnerRadiusPlusZ(), msol->GetOuterRadiusPlusZ(), 00065 msol->GetInnerRadiusMinusZ(), msol->GetOuterRadiusMinusZ(), 00066 msol->GetZHalfLength(), 00067 msol->GetStartPhiAngle(), msol->GetDeltaPhiAngle()); 00068 msol = newSolid; 00069 fmotherSolid = newSolid; 00070 fReflectedSolid = true; 00071 fDeleteSolid = true; 00072 } 00073 }
G4VParameterisationCons::~G4VParameterisationCons | ( | ) | [virtual] |