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
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.
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 mutable PaveBlock from BOPDS;
39 Create (theAllocator: BaseAllocator from BOPCol)
40 returns mutable 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;