Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/graphics_reps/include/G4VGraphicsScene.hh

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /graphics_reps/include/G4VGraphicsScene.hh (Version 11.3.0) and /graphics_reps/include/G4VGraphicsScene.hh (Version 1.1)


  1 //                                                  1 
  2 // *******************************************    
  3 // * License and Disclaimer                       
  4 // *                                              
  5 // * The  Geant4 software  is  copyright of th    
  6 // * the Geant4 Collaboration.  It is provided    
  7 // * conditions of the Geant4 Software License    
  8 // * LICENSE and available at  http://cern.ch/    
  9 // * include a list of copyright holders.         
 10 // *                                              
 11 // * Neither the authors of this software syst    
 12 // * institutes,nor the agencies providing fin    
 13 // * work  make  any representation or  warran    
 14 // * regarding  this  software system or assum    
 15 // * use.  Please see the license in the file     
 16 // * for the full disclaimer and the limitatio    
 17 // *                                              
 18 // * This  code  implementation is the result     
 19 // * technical work of the GEANT4 collaboratio    
 20 // * By using,  copying,  modifying or  distri    
 21 // * any work based  on the software)  you  ag    
 22 // * use  in  resulting  scientific  publicati    
 23 // * acceptance of all terms of the Geant4 Sof    
 24 // *******************************************    
 25 //                                                
 26 //                                                
 27 // John Allison  19th July 1996                   
 28 //                                                
 29 // Class Description:                             
 30 // Abstract interface class for a graphics sce    
 31 // It is a minimal scene handler for the GEANT    
 32 // See G4VSceneHandler for a fuller descriptio    
 33 // the full abstract interface to graphics sys    
 34                                                   
 35 #ifndef G4VGRAPHICSSCENE_HH                       
 36 #define G4VGRAPHICSSCENE_HH                       
 37                                                   
 38 #include "globals.hh"                             
 39 #include "G4Transform3D.hh"                       
 40                                                   
 41 class G4VisAttributes;                            
 42 class G4VSolid;                                   
 43 class G4Box;                                      
 44 class G4Cons;                                     
 45 class G4Orb;                                      
 46 class G4Para;                                     
 47 class G4Torus;                                    
 48 class G4Trap;                                     
 49 class G4Trd;                                      
 50 class G4Tubs;                                     
 51 class G4Sphere;                                   
 52                                                   
 53 class G4Ellipsoid;                                
 54 class G4Polycone;                                 
 55 class G4Polyhedra;                                
 56 class G4TessellatedSolid;                         
 57                                                   
 58 class G4PhysicalVolumeModel;                      
 59 class G4VTrajectory;                              
 60 class G4VHit;                                     
 61 class G4VDigi;                                    
 62 template <typename T> class G4THitsMap;           
 63 class G4Polyline;                                 
 64 class G4Text;                                     
 65 class G4Circle;                                   
 66 class G4Square;                                   
 67 class G4Polymarker;                               
 68 class G4Polyhedron;                               
 69 class G4VisExtent;                                
 70 class G4StatDouble;                               
 71 class G4Mesh;                                     
 72 class G4Plotter;                                  
 73                                                   
 74 class G4VGraphicsScene {                          
 75                                                   
 76 public: // With description                       
 77                                                   
 78   G4VGraphicsScene();                             
 79   virtual ~G4VGraphicsScene();                    
 80                                                   
 81   ////////////////////////////////////////////    
 82   // Methods for adding solids to the scene ha    
 83   // must always be called in the triplet PreA    
 84   // PostAddSolid.  The transformation and vis    
 85   // must be set by the call to PreAddSolid.      
 86   // implementation is to request the solid to    
 87   // or similar primitive - see, for example,     
 88   // Visualization Category.                      
 89                                                   
 90   virtual void PreAddSolid (const G4Transform3    
 91                             const G4VisAttribu    
 92   // objectTransformation is the transformatio    
 93   // coordinate system of the object about to     
 94   // visAttribs is its visualization attribute    
 95                                                   
 96   virtual void PostAddSolid () = 0;               
 97                                                   
 98   // From geometry/solids/CSG                     
 99   virtual void AddSolid (const G4Box&)       =    
100   virtual void AddSolid (const G4Cons&)      =    
101   virtual void AddSolid (const G4Orb&)       =    
102   virtual void AddSolid (const G4Para&)      =    
103   virtual void AddSolid (const G4Sphere&)    =    
104   virtual void AddSolid (const G4Torus&)     =    
105   virtual void AddSolid (const G4Trap&)      =    
106   virtual void AddSolid (const G4Trd&)       =    
107   virtual void AddSolid (const G4Tubs&)      =    
108                                                   
109   // From geometry/solids/specific                
110   virtual void AddSolid (const G4Ellipsoid&)      
111   virtual void AddSolid (const G4Polycone&)       
112   virtual void AddSolid (const G4Polyhedra&)      
113   virtual void AddSolid (const G4TessellatedSo    
114                                                   
115   // For solids not above                         
116   virtual void AddSolid (const G4VSolid&) = 0;    
117                                                   
118   ////////////////////////////////////////////    
119   // Methods for adding "compound" GEANT4 obje    
120   // handler.  These methods may either (a) in    
121   // uses the "user interface", G4VVisManager     
122   // G4VSceneHandler in the Visualization Cate    
123   // trajectories uses G4VTrajectory::DrawTraj    
124   // G4TrajectoriesModel in the Modeling Categ    
125   // AddPrimitives below (between calls to Beg    
126   // use graphics-system-specific code or (d)     
127   // above.                                       
128                                                   
129   virtual void AddCompound (const G4VTrajector    
130   virtual void AddCompound (const G4VHit&)        
131   virtual void AddCompound (const G4VDigi&)       
132   virtual void AddCompound (const G4THitsMap<G    
133   virtual void AddCompound (const G4THitsMap<G    
134   virtual void AddCompound (const G4Mesh&)        
135                                                   
136   ////////////////////////////////////////////    
137   // Methods for adding graphics primitives to    
138   // sequence of calls to AddPrimitive must be    
139   // calls to BeginPrimitives and EndPrimitive    
140   // number of calls that have the same transf    
141                                                   
142   virtual void BeginPrimitives                    
143   (const G4Transform3D& objectTransformation =    
144   // objectTransformation is the transformatio    
145   // coordinate system of the object about to     
146                                                   
147   virtual void EndPrimitives () = 0;              
148                                                   
149   virtual void BeginPrimitives2D                  
150   (const G4Transform3D& objectTransformation =    
151                                                   
152   virtual void EndPrimitives2D () = 0;            
153   // The x,y coordinates of the primitives pas    
154   // intrepreted as screen coordinates, -1 < x    
155   // z-coordinate is ignored.                     
156                                                   
157   virtual void AddPrimitive (const G4Polyline&    
158   virtual void AddPrimitive (const G4Text&)       
159   virtual void AddPrimitive (const G4Circle&)     
160   virtual void AddPrimitive (const G4Square&)     
161   virtual void AddPrimitive (const G4Polymarke    
162   virtual void AddPrimitive (const G4Polyhedro    
163   virtual void AddPrimitive (const G4Plotter&)    
164                                                   
165   virtual const G4VisExtent& GetExtent() const    
166   // The concrete class should overload this o    
167   // See G4VScenHandler for example.              
168                                                   
169 };                                                
170                                                   
171 #endif                                            
172