0024704: Visualization - inherit OpenGl_Structure from Graphic3d_CStructure
[occt.git] / src / Graphic3d / Graphic3d_CStructure.cxx
1 // Copyright (c) 1995-1999 Matra Datavision
2 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 //
4 // This file is part of Open CASCADE Technology software library.
5 //
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
11 //
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
14
15 #include <Graphic3d_CStructure.hxx>
16
17 #include <Graphic3d_Structure.pxx>
18 #include <Graphic3d_StructureManager.hxx>
19 #include <Graphic3d_TransModeFlags.hxx>
20
21 IMPLEMENT_STANDARD_HANDLE (Graphic3d_CStructure, Standard_Transient)
22 IMPLEMENT_STANDARD_RTTIEXT(Graphic3d_CStructure, Standard_Transient)
23
24 //=============================================================================
25 //function : Graphic3d_CStructure
26 //purpose  :
27 //=============================================================================
28 Graphic3d_CStructure::Graphic3d_CStructure (const Handle(Graphic3d_StructureManager)& theManager)
29 : Id               (theManager->NewIdentification()),
30   Priority         (Structure_MAX_PRIORITY / 2),
31   PreviousPriority (Structure_MAX_PRIORITY / 2),
32   Composition      (Graphic3d_TOC_REPLACE),
33   ContainsFacet    (0),
34   IsInfinite       (0),
35   stick            (0),
36   highlight        (0),
37   visible          (1),
38   pick             (1),
39   HLRValidation    (0),
40   myGraphicDriver  (theManager->GraphicDriver())
41 {
42   for (Standard_Integer i = 0; i <= 3; ++i)
43   {
44     for (Standard_Integer j = 0; j <= 3; ++j)
45     {
46       Transformation[i][j] = (i == j) ? 1.0f : 0.0f;
47     }
48   }
49
50   ContextLine.IsDef     = 1,
51   ContextFillArea.IsDef = 1,
52   ContextMarker.IsDef   = 1,
53   ContextText.IsDef     = 1;
54
55   ContextLine.IsSet     = 0,
56   ContextFillArea.IsSet = 0,
57   ContextMarker.IsSet   = 0,
58   ContextText.IsSet     = 0;
59
60   TransformPersistence.IsSet   = 0;
61   TransformPersistence.Flag    = Graphic3d_TMF_None;
62   TransformPersistence.Point.x = 0.0;
63   TransformPersistence.Point.y = 0.0;
64   TransformPersistence.Point.z = 0.0;
65 }