- Timestamp:
- Nov 3, 2009, 11:17:28 AM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/source/visualization/modeling/include/G4PhysicalVolumeModel.hh
r954 r1140 25 25 // 26 26 // 27 // $Id: G4PhysicalVolumeModel.hh,v 1.3 4 2007/04/03 13:46:49 allison Exp $27 // $Id: G4PhysicalVolumeModel.hh,v 1.35 2009/10/10 14:29:59 allison Exp $ 28 28 // GEANT4 tag $Name: $ 29 29 // … … 49 49 50 50 #include "G4VModel.hh" 51 #include "G4VTouchable.hh" 51 52 52 53 #include "G4Transform3D.hh" … … 76 77 public: 77 78 G4PhysicalVolumeNodeID 78 (G4VPhysicalVolume* pPV = 0, G4int iCopyNo = 0, G4int depth = 0): 79 fpPV(pPV), fCopyNo(iCopyNo), fNonCulledDepth(depth) {} 79 (G4VPhysicalVolume* pPV = 0, 80 G4int iCopyNo = 0, 81 G4int depth = 0, 82 const G4Transform3D& transform = G4Transform3D()): 83 fpPV(pPV), 84 fCopyNo(iCopyNo), 85 fNonCulledDepth(depth), 86 fTransform(transform) {} 80 87 G4VPhysicalVolume* GetPhysicalVolume() const {return fpPV;} 81 88 G4int GetCopyNo() const {return fCopyNo;} 82 89 G4int GetNonCulledDepth() const {return fNonCulledDepth;} 90 const G4Transform3D& GetTransform() const {return fTransform;} 83 91 G4bool operator< (const G4PhysicalVolumeNodeID& right) const; 84 92 private: … … 86 94 G4int fCopyNo; 87 95 G4int fNonCulledDepth; 96 G4Transform3D fTransform; 88 97 }; 89 98 // Nested class for identifying physical volume nodes. 99 100 class G4PhysicalVolumeModelTouchable: public G4VTouchable { 101 public: 102 G4PhysicalVolumeModelTouchable 103 (const std::vector<G4PhysicalVolumeNodeID>& fullPVPath); 104 const G4ThreeVector& GetTranslation(G4int depth) const; 105 const G4RotationMatrix* GetRotation(G4int depth) const; 106 G4VPhysicalVolume* GetVolume(G4int depth) const; 107 G4VSolid* GetSolid(G4int depth) const; 108 G4int GetReplicaNumber(G4int depth) const; 109 G4int GetHistoryDepth() const {return fFullPVPath.size();} 110 private: 111 const std::vector<G4PhysicalVolumeNodeID>& fFullPVPath; 112 }; 113 // Nested class for handling nested parameterisations. 90 114 91 115 G4PhysicalVolumeModel
Note: See TracChangeset
for help on using the changeset viewer.