0024752: Visualization - inherit OpenGl_Group from Graphic3d_Group
[occt.git] / src / Graphic3d / Graphic3d_AspectMarker3d.cdl
CommitLineData
b311480e 1-- Created by: NW,JPB,CAL
2-- Copyright (c) 1991-1999 Matra Datavision
973c2be1 3-- Copyright (c) 1999-2014 OPEN CASCADE SAS
7fd59977 4--
973c2be1 5-- This file is part of Open CASCADE Technology software library.
7fd59977 6--
d5f74e42 7-- This library is free software; you can redistribute it and/or modify it under
8-- the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 9-- by the Free Software Foundation, with special exception defined in the file
10-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11-- distribution for complete text of the license and disclaimer of any warranty.
7fd59977 12--
973c2be1 13-- Alternatively, this file may be used under the terms of Open CASCADE
14-- commercial license or contractual agreement.
7fd59977 15
16class AspectMarker3d from Graphic3d inherits AspectMarker from Aspect
17
a577aaab 18 ---Version:
7fd59977 19
a577aaab 20 ---Purpose: Creates and updates an attribute group for
21 -- marker type primitives. This group contains the type
22 -- of marker, its colour, and its scale factor.
23 ---Keywords: Marker, Color, Scale, Type
7fd59977 24
a577aaab 25 ---Warning:
26 ---References:
7fd59977 27
28uses
29
30f0ad28 30 Color from Quantity,
31 TypeOfMarker from Aspect,
32 HArray1OfByte from TColStd,
33 PixMap_Handle from Image,
34 MarkerImage_Handle from Graphic3d,
35 ShaderProgram_Handle from Graphic3d
7fd59977 36
37is
38
a577aaab 39 Create
40 returns mutable AspectMarker3d from Graphic3d;
41 ---Level: Public
42 ---Purpose: Creates a context table for marker primitives
43 -- defined with the following default values:
44 --
45 -- Marker type : TOM_X
46 -- Colour : YELLOW
47 -- Scale factor: 1.0
48
49 Create (theType : TypeOfMarker from Aspect;
50 theColor : Color from Quantity;
51 theScale : Real from Standard)
52 returns mutable AspectMarker3d from Graphic3d;
53
54 Create (theColor : Color from Quantity;
55 theWidth : Integer from Standard;
56 theHeight : Integer from Standard;
57 theTextureBitmap : HArray1OfByte from TColStd)
58 returns mutable AspectMarker3d from Graphic3d;
59 ---Level: Public
60 ---Purpose: Creates a context table for marker primitives
61 -- defined with the specified values.
62
63 Create (theTextureImage : PixMap_Handle from Image)
64 returns mutable AspectMarker3d from Graphic3d;
65 ---Level: Public
66 ---Purpose: Creates a context table for marker primitives
67 -- defined with the specified values.
68
69 GetTextureSize (me;
70 theWidth : out Integer from Standard;
71 theHeight: out Integer from Standard);
72 ---Level: Public
73 ---Purpose: Returns marker's texture size.
74
75 GetMarkerImage (me)
76 returns MarkerImage_Handle from Graphic3d;
77 ---Level: Public
78 ---Purpose: Returns marker's image texture.
79 --- Could be null handle if marker aspect has been initialized as
80 --- default type of marker.
81 ---C++: return const &
82
b64d84be 83 SetMarkerImage (me : mutable;
84 theImage : MarkerImage_Handle from Graphic3d);
85 ---Level: Public
86 ---Purpose: Set marker's image texture.
87
a577aaab 88 SetBitMap (me: mutable;
89 theWidth : Integer from Standard;
90 theHeight : Integer from Standard;
91 theTexture: HArray1OfByte from TColStd ) is static;
7fd59977 92
30f0ad28 93 SetShaderProgram ( me : mutable;
94 theProgram : ShaderProgram_Handle from Graphic3d );
95 ---Level: Public
96 ---Purpose: Sets up OpenGL/GLSL shader program.
97
98 ShaderProgram ( me )
99 returns ShaderProgram_Handle from Graphic3d;
100 ---C++: return const &
101
7fd59977 102fields
103
104--
a577aaab 105-- Class: Graphic3d_AspectMarker3d
7fd59977 106--
a577aaab 107-- Purpose: Declaration of context-specific variables
108-- for drawing 3d markers.
7fd59977 109--
a577aaab 110-- Reminder: A context for drawing 3d markers inherits:
111-- - the colour
112-- - the type of marker
113-- - the scale factor
114-- defined by AspectMarker.
115
116myMarkerImage : MarkerImage_Handle from Graphic3d is protected;
117
30f0ad28 118MyShaderProgram : ShaderProgram_Handle from Graphic3d;
119
7fd59977 120end AspectMarker3d;