1 -- Created by: Peter KURNEV
2 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
4 -- This file is part of Open CASCADE Technology software library.
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.
12 -- Alternatively, this file may be used under the terms of Open CASCADE
13 -- commercial license or contractual agreement.
15 class PaveBlock from BOPDS
16 inherits TShared from MMgt
19 -- The class BOPDS_PaveBlock is to store
20 -- the information about pave block on an edge.
21 -- Two adjacent paves on edge make up pave block.
25 BaseAllocator from BOPCol,
26 MapOfInteger from BOPCol,
28 ListOfPave from BOPDS,
29 ListOfPaveBlock from BOPDS
35 returns PaveBlock from BOPDS;
39 Create (theAllocator: BaseAllocator from BOPCol)
40 returns PaveBlock from BOPDS;
43 --- <theAllocator> - the allocator to manage the memory
47 thePave:Pave from BOPDS);
50 --- Sets the first pave <thePave>
53 returns Pave from BOPDS;
54 ---C++: return const &
57 --- Returns the first pave
60 thePave:Pave from BOPDS);
63 --- Sets the second pave <thePave>
66 returns Pave from BOPDS;
67 ---C++: return const &
70 --- Returns the second pave
73 theEdge:Integer from Standard);
76 --- Sets the index of edge of pave block <theEdge>
78 returns Integer from Standard;
81 --- Returns the index of edge of pave block
84 returns Boolean from Standard;
87 --- Returns true if the pave block has edge
90 theEdge:out Integer from Standard)
91 returns Boolean from Standard;
94 --- Returns true if the pave block has edge
95 --- Returns the index of edge <theEdge>
97 SetOriginalEdge (me:mutable;
98 theEdge:Integer from Standard);
101 --- Sets the index of original edge
102 --- of the pave block <theEdge>
105 returns Integer from Standard;
108 --- Returns the index of original edge of pave block
111 returns Boolean from Standard;
114 --- Returns true if the edge is equal to the original edge
115 --- of the pave block
118 theT1:out Real from Standard;
119 theT2:out Real from Standard);
122 --- Returns the parametric range <theT1,theT2>
123 --- of the pave block
126 theOther: PaveBlock from BOPDS)
127 returns Boolean from Standard;
130 --- Returns true if the pave block has pave indices
131 --- that equal to the pave indices of the pave block
135 theIndex1:out Integer from Standard;
136 theIndex2:out Integer from Standard);
139 --- Returns the pave indices <theIndex1,theIndex2>
140 --- of the pave block
146 returns Boolean from Standard;
149 --- Returns true if the pave block contains extra paves
151 AppendExtPave(me:mutable;
152 theLP:Pave from BOPDS);
155 --- Appends extra paves <theLP>
157 AppendExtPave1(me:mutable;
158 thePave:Pave from BOPDS);
161 --- Appends extra pave <thePave>
164 returns ListOfPave from BOPDS;
165 ---C++: return const &
168 --- Returns the extra paves
170 ChangeExtPaves(me:mutable)
171 returns ListOfPave from BOPDS;
174 --- Selector / Modifier
175 --- Returns the extra paves
178 theLPB : out ListOfPaveBlock from BOPDS;
179 theFlag : Boolean from Standard=Standard_True);
182 --- Updates the pave block. The extra paves are used
183 --- to create new pave blocks <theLPB>.
184 --- <theFlag> - if true, the first pave and the second
185 --- pave are used to produce new pave blocks.
187 ContainsParameter(me;
188 thePrm:Real from Standard;
189 theTol:Real from Standard)
190 returns Boolean from Standard;
193 --- Returns true if the extra paves contain the pave
194 --- with given value of the parameter <thePrm>
195 --- <theTol> - the value of the tolerance to compare
200 SetShrunkData(me:mutable;
201 theTS1:Real from Standard;
202 theTS2:Real from Standard;
203 theBox:Box from Bnd);
206 --- Sets the shrunk data for the pave block
207 --- <theTS1>, <theTS2> - shrunk range
208 --- <theBox> - the bounding box
211 theTS1:out Real from Standard;
212 theTS2:out Real from Standard;
213 theBox:out Box from Bnd);
216 --- Returns the shrunk data for the pave block
217 --- <theTS1>, <theTS2> - shrunk range
218 --- <theBox> - the bounding box
221 returns Boolean from Standard;
224 --- Returns true if the pave block contains
232 myAllocator : BaseAllocator from BOPCol is protected;
233 myEdge : Integer from Standard is protected;
234 myOriginalEdge : Integer from Standard is protected;
235 myPave1 : Pave from BOPDS is protected;
236 myPave2 : Pave from BOPDS is protected;
238 myExtPaves : ListOfPave from BOPDS is protected;
240 myTS1 : Real from Standard is protected;
241 myTS2 : Real from Standard is protected;
242 myShrunkBox : Box from Bnd is protected;
244 myMFence : MapOfInteger from BOPCol is protected;