- Timestamp:
- Nov 9, 2007, 3:32:25 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/geant4/visualization/OpenGL/include/G4OpenGLSceneHandler.hh
r529 r593 25 25 // 26 26 // 27 // $Id: G4OpenGLSceneHandler.hh,v 1.2 0 2006/08/30 11:37:34allison Exp $28 // GEANT4 tag $Name: geant4-0 8-02-patch-01 $27 // $Id: G4OpenGLSceneHandler.hh,v 1.23 2007/04/04 16:50:26 allison Exp $ 28 // GEANT4 tag $Name: geant4-09-00-ref-01 $ 29 29 // 30 30 // … … 45 45 #include "G4VSceneHandler.hh" 46 46 #include "G4OpenGLViewer.hh" 47 #include "G4OpenGLBitMapStore.hh" 48 #include <map> 47 49 48 // Base class for various OpenGLScene classes. 50 class G4AttHolder; 51 52 // Base class for various OpenGLSceneHandler classes. 49 53 class G4OpenGLSceneHandler: public G4VSceneHandler { 50 54 55 friend class G4OpenGLViewer; 56 51 57 public: 58 virtual void BeginPrimitives (const G4Transform3D& objectTransformation); 59 virtual void EndPrimitives (); 60 virtual void BeginPrimitives2D (); 61 virtual void EndPrimitives2D (); 52 62 void AddPrimitive (const G4Polyline&); 63 void AddPrimitive (const G4Polymarker&); 53 64 void AddPrimitive (const G4Text&); 54 65 void AddPrimitive (const G4Circle&); 55 66 void AddPrimitive (const G4Square&); 67 void AddPrimitive (const G4Scale&); 56 68 void AddPrimitive (const G4Polyhedron&); 57 69 void AddPrimitive (const G4NURBS&); 58 // Explicitly invoke base class methods to avoid warnings about59 // hiding of base class methods...60 void AddPrimitive(const G4Polymarker& polymarker) {61 G4VSceneHandler::AddPrimitive (polymarker);62 }63 void AddPrimitive (const G4Scale& scale) {64 G4VSceneHandler::AddPrimitive (scale);65 }66 70 71 void PreAddSolid (const G4Transform3D& objectTransformation, 72 const G4VisAttributes&); 67 73 void AddSolid (const G4Box&); 68 74 void AddSolid (const G4Cons&); … … 89 95 const G4Polyhedron* CreateCutawayPolyhedron (); 90 96 97 GLuint fPickName; 98 std::map<GLuint, G4AttHolder*> fPickMap; // For picking. 99 void ClearAndDestroyAtts(); // Destroys att holders and clears pick map. 100 91 101 private: 92 102 93 void AddCircleSquare (const G4VMarker&, G4int nSides); 94 /************************************************** 95 Not needed - but see note on future development in .cc. 96 void DrawScreenPolygon (G4double size, 97 const G4Point3D& centre, 98 G4int nSides); 99 // Draws in screen coordinates. 100 *********************************/ 103 void AddCircleSquare (const G4VMarker&, G4OpenGLBitMapStore::Shape); 101 104 102 void DrawXYPolygon (G4double size, 103 const G4Point3D& centre, 104 G4int nSides); 105 void DrawXYPolygon 106 (G4OpenGLBitMapStore::Shape, 107 G4double size, 108 const G4Point3D& centre, 109 const G4VisAttributes* pApplicableVisAtts); 105 110 // Draws in world coordinates a polygon in the screen plane knowing 106 111 // viewpoint direction and up vector. 107 112 108 113 static const GLubyte fStippleMaskHashed [128]; 114 115 G4bool fProcessingPolymarker; 109 116 }; 110 117
Note: See TracChangeset
for help on using the changeset viewer.