0023024: Update headers of OCCT files
[occt.git] / src / Aspect / Aspect_Edge.cdl
1 -- Created on: 1991-11-04
2 -- Created by: NW,JPB,CAL
3 -- Copyright (c) 1991-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 Edge from Aspect
23
24         ---Version:
25
26         ---Purpose: This class allows the definition of an edge.
27
28         ---Keywords: Edge, Visible, Invisible, Border, Line, Face
29
30         ---Warning:
31         ---References:
32
33 uses
34
35         TypeOfEdge      from Aspect
36
37 raises
38
39         EdgeDefinitionError     from Aspect
40
41 is
42
43         Create
44                 returns Edge from Aspect;
45         ---Level: Public
46         ---Purpose: Creates an edge.
47
48         Create ( AIndex1, AIndex2       : Integer from Standard;
49                  AType                  : TypeOfEdge from Aspect )
50                 returns Edge from Aspect
51         ---Level: Public
52         ---Purpose: Creates an edge from an index of vertices
53         --          in a table of vertices.
54         --          <AType> indicates if this edge is seen or not.
55         --  Warning: Raises EdgeDefinitionError if AIndex1 == AIndex2.
56         raises EdgeDefinitionError from Aspect;
57
58         ---------------------------------------------------
59         -- Category: Methods to modify the class definition
60         ---------------------------------------------------
61
62         SetValues ( me                  : in out;
63                     AIndex1, AIndex2    : Integer from Standard;
64                     AType               : TypeOfEdge from Aspect )
65         ---Level: Public
66         ---Purpose: Updates the values of an edge <me>.
67         --  Warning: Raises EdgeDefinitionError if AIndex1 == AIndex2.
68         raises EdgeDefinitionError from Aspect;
69
70         ----------------------------
71         -- Category: Inquire methods
72         ----------------------------
73
74         Values ( me;
75                  AIndex1, AIndex2       : out Integer from Standard;
76                  AType                  : out TypeOfEdge from Aspect );
77         ---Level: Public
78         ---Purpose: Returns the index of the vertices and the
79         --          type of edge <me>.
80         ---Category: Inquire methods
81
82         FirstIndex ( me )
83                 returns Integer from Standard;
84         ---Level: Public
85         ---Purpose: Returns the index of the begin of the edge <me>.
86         ---Category: Inquire methods
87
88         LastIndex ( me )
89                 returns Integer from Standard;
90         ---Level: Public
91         ---Purpose: Returns the index of the end of the edge <me>.
92         ---Category: Inquire methods
93
94         Type ( me)
95                 returns TypeOfEdge from Aspect;
96         ---Level: Public
97         ---Purpose: Returns the type of the edge <me>.
98         ---Category: Inquire methods
99
100 --\f
101
102 fields
103
104 --
105 -- Class        :       Aspect_Edge
106 --
107 -- Purpose      :       Declaration of variables specific to edges
108 --
109 -- Reminder     :       An edge is defined by :
110 --                      - two vertices referenced by indices
111 --                      - its visibility
112 --
113
114         -- indices of the vertices
115         MyBegin         :       Integer from Standard;
116         MyEnd           :       Integer from Standard;
117
118         -- the visibility
119         MyVisibility    :       TypeOfEdge from Aspect;
120
121 end Edge;