0023024: Update headers of OCCT files
[occt.git] / src / Aspect / Aspect_MarkerStyle.cdl
1 -- Created on: 1995-01-13
2 -- Created by: GG
3 -- Copyright (c) 1995-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22 class MarkerStyle from Aspect
23
24         ---Version:
25
26         ---Purpose: This class defines a Marker Style.
27         --          The Style can be Predefined or defined by the user
28         --          A user defined style must be described in the space <-1,+1>
29
30         ---Keywords: MarkerStyle 
31
32         ---Warning:
33         ---References:
34
35 uses
36         TypeOfMarker from Aspect,
37         Array1OfReal from TColStd,
38         Array1OfBoolean from TColStd,
39         HArray1OfBoolean from TColStd,
40         Array1OfShortReal from TShort,
41         HArray1OfShortReal from TShort
42
43 raises
44         MarkerStyleDefinitionError from Aspect
45
46 is
47         Create returns MarkerStyle from Aspect;
48         ---Level: Public
49         ---Purpose: Creates a marker style with the default value of
50         --          MarkerStyle type : POINT
51         --
52
53         Create ( aType  : TypeOfMarker ) returns MarkerStyle from Aspect ;
54         ---Level: Public
55         ---Purpose: Creates the marker style <aType>.
56
57         Create ( aXpoint : Array1OfReal ; 
58                  aYpoint : Array1OfReal ) 
59                                         returns MarkerStyle from Aspect
60         ---Level: Public
61         ---Purpose: Creates a marker style from a implicit draw point 
62         --descriptor .
63         -- Each coordinate <aXpoint(i),aYpoint(i)> must be defined 
64         --in the space -1,+1.
65         raises MarkerStyleDefinitionError;
66         ---Trigger:
67         -- if <aXpoint>,<aYpoint> have different length.
68         -- if one coordinate is <-1 or >+1.
69
70         Create ( aXpoint : Array1OfReal ; 
71                  aYpoint : Array1OfReal ; 
72                  aSpoint : Array1OfBoolean )
73                                         returns MarkerStyle from Aspect
74         ---Level: Public
75         ---Purpose: Creates a marker style from a move-draw point descriptor .
76         -- Each coordinate <aXpoint(i),aYpoint(i)> must be defined 
77         --in the space -1,+1.
78         -- Each status point <aSpoint(i)> must be TRUE for drawing
79         --or FALSE for moving to the last at this point .
80         raises MarkerStyleDefinitionError;
81         ---Trigger:
82         -- if <aXpoint>,<aYpoint>,<aSpoint> have different length.
83         -- if one coordinate is <-1 or >+1
84
85         ---------------------------------------------------
86         -- Category: Methods to modify the class definition
87         ---------------------------------------------------
88  
89         Assign ( me     : in out ;
90                  Other  : MarkerStyle from Aspect )
91                 returns MarkerStyle from Aspect is static;
92         ---Level: Public
93         ---Purpose: Updates the marker style <me> from the definition of the
94         --          marker style <Other>.
95         ---Category: Methods to modify the class definition
96         ---C++: alias operator =
97         ---C++: return &
98  
99         ----------------------------
100         -- Category: Inquire methods
101         ----------------------------
102
103         Type ( me ) returns TypeOfMarker is static;
104         ---Level: Public
105         ---Purpose: Returns the type of the marker style <me> 
106         ---Category: Inquire methods
107
108         Length ( me ) returns Integer is static;
109         ---Level: Public
110         ---Purpose: Returns the components length of the marker descriptors
111         ---Category: Inquire methods
112
113         Values ( me ; aRank : Integer ;
114                       aX,aY : out Real ) returns Boolean
115         ---Level: Public
116         ---Purpose: Returns the point and status of a marker style 
117         --descriptor of rank <aRank>.
118         raises MarkerStyleDefinitionError is static;
119         ---Trigger:
120         -- If aRank is < 1 or > Length()
121         ---Category: Inquire methods
122
123         XValues ( me ) returns Array1OfShortReal is static;
124         ---Level: Public
125         ---Purpose: Returns the X vector of a marker style descriptor
126         ---Category: Inquire methods
127         ---C++: return const &
128
129         YValues ( me ) returns Array1OfShortReal is static;
130         ---Level: Public
131         ---Purpose: Returns the Y vector of a marker style descriptor
132         ---Category: Inquire methods
133         ---C++: return const &
134
135         SValues ( me ) returns Array1OfBoolean is static;
136         ---Level: Public
137         ---Purpose: Returns the State vector of a marker style descriptor
138         ---Category: Inquire methods
139         ---C++: return const &
140
141         IsEqual(me; Other : MarkerStyle from Aspect) returns Boolean;
142             ---C++: alias operator==
143
144         IsNotEqual(me; Other : MarkerStyle from Aspect) returns Boolean;
145             ---C++: alias operator!=
146
147         ----------------------------
148         -- Category: Private methods
149         ----------------------------
150
151         SetPredefinedStyle ( me : in out ) is static private;
152         ---Level: Internal
153         ---Purpose: Set MyMarkerDescriptor with the predefined style values
154         --          according of current type
155         ---Category: Private methods
156
157 --\f
158
159 fields
160
161 --
162 -- Class        :       Aspect_MarkerStyle
163 --
164 -- Purpose      :       Declaration of variables specific to marker styles
165 --
166
167         MyMarkerType            : TypeOfMarker;
168         MyXpoint                : HArray1OfShortReal;
169         MyYpoint                : HArray1OfShortReal;
170         MySpoint                : HArray1OfBoolean;
171
172 end MarkerStyle;