4e57c75e |
1 | -- Created by: Peter KURNEV |
973c2be1 |
2 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
4e57c75e |
3 | -- |
973c2be1 |
4 | -- This file is part of Open CASCADE Technology software library. |
4e57c75e |
5 | -- |
973c2be1 |
6 | -- This library is free software; you can redistribute it and / or modify it |
7 | -- under the terms of the GNU Lesser General Public 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. |
4e57c75e |
11 | -- |
973c2be1 |
12 | -- Alternatively, this file may be used under the terms of Open CASCADE |
13 | -- commercial license or contractual agreement. |
4e57c75e |
14 | |
15 | class Curve from BOPDS |
16 | |
17 | ---Purpose: |
18 | -- The class BOPDS_Curve is to store |
19 | -- the information about intersection curve |
20 | |
21 | uses |
22 | Box from Bnd, |
23 | Curve from IntTools, |
24 | ListOfInteger from BOPCol, |
25 | BaseAllocator from BOPCol, |
26 | ListOfPaveBlock from BOPDS, |
27 | PaveBlock from BOPDS |
28 | |
29 | --raises |
30 | |
31 | is |
32 | Create |
33 | returns Curve from BOPDS; |
34 | ---C++: alias "virtual ~BOPDS_Curve();" |
35 | ---C++: inline |
36 | ---Purpose: |
37 | --- Empty contructor |
38 | --- |
39 | Create (theAllocator: BaseAllocator from BOPCol) |
40 | returns Curve from BOPDS; |
41 | ---C++: inline |
42 | ---Purpose: |
43 | --- Contructor |
44 | --- <theAllocator> - the allocator to manage the memory |
45 | --- |
46 | |
47 | SetCurve(me:out; |
48 | theC:Curve from IntTools); |
49 | ---C++: inline |
50 | ---Purpose: |
51 | --- Modifier |
52 | --- Sets the curve <theC> |
53 | |
54 | Curve(me) |
55 | returns Curve from IntTools; |
56 | ---C++: return const & |
57 | ---C++: inline |
58 | ---Purpose: |
59 | --- Selector |
60 | --- Returns the curve |
61 | |
62 | SetBox(me:out; |
63 | theBox:Box from Bnd); |
64 | ---C++: inline |
65 | ---Purpose: |
66 | --- Modifier |
67 | --- Sets the bounding box <theBox> of the curve |
68 | |
69 | Box(me) |
70 | returns Box from Bnd; |
71 | ---C++: return const & |
72 | ---C++: inline |
73 | ---Purpose: |
74 | --- Selector |
75 | --- Returns the bounding box of the curve |
76 | |
77 | ChangeBox(me:out) |
78 | returns Box from Bnd; |
79 | ---C++: return & |
80 | ---C++: inline |
81 | ---Purpose: |
82 | --- Selector/Modifier |
83 | --- Returns the bounding box of the curve |
84 | SetPaveBlocks(me:out; |
85 | theLPB:ListOfPaveBlock from BOPDS); |
86 | |
87 | PaveBlocks (me) |
88 | returns ListOfPaveBlock from BOPDS; |
89 | ---C++: return const & |
90 | ---C++: inline |
91 | ---Purpose: |
92 | --- Selector |
93 | --- Returns the list of pave blocks |
94 | --- of the curve |
95 | |
96 | ChangePaveBlocks (me:out) |
97 | returns ListOfPaveBlock from BOPDS; |
98 | ---C++: return & |
99 | ---C++: inline |
100 | ---Purpose: |
101 | --- Selector/Modifier |
102 | --- Returns the list of pave blocks |
103 | --- of the curve |
104 | |
105 | InitPaveBlock1(me:out); |
106 | ---C++: inline |
107 | ---Purpose: |
108 | --- Creates initial pave block |
109 | --- of the curve |
110 | |
111 | ChangePaveBlock1(me:out) |
112 | returns PaveBlock from BOPDS; |
113 | ---C++: return & |
114 | ---C++: inline |
115 | ---Purpose: |
116 | --- Selector/Modifier |
117 | --- Returns initial pave block |
118 | --- of the curve |
119 | |
120 | TechnoVertices (me) |
121 | returns ListOfInteger from BOPCol; |
122 | ---C++: return const & |
123 | ---C++: inline |
124 | ---Purpose: |
125 | --- Selector |
126 | --- Returns list of indices of technologic vertices |
127 | --- of the curve |
128 | |
129 | ChangeTechnoVertices (me:out) |
130 | returns ListOfInteger from BOPCol; |
131 | ---C++: return & |
132 | ---C++: inline |
133 | ---Purpose: |
134 | --- Selector/Modifier |
135 | --- Returns list of indices of technologic vertices |
136 | --- of the curve |
137 | |
138 | HasEdge(me) |
139 | returns Boolean from Standard; |
140 | ---C++: inline |
141 | ---Purpose: |
142 | --- Query |
143 | --- Returns true if at least one pave block of the curve |
144 | -- has edge |
145 | fields |
146 | myAllocator : BaseAllocator from BOPCol is protected; |
147 | myCurve : Curve from IntTools is protected; |
148 | myPaveBlocks : ListOfPaveBlock from BOPDS is protected; |
149 | myTechnoVertices : ListOfInteger from BOPCol is protected; |
150 | myBox : Box from Bnd is protected; |
151 | |
152 | end Curve; |