1 // File: OpenGl_Trihedron.hxx
2 // Created: 20 September 2011
3 // Author: Sergey ZERCHANINOV
4 // Copyright: OPEN CASCADE 2011
6 #ifndef _OpenGl_Trihedron_Header
7 #define _OpenGl_Trihedron_Header
9 #include <Handle_OpenGl_Trihedron.hxx>
11 #include <Quantity_NameOfColor.hxx>
12 #include <Aspect_TypeOfTriedronPosition.hxx>
14 #include <OpenGl_AspectLine.hxx>
15 #include <OpenGl_AspectText.hxx>
17 class OpenGl_Trihedron : public MMgt_TShared
20 OpenGl_Trihedron (const Aspect_TypeOfTriedronPosition APosition, const Quantity_NameOfColor AColor, const Standard_Real AScale, const Standard_Boolean AsWireframe);
21 virtual ~OpenGl_Trihedron ();
23 static void Setup (const Quantity_NameOfColor XColor, const Quantity_NameOfColor YColor, const Quantity_NameOfColor ZColor,
24 const Standard_Real SizeRatio, const Standard_Real AxisDiametr, const Standard_Integer NbFacettes);
26 void Render (const Handle(OpenGl_Workspace) &AWorkspace) const;
30 DEFINE_STANDARD_RTTI(OpenGl_Trihedron)
34 void Redraw (const Handle(OpenGl_Workspace) &AWorkspace) const;
35 void RedrawZBuffer (const Handle(OpenGl_Workspace) &AWorkspace) const;
37 Aspect_TypeOfTriedronPosition myPos;
38 Standard_Real myScale;
39 Standard_Boolean myIsWireframe;
40 // Parameters for zbuffered mode
48 OpenGl_AspectLine myAspectLine;
49 OpenGl_AspectText myAspectText;
52 IMPLEMENT_MEMORY_OPERATORS
55 #endif //_OpenGl_Trihedron_Header