Developer Documentation

PolyConnectivity_inline_impl.hh
1 /* ========================================================================= *
2 * *
3 * OpenMesh *
4 * Copyright (c) 2001-2015, RWTH-Aachen University *
5 * Department of Computer Graphics and Multimedia *
6 * All rights reserved. *
7 * www.openmesh.org *
8 * *
9 *---------------------------------------------------------------------------*
10 * This file is part of OpenMesh. *
11 *---------------------------------------------------------------------------*
12 * *
13 * Redistribution and use in source and binary forms, with or without *
14 * modification, are permitted provided that the following conditions *
15 * are met: *
16 * *
17 * 1. Redistributions of source code must retain the above copyright notice, *
18 * this list of conditions and the following disclaimer. *
19 * *
20 * 2. Redistributions in binary form must reproduce the above copyright *
21 * notice, this list of conditions and the following disclaimer in the *
22 * documentation and/or other materials provided with the distribution. *
23 * *
24 * 3. Neither the name of the copyright holder nor the names of its *
25 * contributors may be used to endorse or promote products derived from *
26 * this software without specific prior written permission. *
27 * *
28 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
29 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
30 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
31 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER *
32 * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
33 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
34 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR *
35 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
36 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING *
37 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
38 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
39 * *
40 * ========================================================================= */
41
42 #ifndef OPENMESH_POLYCONNECTIVITY_INLINE_IMPL_HH
43 #define OPENMESH_POLYCONNECTIVITY_INLINE_IMPL_HH
44
45 #include <OpenMesh/Core/Mesh/PolyConnectivity.hh>
46 #include <OpenMesh/Core/Mesh/IteratorsT.hh>
47 #include <OpenMesh/Core/Mesh/CirculatorsT.hh>
48 #include <OpenMesh/Core/Mesh/SmartHandles.hh>
49
50 namespace OpenMesh {
51
52
53 inline SmartVertexHandle PolyConnectivity::add_vertex() { return make_smart(new_vertex(), *this); }
54
55 inline SmartHalfedgeHandle PolyConnectivity::next_halfedge_handle(SmartHalfedgeHandle _heh) const { return make_smart(next_halfedge_handle(HalfedgeHandle(_heh)), *this); }
56 inline SmartHalfedgeHandle PolyConnectivity::prev_halfedge_handle(SmartHalfedgeHandle _heh) const { return make_smart(prev_halfedge_handle(HalfedgeHandle(_heh)), *this); }
57 inline SmartHalfedgeHandle PolyConnectivity::opposite_halfedge_handle(SmartHalfedgeHandle _heh) const { return make_smart(opposite_halfedge_handle(HalfedgeHandle(_heh)), *this); }
58 inline SmartHalfedgeHandle PolyConnectivity::ccw_rotated_halfedge_handle(SmartHalfedgeHandle _heh) const { return make_smart(ccw_rotated_halfedge_handle(HalfedgeHandle(_heh)), *this); }
59 inline SmartHalfedgeHandle PolyConnectivity::cw_rotated_halfedge_handle(SmartHalfedgeHandle _heh) const { return make_smart(cw_rotated_halfedge_handle(HalfedgeHandle(_heh)), *this); }
60
61 inline SmartHalfedgeHandle PolyConnectivity::s_halfedge_handle(SmartEdgeHandle _eh, unsigned int _i) { return make_smart(ArrayKernel::s_halfedge_handle(EdgeHandle(_eh), _i), _eh.mesh()); }
62 inline SmartEdgeHandle PolyConnectivity::s_edge_handle(SmartHalfedgeHandle _heh) { return make_smart(ArrayKernel::s_edge_handle(HalfedgeHandle(_heh)), _heh.mesh()); }
63
64 inline SmartHalfedgeHandle PolyConnectivity::halfedge_handle(SmartEdgeHandle _eh, unsigned int _i) const { return make_smart(halfedge_handle(EdgeHandle(_eh), _i), *this); }
65 inline SmartEdgeHandle PolyConnectivity::edge_handle(SmartHalfedgeHandle _heh) const { return make_smart(edge_handle(HalfedgeHandle(_heh)), *this); }
66 inline SmartHalfedgeHandle PolyConnectivity::halfedge_handle(SmartFaceHandle _fh) const { return make_smart(halfedge_handle(FaceHandle(_fh)), *this); }
67 inline SmartHalfedgeHandle PolyConnectivity::halfedge_handle(SmartVertexHandle _vh) const { return make_smart(halfedge_handle(VertexHandle(_vh)), *this); }
68
69 inline SmartFaceHandle PolyConnectivity::face_handle(SmartHalfedgeHandle _heh) const { return make_smart(face_handle(HalfedgeHandle(_heh)), *this); }
70
71
72
74 template <typename RangeTraitT>
75 class EntityRange : public SmartRangeT<EntityRange<RangeTraitT>, typename RangeTraitT::ITER_TYPE::SmartHandle> {
76 public:
77 typedef typename RangeTraitT::ITER_TYPE iterator;
78 typedef typename RangeTraitT::ITER_TYPE const_iterator;
79
80 explicit EntityRange(typename RangeTraitT::CONTAINER_TYPE &container) : container_(container) {}
81 typename RangeTraitT::ITER_TYPE begin() const { return RangeTraitT::begin(container_); }
82 typename RangeTraitT::ITER_TYPE end() const { return RangeTraitT::end(container_); }
83
84 private:
85 typename RangeTraitT::CONTAINER_TYPE &container_;
86 };
87
89 template <typename CirculatorRangeTraitT>
90 //class CirculatorRange : public SmartRangeT<CirculatorRange<CirculatorRangeTraitT>, decltype (make_smart(std::declval<typename CirculatorRangeTraitT::TO_ENTITYE_TYPE>(), std::declval<PolyConnectivity>()))>{
91 class CirculatorRange : public SmartRangeT<CirculatorRange<CirculatorRangeTraitT>, typename SmartHandle<typename CirculatorRangeTraitT::TO_ENTITYE_TYPE>::type>{
92 public:
93 typedef typename CirculatorRangeTraitT::ITER_TYPE ITER_TYPE;
94 typedef typename CirculatorRangeTraitT::CENTER_ENTITY_TYPE CENTER_ENTITY_TYPE;
95 typedef typename CirculatorRangeTraitT::CONTAINER_TYPE CONTAINER_TYPE;
96 typedef ITER_TYPE iterator;
97 typedef ITER_TYPE const_iterator;
98
99 CirculatorRange(
100 const CONTAINER_TYPE &container,
101 CENTER_ENTITY_TYPE center) :
102 container_(container), center_(center) {}
103 ITER_TYPE begin() const { return CirculatorRangeTraitT::begin(container_, center_); }
104 ITER_TYPE end() const { return CirculatorRangeTraitT::end(container_, center_); }
105
106 private:
107 const CONTAINER_TYPE &container_;
108 CENTER_ENTITY_TYPE center_;
109 };
110
111
112 inline PolyConnectivity::ConstVertexRangeSkipping PolyConnectivity::vertices() const { return ConstVertexRangeSkipping(*this); }
113 inline PolyConnectivity::ConstVertexRange PolyConnectivity::all_vertices() const { return ConstVertexRange(*this); }
114 inline PolyConnectivity::ConstHalfedgeRangeSkipping PolyConnectivity::halfedges() const { return ConstHalfedgeRangeSkipping(*this); }
115 inline PolyConnectivity::ConstHalfedgeRange PolyConnectivity::all_halfedges() const { return ConstHalfedgeRange(*this); }
116 inline PolyConnectivity::ConstEdgeRangeSkipping PolyConnectivity::edges() const { return ConstEdgeRangeSkipping(*this); }
117 inline PolyConnectivity::ConstEdgeRange PolyConnectivity::all_edges() const { return ConstEdgeRange(*this); }
118 inline PolyConnectivity::ConstFaceRangeSkipping PolyConnectivity::faces() const { return ConstFaceRangeSkipping(*this); }
119 inline PolyConnectivity::ConstFaceRange PolyConnectivity::all_faces() const { return ConstFaceRange(*this); }
120
121 template <> inline PolyConnectivity::ConstVertexRangeSkipping PolyConnectivity::elements<VertexHandle>() const { return vertices(); }
122 template <> inline PolyConnectivity::ConstVertexRange PolyConnectivity::all_elements<VertexHandle>() const { return all_vertices(); }
123 template <> inline PolyConnectivity::ConstHalfedgeRangeSkipping PolyConnectivity::elements<HalfedgeHandle>() const { return halfedges(); }
124 template <> inline PolyConnectivity::ConstHalfedgeRange PolyConnectivity::all_elements<HalfedgeHandle>() const { return all_halfedges(); }
125 template <> inline PolyConnectivity::ConstEdgeRangeSkipping PolyConnectivity::elements<EdgeHandle>() const { return edges(); }
126 template <> inline PolyConnectivity::ConstEdgeRange PolyConnectivity::all_elements<EdgeHandle>() const { return all_edges(); }
127 template <> inline PolyConnectivity::ConstFaceRangeSkipping PolyConnectivity::elements<FaceHandle>() const { return faces(); }
128 template <> inline PolyConnectivity::ConstFaceRange PolyConnectivity::all_elements<FaceHandle>() const { return all_faces(); }
129
130
131 inline PolyConnectivity::ConstVertexVertexRange PolyConnectivity::vv_range(VertexHandle _vh) const {
132 return ConstVertexVertexRange(*this, _vh);
133 }
134
135 inline PolyConnectivity::ConstVertexIHalfedgeRange PolyConnectivity::vih_range(VertexHandle _vh) const {
136 return ConstVertexIHalfedgeRange(*this, _vh);
137 }
138
139 inline PolyConnectivity::ConstVertexOHalfedgeRange PolyConnectivity::voh_range(VertexHandle _vh) const {
140 return ConstVertexOHalfedgeRange(*this, _vh);
141 }
142
143 inline PolyConnectivity::ConstVertexEdgeRange PolyConnectivity::ve_range(VertexHandle _vh) const {
144 return ConstVertexEdgeRange(*this, _vh);
145 }
146
147 inline PolyConnectivity::ConstVertexFaceRange PolyConnectivity::vf_range(VertexHandle _vh) const {
148 return ConstVertexFaceRange(*this, _vh);
149 }
150
151 inline PolyConnectivity::ConstFaceVertexRange PolyConnectivity::fv_range(FaceHandle _fh) const {
152 return ConstFaceVertexRange(*this, _fh);
153 }
154
155 inline PolyConnectivity::ConstFaceHalfedgeRange PolyConnectivity::fh_range(FaceHandle _fh) const {
156 return ConstFaceHalfedgeRange(*this, _fh);
157 }
158
159 inline PolyConnectivity::ConstFaceEdgeRange PolyConnectivity::fe_range(FaceHandle _fh) const {
160 return ConstFaceEdgeRange(*this, _fh);
161 }
162
163 inline PolyConnectivity::ConstFaceFaceRange PolyConnectivity::ff_range(FaceHandle _fh) const {
164 return ConstFaceFaceRange(*this, _fh);
165 }
166
167
168
169 inline PolyConnectivity::VertexIter PolyConnectivity::vertices_begin()
170 { return VertexIter(*this, VertexHandle(0)); }
171
172 inline PolyConnectivity::ConstVertexIter PolyConnectivity::vertices_begin() const
173 { return ConstVertexIter(*this, VertexHandle(0)); }
174
175 inline PolyConnectivity::VertexIter PolyConnectivity::vertices_end()
176 { return VertexIter(*this, VertexHandle( int(n_vertices() ) )); }
177
178 inline PolyConnectivity::ConstVertexIter PolyConnectivity::vertices_end() const
179 { return ConstVertexIter(*this, VertexHandle( int(n_vertices()) )); }
180
181 inline PolyConnectivity::HalfedgeIter PolyConnectivity::halfedges_begin()
182 { return HalfedgeIter(*this, HalfedgeHandle(0)); }
183
184 inline PolyConnectivity::ConstHalfedgeIter PolyConnectivity::halfedges_begin() const
185 { return ConstHalfedgeIter(*this, HalfedgeHandle(0)); }
186
187 inline PolyConnectivity::HalfedgeIter PolyConnectivity::halfedges_end()
188 { return HalfedgeIter(*this, HalfedgeHandle(int(n_halfedges()))); }
189
190 inline PolyConnectivity::ConstHalfedgeIter PolyConnectivity::halfedges_end() const
191 { return ConstHalfedgeIter(*this, HalfedgeHandle(int(n_halfedges()))); }
192
193 inline PolyConnectivity::EdgeIter PolyConnectivity::edges_begin()
194 { return EdgeIter(*this, EdgeHandle(0)); }
195
196 inline PolyConnectivity::ConstEdgeIter PolyConnectivity::edges_begin() const
197 { return ConstEdgeIter(*this, EdgeHandle(0)); }
198
199 inline PolyConnectivity::EdgeIter PolyConnectivity::edges_end()
200 { return EdgeIter(*this, EdgeHandle(int(n_edges()))); }
201
202 inline PolyConnectivity::ConstEdgeIter PolyConnectivity::edges_end() const
203 { return ConstEdgeIter(*this, EdgeHandle(int(n_edges()))); }
204
205 inline PolyConnectivity::FaceIter PolyConnectivity::faces_begin()
206 { return FaceIter(*this, FaceHandle(0)); }
207
208 inline PolyConnectivity::ConstFaceIter PolyConnectivity::faces_begin() const
209 { return ConstFaceIter(*this, FaceHandle(0)); }
210
211 inline PolyConnectivity::FaceIter PolyConnectivity::faces_end()
212 { return FaceIter(*this, FaceHandle(int(n_faces()))); }
213
214
215 inline PolyConnectivity::ConstFaceIter PolyConnectivity::faces_end() const
216 { return ConstFaceIter(*this, FaceHandle(int(n_faces()))); }
217
218 inline PolyConnectivity::VertexIter PolyConnectivity::vertices_sbegin()
219 { return VertexIter(*this, VertexHandle(0), true); }
220
221 inline PolyConnectivity::ConstVertexIter PolyConnectivity::vertices_sbegin() const
222 { return ConstVertexIter(*this, VertexHandle(0), true); }
223
224 inline PolyConnectivity::HalfedgeIter PolyConnectivity::halfedges_sbegin()
225 { return HalfedgeIter(*this, HalfedgeHandle(0), true); }
226
227 inline PolyConnectivity::ConstHalfedgeIter PolyConnectivity::halfedges_sbegin() const
228 { return ConstHalfedgeIter(*this, HalfedgeHandle(0), true); }
229
230 inline PolyConnectivity::EdgeIter PolyConnectivity::edges_sbegin()
231 { return EdgeIter(*this, EdgeHandle(0), true); }
232
233 inline PolyConnectivity::ConstEdgeIter PolyConnectivity::edges_sbegin() const
234 { return ConstEdgeIter(*this, EdgeHandle(0), true); }
235
236 inline PolyConnectivity::FaceIter PolyConnectivity::faces_sbegin()
237 { return FaceIter(*this, FaceHandle(0), true); }
238
239 inline PolyConnectivity::ConstFaceIter PolyConnectivity::faces_sbegin() const
240 { return ConstFaceIter(*this, FaceHandle(0), true); }
241
242 inline PolyConnectivity::VertexVertexIter PolyConnectivity::vv_iter(ArrayKernel::VertexHandle _vh)
243 { return VertexVertexIter(*this, _vh); }
244
245 inline PolyConnectivity::VertexVertexCWIter PolyConnectivity::vv_cwiter(ArrayKernel::VertexHandle _vh)
246 { return VertexVertexCWIter(*this, _vh); }
247
248 inline PolyConnectivity::VertexVertexCCWIter PolyConnectivity::vv_ccwiter(ArrayKernel::VertexHandle _vh)
249 { return VertexVertexCCWIter(*this, _vh); }
250
251 inline PolyConnectivity::VertexIHalfedgeIter PolyConnectivity::vih_iter(ArrayKernel::VertexHandle _vh)
252 { return VertexIHalfedgeIter(*this, _vh); }
253
254 inline PolyConnectivity::VertexIHalfedgeCWIter PolyConnectivity::vih_cwiter(ArrayKernel::VertexHandle _vh)
255 { return VertexIHalfedgeCWIter(*this, _vh); }
256
257 inline PolyConnectivity::VertexIHalfedgeCCWIter PolyConnectivity::vih_ccwiter(ArrayKernel::VertexHandle _vh)
258 { return VertexIHalfedgeCCWIter(*this, _vh); }
259
260 inline PolyConnectivity::VertexOHalfedgeIter PolyConnectivity::voh_iter(ArrayKernel::VertexHandle _vh)
261 { return VertexOHalfedgeIter(*this, _vh); }
262
263 inline PolyConnectivity::VertexOHalfedgeCWIter PolyConnectivity::voh_cwiter(ArrayKernel::VertexHandle _vh)
264 { return VertexOHalfedgeCWIter(*this, _vh); }
265
266 inline PolyConnectivity::VertexOHalfedgeCCWIter PolyConnectivity::voh_ccwiter(ArrayKernel::VertexHandle _vh)
267 { return VertexOHalfedgeCCWIter(*this, _vh); }
268
269 inline PolyConnectivity::VertexEdgeIter PolyConnectivity::ve_iter(ArrayKernel::VertexHandle _vh)
270 { return VertexEdgeIter(*this, _vh); }
271
272 inline PolyConnectivity::VertexEdgeCWIter PolyConnectivity::ve_cwiter(ArrayKernel::VertexHandle _vh)
273 { return VertexEdgeCWIter(*this, _vh); }
274
275 inline PolyConnectivity::VertexEdgeCCWIter PolyConnectivity::ve_ccwiter(ArrayKernel::VertexHandle _vh)
276 { return VertexEdgeCCWIter(*this, _vh); }
277
278 inline PolyConnectivity::VertexFaceIter PolyConnectivity::vf_iter(ArrayKernel::VertexHandle _vh)
279 { return VertexFaceIter(*this, _vh); }
280
281 inline PolyConnectivity::VertexFaceCWIter PolyConnectivity::vf_cwiter(ArrayKernel::VertexHandle _vh)
282 { return VertexFaceCWIter(*this, _vh); }
283
284 inline PolyConnectivity::VertexFaceCCWIter PolyConnectivity::vf_ccwiter(ArrayKernel::VertexHandle _vh)
285 { return VertexFaceCCWIter(*this, _vh); }
286
287 inline PolyConnectivity::ConstVertexVertexIter PolyConnectivity::cvv_iter(ArrayKernel::VertexHandle _vh) const
288 { return ConstVertexVertexIter(*this, _vh); }
289
290 inline PolyConnectivity::ConstVertexVertexCWIter PolyConnectivity::cvv_cwiter(ArrayKernel::VertexHandle _vh) const
291 { return ConstVertexVertexCWIter(*this, _vh); }
292
293 inline PolyConnectivity::ConstVertexVertexCCWIter PolyConnectivity::cvv_ccwiter(ArrayKernel::VertexHandle _vh) const
294 { return ConstVertexVertexCCWIter(*this, _vh); }
295
296 inline PolyConnectivity::ConstVertexIHalfedgeIter PolyConnectivity::cvih_iter(ArrayKernel::VertexHandle _vh) const
297 { return ConstVertexIHalfedgeIter(*this, _vh); }
298
299 inline PolyConnectivity::ConstVertexIHalfedgeCWIter PolyConnectivity::cvih_cwiter(ArrayKernel::VertexHandle _vh) const
300 { return ConstVertexIHalfedgeCWIter(*this, _vh); }
301
302 inline PolyConnectivity::ConstVertexIHalfedgeCCWIter PolyConnectivity::cvih_ccwiter(ArrayKernel::VertexHandle _vh) const
303 { return ConstVertexIHalfedgeCCWIter(*this, _vh); }
304
305 inline PolyConnectivity::ConstVertexOHalfedgeIter PolyConnectivity::cvoh_iter(ArrayKernel::VertexHandle _vh) const
306 { return ConstVertexOHalfedgeIter(*this, _vh); }
307
308 inline PolyConnectivity::ConstVertexOHalfedgeCWIter PolyConnectivity::cvoh_cwiter(ArrayKernel::VertexHandle _vh) const
309 { return ConstVertexOHalfedgeCWIter(*this, _vh); }
310
311 inline PolyConnectivity::ConstVertexOHalfedgeCCWIter PolyConnectivity::cvoh_ccwiter(ArrayKernel::VertexHandle _vh) const
312 { return ConstVertexOHalfedgeCCWIter(*this, _vh); }
313
314 inline PolyConnectivity::ConstVertexEdgeIter PolyConnectivity::cve_iter(ArrayKernel::VertexHandle _vh) const
315 { return ConstVertexEdgeIter(*this, _vh); }
316
317 inline PolyConnectivity::ConstVertexEdgeCWIter PolyConnectivity::cve_cwiter(ArrayKernel::VertexHandle _vh) const
318 { return ConstVertexEdgeCWIter(*this, _vh); }
319
320 inline PolyConnectivity::ConstVertexEdgeCCWIter PolyConnectivity::cve_ccwiter(ArrayKernel::VertexHandle _vh) const
321 { return ConstVertexEdgeCCWIter(*this, _vh); }
322
323 inline PolyConnectivity::ConstVertexFaceIter PolyConnectivity::cvf_iter(ArrayKernel::VertexHandle _vh) const
324 { return ConstVertexFaceIter(*this, _vh); }
325
326 inline PolyConnectivity::ConstVertexFaceCWIter PolyConnectivity::cvf_cwiter(ArrayKernel::VertexHandle _vh) const
327 { return ConstVertexFaceCWIter(*this, _vh); }
328
329 inline PolyConnectivity::ConstVertexFaceCCWIter PolyConnectivity::cvf_ccwiter(ArrayKernel::VertexHandle _vh) const
330 { return ConstVertexFaceCCWIter(*this, _vh); }
331
332 inline PolyConnectivity::FaceVertexIter PolyConnectivity::fv_iter(ArrayKernel::FaceHandle _fh)
333 { return FaceVertexIter(*this, _fh); }
334
335 inline PolyConnectivity::FaceVertexCWIter PolyConnectivity::fv_cwiter(ArrayKernel::FaceHandle _fh)
336 { return FaceVertexCWIter(*this, _fh); }
337
338 inline PolyConnectivity::FaceVertexCCWIter PolyConnectivity::fv_ccwiter(ArrayKernel::FaceHandle _fh)
339 { return FaceVertexCCWIter(*this, _fh); }
340
341 inline PolyConnectivity::FaceHalfedgeIter PolyConnectivity::fh_iter(ArrayKernel::FaceHandle _fh)
342 { return FaceHalfedgeIter(*this, _fh); }
343
344 inline PolyConnectivity::FaceHalfedgeCWIter PolyConnectivity::fh_cwiter(ArrayKernel::FaceHandle _fh)
345 { return FaceHalfedgeCWIter(*this, _fh); }
346
347 inline PolyConnectivity::FaceHalfedgeCCWIter PolyConnectivity::fh_ccwiter(ArrayKernel::FaceHandle _fh)
348 { return FaceHalfedgeCCWIter(*this, _fh); }
349
350 inline PolyConnectivity::FaceEdgeIter PolyConnectivity::fe_iter(ArrayKernel::FaceHandle _fh)
351 { return FaceEdgeIter(*this, _fh); }
352
353 inline PolyConnectivity::FaceEdgeCWIter PolyConnectivity::fe_cwiter(ArrayKernel::FaceHandle _fh)
354 { return FaceEdgeCWIter(*this, _fh); }
355
356 inline PolyConnectivity::FaceEdgeCCWIter PolyConnectivity::fe_ccwiter(ArrayKernel::FaceHandle _fh)
357 { return FaceEdgeCCWIter(*this, _fh); }
358
359 inline PolyConnectivity::FaceFaceIter PolyConnectivity::ff_iter(ArrayKernel::FaceHandle _fh)
360 { return FaceFaceIter(*this, _fh); }
361
362 inline PolyConnectivity::FaceFaceCWIter PolyConnectivity::ff_cwiter(ArrayKernel::FaceHandle _fh)
363 { return FaceFaceCWIter(*this, _fh); }
364
365 inline PolyConnectivity::FaceFaceCCWIter PolyConnectivity::ff_ccwiter(ArrayKernel::FaceHandle _fh)
366 { return FaceFaceCCWIter(*this, _fh); }
367
368 inline PolyConnectivity::ConstFaceVertexIter PolyConnectivity::cfv_iter(ArrayKernel::FaceHandle _fh) const
369 { return ConstFaceVertexIter(*this, _fh); }
370
371 inline PolyConnectivity::ConstFaceVertexCWIter PolyConnectivity::cfv_cwiter(ArrayKernel::FaceHandle _fh) const
372 { return ConstFaceVertexCWIter(*this, _fh); }
373
374 inline PolyConnectivity::ConstFaceVertexCCWIter PolyConnectivity::cfv_ccwiter(ArrayKernel::FaceHandle _fh) const
375 { return ConstFaceVertexCCWIter(*this, _fh); }
376
377 inline PolyConnectivity::ConstFaceHalfedgeIter PolyConnectivity::cfh_iter(ArrayKernel::FaceHandle _fh) const
378 { return ConstFaceHalfedgeIter(*this, _fh); }
379
380 inline PolyConnectivity::ConstFaceHalfedgeCWIter PolyConnectivity::cfh_cwiter(ArrayKernel::FaceHandle _fh) const
381 { return ConstFaceHalfedgeCWIter(*this, _fh); }
382
383 inline PolyConnectivity::ConstFaceHalfedgeCCWIter PolyConnectivity::cfh_ccwiter(ArrayKernel::FaceHandle _fh) const
384 { return ConstFaceHalfedgeCCWIter(*this, _fh); }
385
386 inline PolyConnectivity::ConstFaceEdgeIter PolyConnectivity::cfe_iter(ArrayKernel::FaceHandle _fh) const
387 { return ConstFaceEdgeIter(*this, _fh); }
388
389 inline PolyConnectivity::ConstFaceEdgeCWIter PolyConnectivity::cfe_cwiter(ArrayKernel::FaceHandle _fh) const
390 { return ConstFaceEdgeCWIter(*this, _fh); }
391
392 inline PolyConnectivity::ConstFaceEdgeCCWIter PolyConnectivity::cfe_ccwiter(ArrayKernel::FaceHandle _fh) const
393 { return ConstFaceEdgeCCWIter(*this, _fh); }
394
395 inline PolyConnectivity::ConstFaceFaceIter PolyConnectivity::cff_iter(ArrayKernel::FaceHandle _fh) const
396 { return ConstFaceFaceIter(*this, _fh); }
397
398 inline PolyConnectivity::ConstFaceFaceCWIter PolyConnectivity::cff_cwiter(ArrayKernel::FaceHandle _fh) const
399 { return ConstFaceFaceCWIter(*this, _fh); }
400
401 inline PolyConnectivity::ConstFaceFaceCCWIter PolyConnectivity::cff_ccwiter(ArrayKernel::FaceHandle _fh) const
402 { return ConstFaceFaceCCWIter(*this, _fh); }
403
404
405 inline PolyConnectivity::VertexVertexIter PolyConnectivity::vv_begin(VertexHandle _vh)
406 { return VertexVertexIter(*this, _vh); }
407
408 inline PolyConnectivity::VertexVertexCWIter PolyConnectivity::vv_cwbegin(VertexHandle _vh)
409 { return VertexVertexCWIter(*this, _vh); }
410
411 inline PolyConnectivity::VertexVertexCCWIter PolyConnectivity::vv_ccwbegin(VertexHandle _vh)
412 { return VertexVertexCCWIter(*this, _vh); }
413
414 inline PolyConnectivity::VertexIHalfedgeIter PolyConnectivity::vih_begin(VertexHandle _vh)
415 { return VertexIHalfedgeIter(*this, _vh); }
416
417 inline PolyConnectivity::VertexIHalfedgeCWIter PolyConnectivity::vih_cwbegin(VertexHandle _vh)
418 { return VertexIHalfedgeCWIter(*this, _vh); }
419
420 inline PolyConnectivity::VertexIHalfedgeCCWIter PolyConnectivity::vih_ccwbegin(VertexHandle _vh)
421 { return VertexIHalfedgeCCWIter(*this, _vh); }
422
423 inline PolyConnectivity::VertexOHalfedgeIter PolyConnectivity::voh_begin(VertexHandle _vh)
424 { return VertexOHalfedgeIter(*this, _vh); }
425
426 inline PolyConnectivity::VertexOHalfedgeCWIter PolyConnectivity::voh_cwbegin(VertexHandle _vh)
427 { return VertexOHalfedgeCWIter(*this, _vh); }
428
429 inline PolyConnectivity::VertexOHalfedgeCCWIter PolyConnectivity::voh_ccwbegin(VertexHandle _vh)
430 { return VertexOHalfedgeCCWIter(*this, _vh); }
431
432 inline PolyConnectivity::VertexEdgeIter PolyConnectivity::ve_begin(VertexHandle _vh)
433 { return VertexEdgeIter(*this, _vh); }
434
435 inline PolyConnectivity::VertexEdgeCWIter PolyConnectivity::ve_cwbegin(VertexHandle _vh)
436 { return VertexEdgeCWIter(*this, _vh); }
437
438 inline PolyConnectivity::VertexEdgeCCWIter PolyConnectivity::ve_ccwbegin(VertexHandle _vh)
439 { return VertexEdgeCCWIter(*this, _vh); }
440
441 inline PolyConnectivity::VertexFaceIter PolyConnectivity::vf_begin(VertexHandle _vh)
442 { return VertexFaceIter(*this, _vh); }
443
444 inline PolyConnectivity::VertexFaceCWIter PolyConnectivity::vf_cwbegin(VertexHandle _vh)
445 { return VertexFaceCWIter(*this, _vh); }
446
447 inline PolyConnectivity::VertexFaceCCWIter PolyConnectivity::vf_ccwbegin(VertexHandle _vh)
448 { return VertexFaceCCWIter(*this, _vh); }
449
450
451 inline PolyConnectivity::ConstVertexVertexIter PolyConnectivity::cvv_begin(VertexHandle _vh) const
452 { return ConstVertexVertexIter(*this, _vh); }
453
454 inline PolyConnectivity::ConstVertexVertexCWIter PolyConnectivity::cvv_cwbegin(VertexHandle _vh) const
455 { return ConstVertexVertexCWIter(*this, _vh); }
456
457 inline PolyConnectivity::ConstVertexVertexCCWIter PolyConnectivity::cvv_ccwbegin(VertexHandle _vh) const
458 { return ConstVertexVertexCCWIter(*this, _vh); }
459
460 inline PolyConnectivity::ConstVertexIHalfedgeIter PolyConnectivity::cvih_begin(VertexHandle _vh) const
461 { return ConstVertexIHalfedgeIter(*this, _vh); }
462
463 inline PolyConnectivity::ConstVertexIHalfedgeCWIter PolyConnectivity::cvih_cwbegin(VertexHandle _vh) const
464 { return ConstVertexIHalfedgeCWIter(*this, _vh); }
465
466 inline PolyConnectivity::ConstVertexIHalfedgeCCWIter PolyConnectivity::cvih_ccwbegin(VertexHandle _vh) const
467 { return ConstVertexIHalfedgeCCWIter(*this, _vh); }
468
469 inline PolyConnectivity::ConstVertexOHalfedgeIter PolyConnectivity::cvoh_begin(VertexHandle _vh) const
470 { return ConstVertexOHalfedgeIter(*this, _vh); }
471
472 inline PolyConnectivity::ConstVertexOHalfedgeCWIter PolyConnectivity::cvoh_cwbegin(VertexHandle _vh) const
473 { return ConstVertexOHalfedgeCWIter(*this, _vh); }
474
475 inline PolyConnectivity::ConstVertexOHalfedgeCCWIter PolyConnectivity::cvoh_ccwbegin(VertexHandle _vh) const
476 { return ConstVertexOHalfedgeCCWIter(*this, _vh); }
477
478 inline PolyConnectivity::ConstVertexEdgeIter PolyConnectivity::cve_begin(VertexHandle _vh) const
479 { return ConstVertexEdgeIter(*this, _vh); }
480
481 inline PolyConnectivity::ConstVertexEdgeCWIter PolyConnectivity::cve_cwbegin(VertexHandle _vh) const
482 { return ConstVertexEdgeCWIter(*this, _vh); }
483
484 inline PolyConnectivity::ConstVertexEdgeCCWIter PolyConnectivity::cve_ccwbegin(VertexHandle _vh) const
485 { return ConstVertexEdgeCCWIter(*this, _vh); }
486
487 inline PolyConnectivity::ConstVertexFaceIter PolyConnectivity::cvf_begin(VertexHandle _vh) const
488 { return ConstVertexFaceIter(*this, _vh); }
489
490 inline PolyConnectivity::ConstVertexFaceCWIter PolyConnectivity::cvf_cwbegin(VertexHandle _vh) const
491 { return ConstVertexFaceCWIter(*this, _vh); }
492
493 inline PolyConnectivity::ConstVertexFaceCCWIter PolyConnectivity::cvf_ccwbegin(VertexHandle _vh) const
494 { return ConstVertexFaceCCWIter(*this, _vh); }
495
496
497 inline PolyConnectivity::FaceVertexIter PolyConnectivity::fv_begin(FaceHandle _fh)
498 { return FaceVertexIter(*this, _fh); }
499
500 inline PolyConnectivity::FaceVertexCWIter PolyConnectivity::fv_cwbegin(FaceHandle _fh)
501 { return FaceVertexCWIter(*this, _fh); }
502
503 inline PolyConnectivity::FaceVertexCCWIter PolyConnectivity::fv_ccwbegin(FaceHandle _fh)
504 { return FaceVertexCCWIter(*this, _fh); }
505
506 inline PolyConnectivity::FaceHalfedgeIter PolyConnectivity::fh_begin(FaceHandle _fh)
507 { return FaceHalfedgeIter(*this, _fh); }
508
509 inline PolyConnectivity::FaceHalfedgeCWIter PolyConnectivity::fh_cwbegin(FaceHandle _fh)
510 { return FaceHalfedgeCWIter(*this, _fh); }
511
512 inline PolyConnectivity::FaceHalfedgeCCWIter PolyConnectivity::fh_ccwbegin(FaceHandle _fh)
513 { return FaceHalfedgeCCWIter(*this, _fh); }
514
515 inline PolyConnectivity::FaceEdgeIter PolyConnectivity::fe_begin(FaceHandle _fh)
516 { return FaceEdgeIter(*this, _fh); }
517
518 inline PolyConnectivity::FaceEdgeCWIter PolyConnectivity::fe_cwbegin(FaceHandle _fh)
519 { return FaceEdgeCWIter(*this, _fh); }
520
521 inline PolyConnectivity::FaceEdgeCCWIter PolyConnectivity::fe_ccwbegin(FaceHandle _fh)
522 { return FaceEdgeCCWIter(*this, _fh); }
523
524 inline PolyConnectivity::FaceFaceIter PolyConnectivity::ff_begin(FaceHandle _fh)
525 { return FaceFaceIter(*this, _fh); }
526
527 inline PolyConnectivity::FaceFaceCWIter PolyConnectivity::ff_cwbegin(FaceHandle _fh)
528 { return FaceFaceCWIter(*this, _fh); }
529
530 inline PolyConnectivity::FaceFaceCCWIter PolyConnectivity::ff_ccwbegin(FaceHandle _fh)
531 { return FaceFaceCCWIter(*this, _fh); }
532
533 inline PolyConnectivity::HalfedgeLoopIter PolyConnectivity::hl_begin(HalfedgeHandle _heh)
534 { return HalfedgeLoopIter(*this, _heh); }
535
536 inline PolyConnectivity::HalfedgeLoopCWIter PolyConnectivity::hl_cwbegin(HalfedgeHandle _heh)
537 { return HalfedgeLoopCWIter(*this, _heh); }
538
539 inline PolyConnectivity::HalfedgeLoopCCWIter PolyConnectivity::hl_ccwbegin(HalfedgeHandle _heh)
540 { return HalfedgeLoopCCWIter(*this, _heh); }
541
542
543 inline PolyConnectivity::ConstFaceVertexIter PolyConnectivity::cfv_begin(FaceHandle _fh) const
544 { return ConstFaceVertexIter(*this, _fh); }
545
546 inline PolyConnectivity::ConstFaceVertexCWIter PolyConnectivity::cfv_cwbegin(FaceHandle _fh) const
547 { return ConstFaceVertexCWIter(*this, _fh); }
548
549 inline PolyConnectivity::ConstFaceVertexCCWIter PolyConnectivity::cfv_ccwbegin(FaceHandle _fh) const
550 { return ConstFaceVertexCCWIter(*this, _fh); }
551
552 inline PolyConnectivity::ConstFaceHalfedgeIter PolyConnectivity::cfh_begin(FaceHandle _fh) const
553 { return ConstFaceHalfedgeIter(*this, _fh); }
554
555 inline PolyConnectivity::ConstFaceHalfedgeCWIter PolyConnectivity::cfh_cwbegin(FaceHandle _fh) const
556 { return ConstFaceHalfedgeCWIter(*this, _fh); }
557
558 inline PolyConnectivity::ConstFaceHalfedgeCCWIter PolyConnectivity::cfh_ccwbegin(FaceHandle _fh) const
559 { return ConstFaceHalfedgeCCWIter(*this, _fh); }
560
561 inline PolyConnectivity::ConstFaceEdgeIter PolyConnectivity::cfe_begin(FaceHandle _fh) const
562 { return ConstFaceEdgeIter(*this, _fh); }
563
564 inline PolyConnectivity::ConstFaceEdgeCWIter PolyConnectivity::cfe_cwbegin(FaceHandle _fh) const
565 { return ConstFaceEdgeCWIter(*this, _fh); }
566
567 inline PolyConnectivity::ConstFaceEdgeCCWIter PolyConnectivity::cfe_ccwbegin(FaceHandle _fh) const
568 { return ConstFaceEdgeCCWIter(*this, _fh); }
569
570 inline PolyConnectivity::ConstFaceFaceIter PolyConnectivity::cff_begin(FaceHandle _fh) const
571 { return ConstFaceFaceIter(*this, _fh); }
572
573 inline PolyConnectivity::ConstFaceFaceCWIter PolyConnectivity::cff_cwbegin(FaceHandle _fh) const
574 { return ConstFaceFaceCWIter(*this, _fh); }
575
576 inline PolyConnectivity::ConstFaceFaceCCWIter PolyConnectivity::cff_ccwbegin(FaceHandle _fh) const
577 { return ConstFaceFaceCCWIter(*this, _fh); }
578
579 inline PolyConnectivity::ConstHalfedgeLoopIter PolyConnectivity::chl_begin(HalfedgeHandle _heh) const
580 { return ConstHalfedgeLoopIter(*this, _heh); }
581
582 inline PolyConnectivity::ConstHalfedgeLoopCWIter PolyConnectivity::chl_cwbegin(HalfedgeHandle _heh) const
583 { return ConstHalfedgeLoopCWIter(*this, _heh); }
584
585 inline PolyConnectivity::ConstHalfedgeLoopCCWIter PolyConnectivity::chl_ccwbegin(HalfedgeHandle _heh) const
586 { return ConstHalfedgeLoopCCWIter(*this, _heh); }
587
588 // 'end' circulators
589
590 inline PolyConnectivity::VertexVertexIter PolyConnectivity::vv_end(VertexHandle _vh)
591 { return VertexVertexIter(*this, _vh, true); }
592
593 inline PolyConnectivity::VertexVertexCWIter PolyConnectivity::vv_cwend(VertexHandle _vh)
594 { return VertexVertexCWIter(*this, _vh, true); }
595
596 inline PolyConnectivity::VertexVertexCCWIter PolyConnectivity::vv_ccwend(VertexHandle _vh)
597 { return VertexVertexCCWIter(*this, _vh, true); }
598
599 inline PolyConnectivity::VertexIHalfedgeIter PolyConnectivity::vih_end(VertexHandle _vh)
600 { return VertexIHalfedgeIter(*this, _vh, true); }
601
602 inline PolyConnectivity::VertexIHalfedgeCWIter PolyConnectivity::vih_cwend(VertexHandle _vh)
603 { return VertexIHalfedgeCWIter(*this, _vh, true); }
604
605 inline PolyConnectivity::VertexIHalfedgeCCWIter PolyConnectivity::vih_ccwend(VertexHandle _vh)
606 { return VertexIHalfedgeCCWIter(*this, _vh, true); }
607
608 inline PolyConnectivity::VertexOHalfedgeIter PolyConnectivity::voh_end(VertexHandle _vh)
609 { return VertexOHalfedgeIter(*this, _vh, true); }
610
611 inline PolyConnectivity::VertexOHalfedgeCWIter PolyConnectivity::voh_cwend(VertexHandle _vh)
612 { return VertexOHalfedgeCWIter(*this, _vh, true); }
613
614 inline PolyConnectivity::VertexOHalfedgeCCWIter PolyConnectivity::voh_ccwend(VertexHandle _vh)
615 { return VertexOHalfedgeCCWIter(*this, _vh, true); }
616
617 inline PolyConnectivity::VertexEdgeIter PolyConnectivity::ve_end(VertexHandle _vh)
618 { return VertexEdgeIter(*this, _vh, true); }
619
620 inline PolyConnectivity::VertexEdgeCWIter PolyConnectivity::ve_cwend(VertexHandle _vh)
621 { return VertexEdgeCWIter(*this, _vh, true); }
622
623 inline PolyConnectivity::VertexEdgeCCWIter PolyConnectivity::ve_ccwend(VertexHandle _vh)
624 { return VertexEdgeCCWIter(*this, _vh, true); }
625
626 inline PolyConnectivity::VertexFaceIter PolyConnectivity::vf_end(VertexHandle _vh)
627 { return VertexFaceIter(*this, _vh, true); }
628
629 inline PolyConnectivity::VertexFaceCWIter PolyConnectivity::vf_cwend(VertexHandle _vh)
630 { return VertexFaceCWIter(*this, _vh, true); }
631
632 inline PolyConnectivity::VertexFaceCCWIter PolyConnectivity::vf_ccwend(VertexHandle _vh)
633 { return VertexFaceCCWIter(*this, _vh, true); }
634
635
636 inline PolyConnectivity::ConstVertexVertexIter PolyConnectivity::cvv_end(VertexHandle _vh) const
637 { return ConstVertexVertexIter(*this, _vh, true); }
638
639 inline PolyConnectivity::ConstVertexVertexCWIter PolyConnectivity::cvv_cwend(VertexHandle _vh) const
640 { return ConstVertexVertexCWIter(*this, _vh, true); }
641
642 inline PolyConnectivity::ConstVertexVertexCCWIter PolyConnectivity::cvv_ccwend(VertexHandle _vh) const
643 { return ConstVertexVertexCCWIter(*this, _vh, true); }
644
645 inline PolyConnectivity::ConstVertexIHalfedgeIter PolyConnectivity::cvih_end(VertexHandle _vh) const
646 { return ConstVertexIHalfedgeIter(*this, _vh, true); }
647
648 inline PolyConnectivity::ConstVertexIHalfedgeCWIter PolyConnectivity::cvih_cwend(VertexHandle _vh) const
649 { return ConstVertexIHalfedgeCWIter(*this, _vh, true); }
650
651 inline PolyConnectivity::ConstVertexIHalfedgeCCWIter PolyConnectivity::cvih_ccwend(VertexHandle _vh) const
652 { return ConstVertexIHalfedgeCCWIter(*this, _vh, true); }
653
654 inline PolyConnectivity::ConstVertexOHalfedgeIter PolyConnectivity::cvoh_end(VertexHandle _vh) const
655 { return ConstVertexOHalfedgeIter(*this, _vh, true); }
656
657 inline PolyConnectivity::ConstVertexOHalfedgeCWIter PolyConnectivity::cvoh_cwend(VertexHandle _vh) const
658 { return ConstVertexOHalfedgeCWIter(*this, _vh, true); }
659
660 inline PolyConnectivity::ConstVertexOHalfedgeCCWIter PolyConnectivity::cvoh_ccwend(VertexHandle _vh) const
661 { return ConstVertexOHalfedgeCCWIter(*this, _vh, true); }
662
663 inline PolyConnectivity::ConstVertexEdgeIter PolyConnectivity::cve_end(VertexHandle _vh) const
664 { return ConstVertexEdgeIter(*this, _vh, true); }
665
666 inline PolyConnectivity::ConstVertexEdgeCWIter PolyConnectivity::cve_cwend(VertexHandle _vh) const
667 { return ConstVertexEdgeCWIter(*this, _vh, true); }
668
669 inline PolyConnectivity::ConstVertexEdgeCCWIter PolyConnectivity::cve_ccwend(VertexHandle _vh) const
670 { return ConstVertexEdgeCCWIter(*this, _vh, true); }
671
672 inline PolyConnectivity::ConstVertexFaceIter PolyConnectivity::cvf_end(VertexHandle _vh) const
673 { return ConstVertexFaceIter(*this, _vh, true); }
674
675 inline PolyConnectivity::ConstVertexFaceCWIter PolyConnectivity::cvf_cwend(VertexHandle _vh) const
676 { return ConstVertexFaceCWIter(*this, _vh, true); }
677
678 inline PolyConnectivity::ConstVertexFaceCCWIter PolyConnectivity::cvf_ccwend(VertexHandle _vh) const
679 { return ConstVertexFaceCCWIter(*this, _vh, true); }
680
681
682 inline PolyConnectivity::FaceVertexIter PolyConnectivity::fv_end(FaceHandle _fh)
683 { return FaceVertexIter(*this, _fh, true); }
684
685 inline PolyConnectivity::FaceVertexCWIter PolyConnectivity::fv_cwend(FaceHandle _fh)
686 { return FaceVertexCWIter(*this, _fh, true); }
687
688 inline PolyConnectivity::FaceVertexCCWIter PolyConnectivity::fv_ccwend(FaceHandle _fh)
689 { return FaceVertexCCWIter(*this, _fh, true); }
690
691 inline PolyConnectivity::FaceHalfedgeIter PolyConnectivity::fh_end(FaceHandle _fh)
692 { return FaceHalfedgeIter(*this, _fh, true); }
693
694 inline PolyConnectivity::FaceHalfedgeCWIter PolyConnectivity::fh_cwend(FaceHandle _fh)
695 { return FaceHalfedgeCWIter(*this, _fh, true); }
696
697 inline PolyConnectivity::FaceHalfedgeCCWIter PolyConnectivity::fh_ccwend(FaceHandle _fh)
698 { return FaceHalfedgeCCWIter(*this, _fh, true); }
699
700 inline PolyConnectivity::FaceEdgeIter PolyConnectivity::fe_end(FaceHandle _fh)
701 { return FaceEdgeIter(*this, _fh, true); }
702
703 inline PolyConnectivity::FaceEdgeCWIter PolyConnectivity::fe_cwend(FaceHandle _fh)
704 { return FaceEdgeCWIter(*this, _fh, true); }
705
706 inline PolyConnectivity::FaceEdgeCCWIter PolyConnectivity::fe_ccwend(FaceHandle _fh)
707 { return FaceEdgeCCWIter(*this, _fh, true); }
708
709 inline PolyConnectivity::FaceFaceIter PolyConnectivity::ff_end(FaceHandle _fh)
710 { return FaceFaceIter(*this, _fh, true); }
711
712 inline PolyConnectivity::FaceFaceCWIter PolyConnectivity::ff_cwend(FaceHandle _fh)
713 { return FaceFaceCWIter(*this, _fh, true); }
714
715 inline PolyConnectivity::FaceFaceCCWIter PolyConnectivity::ff_ccwend(FaceHandle _fh)
716 { return FaceFaceCCWIter(*this, _fh, true); }
717
718 inline PolyConnectivity::HalfedgeLoopIter PolyConnectivity::hl_end(HalfedgeHandle _heh)
719 { return HalfedgeLoopIter(*this, _heh, true); }
720
721 inline PolyConnectivity::HalfedgeLoopCWIter PolyConnectivity::hl_cwend(HalfedgeHandle _heh)
722 { return HalfedgeLoopCWIter(*this, _heh, true); }
723
724 inline PolyConnectivity::HalfedgeLoopCCWIter PolyConnectivity::hl_ccwend(HalfedgeHandle _heh)
725 { return HalfedgeLoopCCWIter(*this, _heh, true); }
726
727
728 inline PolyConnectivity::ConstFaceVertexIter PolyConnectivity::cfv_end(FaceHandle _fh) const
729 { return ConstFaceVertexIter(*this, _fh, true); }
730
731 inline PolyConnectivity::ConstFaceVertexCWIter PolyConnectivity::cfv_cwend(FaceHandle _fh) const
732 { return ConstFaceVertexCWIter(*this, _fh, true); }
733
734 inline PolyConnectivity::ConstFaceVertexCCWIter PolyConnectivity::cfv_ccwend(FaceHandle _fh) const
735 { return ConstFaceVertexCCWIter(*this, _fh, true); }
736
737 inline PolyConnectivity::ConstFaceHalfedgeIter PolyConnectivity::cfh_end(FaceHandle _fh) const
738 { return ConstFaceHalfedgeIter(*this, _fh, true); }
739
740 inline PolyConnectivity::ConstFaceHalfedgeCWIter PolyConnectivity::cfh_cwend(FaceHandle _fh) const
741 { return ConstFaceHalfedgeCWIter(*this, _fh, true); }
742
743 inline PolyConnectivity::ConstFaceHalfedgeCCWIter PolyConnectivity::cfh_ccwend(FaceHandle _fh) const
744 { return ConstFaceHalfedgeCCWIter(*this, _fh, true); }
745
746 inline PolyConnectivity::ConstFaceEdgeIter PolyConnectivity::cfe_end(FaceHandle _fh) const
747 { return ConstFaceEdgeIter(*this, _fh, true); }
748
749 inline PolyConnectivity::ConstFaceEdgeCWIter PolyConnectivity::cfe_cwend(FaceHandle _fh) const
750 { return ConstFaceEdgeCWIter(*this, _fh, true); }
751
752 inline PolyConnectivity::ConstFaceEdgeCCWIter PolyConnectivity::cfe_ccwend(FaceHandle _fh) const
753 { return ConstFaceEdgeCCWIter(*this, _fh, true); }
754
755 inline PolyConnectivity::ConstFaceFaceIter PolyConnectivity::cff_end(FaceHandle _fh) const
756 { return ConstFaceFaceIter(*this, _fh, true); }
757
758 inline PolyConnectivity::ConstFaceFaceCWIter PolyConnectivity::cff_cwend(FaceHandle _fh) const
759 { return ConstFaceFaceCWIter(*this, _fh, true); }
760
761 inline PolyConnectivity::ConstFaceFaceCCWIter PolyConnectivity::cff_ccwend(FaceHandle _fh) const
762 { return ConstFaceFaceCCWIter(*this, _fh, true); }
763
764 inline PolyConnectivity::ConstHalfedgeLoopIter PolyConnectivity::chl_end(HalfedgeHandle _heh) const
765 { return ConstHalfedgeLoopIter(*this, _heh, true); }
766
767 inline PolyConnectivity::ConstHalfedgeLoopCWIter PolyConnectivity::chl_cwend(HalfedgeHandle _heh) const
768 { return ConstHalfedgeLoopCWIter(*this, _heh, true); }
769
770 inline PolyConnectivity::ConstHalfedgeLoopCCWIter PolyConnectivity::chl_ccwend(HalfedgeHandle _heh) const
771 { return ConstHalfedgeLoopCCWIter(*this, _heh, true); }
772
773
774 }//namespace OpenMesh
775
776 #endif // OPENMESH_POLYCONNECTIVITY_INLINE_IMPL_HH
777
OpenMesh::PolyConnectivity::VertexEdgeCCWIter
Iterators::GenericCirculatorT< VertexEdgeTraits, false > VertexEdgeCCWIter
Definition: PolyConnectivity.hh:256
OpenMesh::PolyConnectivity::cfv_cwend
ConstFaceVertexCWIter cfv_cwend(FaceHandle _fh) const
const face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:731
OpenMesh::PolyConnectivity::voh_range
ConstVertexOHalfedgeRange voh_range(VertexHandle _vh) const
Definition: PolyConnectivity_inline_impl.hh:139
OpenMesh::EdgeHandle
Handle for a edge entity.
Definition: Handles.hh:134
OpenMesh::PolyConnectivity::cfh_cwbegin
ConstFaceHalfedgeCWIter cfh_cwbegin(FaceHandle _fh) const
const face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:555
OpenMesh::FaceHandle
Handle for a face entity.
Definition: Handles.hh:141
OpenMesh::PolyConnectivity::fe_ccwiter
FaceEdgeCCWIter fe_ccwiter(FaceHandle _fh)
face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:356
OpenMesh::PolyConnectivity::chl_ccwbegin
ConstHalfedgeLoopCCWIter chl_ccwbegin(HalfedgeHandle _heh) const
const halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:585
OpenMesh::PolyConnectivity::ConstFaceHalfedgeIter
FaceHalfedgeIter ConstFaceHalfedgeIter
Definition: PolyConnectivity.hh:370
OpenMesh::PolyConnectivity::ve_range
ConstVertexEdgeRange ve_range(VertexHandle _vh) const
Definition: PolyConnectivity_inline_impl.hh:143
OpenMesh::PolyConnectivity::vv_ccwbegin
VertexVertexCCWIter vv_ccwbegin(VertexHandle _vh)
vertex - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:411
OpenMesh::PolyConnectivity::vf_begin
VertexFaceIter vf_begin(VertexHandle _vh)
vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:441
OpenMesh::PolyConnectivity::ConstVertexRangeSkipping
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_sbegin, &PolyConnectivity::vertices_end > > ConstVertexRangeSkipping
Definition: PolyConnectivity.hh:1069
OpenMesh::PolyConnectivity::vih_cwend
VertexIHalfedgeCWIter vih_cwend(VertexHandle _vh)
vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:602
OpenMesh::PolyConnectivity::ConstVertexIter
VertexIter ConstVertexIter
Linear iterator.
Definition: PolyConnectivity.hh:142
OpenMesh::PolyConnectivity::cvv_ccwiter
ConstVertexVertexCCWIter cvv_ccwiter(VertexHandle _vh) const
const vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:293
OpenMesh::PolyConnectivity::ConstFaceFaceCCWIter
FaceFaceCCWIter ConstFaceFaceCCWIter
Definition: PolyConnectivity.hh:378
OpenMesh::PolyConnectivity::vertices_end
VertexIter vertices_end()
End iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:175
OpenMesh::PolyConnectivity::cvv_begin
ConstVertexVertexIter cvv_begin(VertexHandle _vh) const
const vertex circulator
Definition: PolyConnectivity_inline_impl.hh:451
OpenMesh::PolyConnectivity::cfe_end
ConstFaceEdgeIter cfe_end(FaceHandle _fh) const
const face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:746
OpenMesh::PolyConnectivity::ConstVertexEdgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexEdgeIter, VertexHandle, EdgeHandle, &PolyConnectivity::cve_begin, &PolyConnectivity::cve_end > > ConstVertexEdgeRange
Definition: PolyConnectivity.hh:1195
OpenMesh::Iterators::GenericCirculatorT
Definition: CirculatorsT.hh:254
OpenMesh::SmartHalfedgeHandle
Definition: SmartHandles.hh:114
OpenMesh::PolyConnectivity::ConstFaceHalfedgeCWIter
FaceHalfedgeCWIter ConstFaceHalfedgeCWIter
Definition: PolyConnectivity.hh:371
OpenMesh::PolyConnectivity::cfv_begin
ConstFaceVertexIter cfv_begin(FaceHandle _fh) const
const face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:543
OpenMesh::SmartEdgeHandle
Definition: SmartHandles.hh:137
OpenMesh::PolyConnectivity::hl_begin
HalfedgeLoopIter hl_begin(HalfedgeHandle _heh)
halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:533
OpenMesh::PolyConnectivity::fv_cwbegin
FaceVertexCWIter fv_cwbegin(FaceHandle _fh)
face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:500
OpenMesh::PolyConnectivity::cvf_cwiter
ConstVertexFaceCWIter cvf_cwiter(VertexHandle _vh) const
const vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:326
OpenMesh::PolyConnectivity::cvoh_ccwbegin
ConstVertexOHalfedgeCCWIter cvoh_ccwbegin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:475
OpenMesh::SmartRangeT
Base class for all smart range types.
Definition: SmartRange.hh:70
OpenMesh::PolyConnectivity::FaceFaceIter
Iterators::GenericCirculatorT_DEPRECATED< FaceFaceTraits > FaceFaceIter
Definition: PolyConnectivity.hh:359
OpenMesh::PolyConnectivity::VertexIHalfedgeIter
Iterators::GenericCirculatorT_DEPRECATED< VertexOppositeHalfedgeTraits > VertexIHalfedgeIter
Definition: PolyConnectivity.hh:211
OpenMesh::PolyConnectivity::ConstHalfedgeLoopIter
HalfedgeLoopIter ConstHalfedgeLoopIter
Definition: PolyConnectivity.hh:383
OpenMesh::PolyConnectivity::cvv_end
ConstVertexVertexIter cvv_end(VertexHandle _vh) const
const vertex circulator
Definition: PolyConnectivity_inline_impl.hh:636
OpenMesh::PolyConnectivity::fe_ccwbegin
FaceEdgeCCWIter fe_ccwbegin(FaceHandle _fh)
face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:521
OpenMesh::PolyConnectivity::ve_begin
VertexEdgeIter ve_begin(VertexHandle _vh)
vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:432
OpenMesh::PolyConnectivity::ConstVertexVertexCWIter
VertexVertexCWIter ConstVertexVertexCWIter
Definition: PolyConnectivity.hh:278
OpenMesh::PolyConnectivity::ConstVertexOHalfedgeIter
VertexOHalfedgeIter ConstVertexOHalfedgeIter
Definition: PolyConnectivity.hh:280
OpenMesh::PolyConnectivity::ConstVertexOHalfedgeCWIter
VertexOHalfedgeCWIter ConstVertexOHalfedgeCWIter
Definition: PolyConnectivity.hh:281
OpenMesh::SmartBaseHandle::mesh
const PolyConnectivity * mesh() const
Get the underlying mesh of this handle.
Definition: SmartHandles.hh:74
OpenMesh::PolyConnectivity::ConstFaceEdgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceEdgeIter, FaceHandle, EdgeHandle, &PolyConnectivity::cfe_begin, &PolyConnectivity::cfe_end > > ConstFaceEdgeRange
Definition: PolyConnectivity.hh:1223
OpenMesh::PolyConnectivity::cfe_ccwend
ConstFaceEdgeCCWIter cfe_ccwend(FaceHandle _fh) const
const face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:752
OpenMesh::PolyConnectivity::cvih_ccwend
ConstVertexIHalfedgeCCWIter cvih_ccwend(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:651
OpenMesh::PolyConnectivity::cfh_ccwbegin
ConstFaceHalfedgeCCWIter cfh_ccwbegin(FaceHandle _fh) const
const face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:558
OpenMesh::PolyConnectivity::cff_ccwiter
ConstFaceFaceCCWIter cff_ccwiter(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:401
OpenMesh::PolyConnectivity::hl_end
HalfedgeLoopIter hl_end(HalfedgeHandle _heh)
face - face circulator
Definition: PolyConnectivity_inline_impl.hh:718
OpenMesh::PolyConnectivity::FaceEdgeIter
Iterators::GenericCirculatorT_DEPRECATED< FaceEdgeTraits > FaceEdgeIter
Definition: PolyConnectivity.hh:339
OpenMesh::PolyConnectivity::cvoh_ccwiter
ConstVertexOHalfedgeCCWIter cvoh_ccwiter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:311
OpenMesh::HalfedgeHandle
Handle for a halfedge entity.
Definition: Handles.hh:127
OpenMesh::PolyConnectivity::cfv_ccwiter
ConstFaceVertexCCWIter cfv_ccwiter(FaceHandle _fh) const
const face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:374
OpenMesh::PolyConnectivity::chl_ccwend
ConstHalfedgeLoopCCWIter chl_ccwend(HalfedgeHandle _heh) const
const face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:770
OpenMesh::PolyConnectivity::ConstVertexFaceCWIter
VertexFaceCWIter ConstVertexFaceCWIter
Definition: PolyConnectivity.hh:287
OpenMesh::PolyConnectivity::fe_begin
FaceEdgeIter fe_begin(FaceHandle _fh)
face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:515
OpenMesh::PolyConnectivity::ve_end
VertexEdgeIter ve_end(VertexHandle _vh)
vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:617
OpenMesh::PolyConnectivity::VertexFaceCWIter
Iterators::GenericCirculatorT< VertexFaceTraits, true > VertexFaceCWIter
Definition: PolyConnectivity.hh:232
OpenMesh::PolyConnectivity::vv_iter
VertexVertexIter vv_iter(VertexHandle _vh)
vertex - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:242
OpenMesh::PolyConnectivity::faces_begin
FaceIter faces_begin()
Begin iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:205
OpenMesh::PolyConnectivity::ConstFaceFaceRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceFaceIter, FaceHandle, FaceHandle, &PolyConnectivity::cff_begin, &PolyConnectivity::cff_end > > ConstFaceFaceRange
Definition: PolyConnectivity.hh:1230
OpenMesh::PolyConnectivity::fv_end
FaceVertexIter fv_end(FaceHandle _fh)
face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:682
OpenMesh::PolyConnectivity::cfv_cwiter
ConstFaceVertexCWIter cfv_cwiter(FaceHandle _fh) const
const face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:371
OpenMesh::PolyConnectivity::cfh_cwend
ConstFaceHalfedgeCWIter cfh_cwend(FaceHandle _fh) const
const face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:740
OpenMesh::PolyConnectivity::ConstVertexIHalfedgeCCWIter
VertexIHalfedgeCCWIter ConstVertexIHalfedgeCCWIter
Definition: PolyConnectivity.hh:285
OpenMesh::PolyConnectivity::vf_range
ConstVertexFaceRange vf_range(VertexHandle _vh) const
Definition: PolyConnectivity_inline_impl.hh:147
OpenMesh::PolyConnectivity::all_vertices
ConstVertexRange all_vertices() const
Definition: PolyConnectivity_inline_impl.hh:113
OpenMesh::PolyConnectivity::fh_iter
FaceHalfedgeIter fh_iter(FaceHandle _fh)
face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:341
OpenMesh::PolyConnectivity::ConstVertexEdgeIter
VertexEdgeIter ConstVertexEdgeIter
Definition: PolyConnectivity.hh:289
OpenMesh::PolyConnectivity::HalfedgeLoopCCWIter
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > HalfedgeLoopCCWIter
Definition: PolyConnectivity.hh:275
OpenMesh::PolyConnectivity::cff_cwbegin
ConstFaceFaceCWIter cff_cwbegin(FaceHandle _fh) const
const face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:573
OpenMesh::PolyConnectivity::ConstHalfedgeLoopCWIter
HalfedgeLoopCWIter ConstHalfedgeLoopCWIter
Definition: PolyConnectivity.hh:384
OpenMesh::PolyConnectivity::vv_end
VertexVertexIter vv_end(VertexHandle _vh)
vertex - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:590
OpenMesh::PolyConnectivity::ConstHalfedgeRange
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_begin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRange
Definition: PolyConnectivity.hh:1074
OpenMesh::PolyConnectivity::cvoh_iter
ConstVertexOHalfedgeIter cvoh_iter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:305
OpenMesh::PolyConnectivity::fh_cwend
FaceHalfedgeCWIter fh_cwend(FaceHandle _fh)
face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:694
OpenMesh::PolyConnectivity::cfh_begin
ConstFaceHalfedgeIter cfh_begin(FaceHandle _fh) const
const face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:552
OpenMesh::PolyConnectivity::vf_iter
VertexFaceIter vf_iter(VertexHandle _vh)
vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:278
OpenMesh::PolyConnectivity::vv_cwiter
VertexVertexCWIter vv_cwiter(VertexHandle _vh)
vertex - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:245
OpenMesh::PolyConnectivity::vertices
ConstVertexRangeSkipping vertices() const
Definition: PolyConnectivity_inline_impl.hh:112
OpenMesh::PolyConnectivity::cff_cwend
ConstFaceFaceCWIter cff_cwend(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:758
OpenMesh::PolyConnectivity::faces_end
FaceIter faces_end()
End iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:211
OpenMesh::PolyConnectivity::vih_iter
VertexIHalfedgeIter vih_iter(VertexHandle _vh)
vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:251
OpenMesh::PolyConnectivity::fe_cwend
FaceEdgeCWIter fe_cwend(FaceHandle _fh)
face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:703
OpenMesh::PolyConnectivity::cfh_ccwend
ConstFaceHalfedgeCCWIter cfh_ccwend(FaceHandle _fh) const
const face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:743
OpenMesh::PolyConnectivity::ConstVertexOHalfedgeCCWIter
VertexOHalfedgeCCWIter ConstVertexOHalfedgeCCWIter
Definition: PolyConnectivity.hh:282
OpenMesh::PolyConnectivity::cvoh_ccwend
ConstVertexOHalfedgeCCWIter cvoh_ccwend(VertexHandle _vh) const
const vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:660
OpenMesh::PolyConnectivity::vih_cwiter
VertexIHalfedgeCWIter vih_cwiter(VertexHandle _vh)
vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:254
OpenMesh::PolyConnectivity::cfe_ccwbegin
ConstFaceEdgeCCWIter cfe_ccwbegin(FaceHandle _fh) const
const face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:567
OpenMesh::PolyConnectivity::voh_ccwiter
VertexOHalfedgeCCWIter voh_ccwiter(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:266
OpenMesh::PolyConnectivity::ConstVertexVertexRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexVertexCWIter, VertexHandle, VertexHandle, &PolyConnectivity::cvv_cwbegin, &PolyConnectivity::cvv_cwend > > ConstVertexVertexRange
Definition: PolyConnectivity.hh:1174
OpenMesh::PolyConnectivity::voh_ccwbegin
VertexOHalfedgeCCWIter voh_ccwbegin(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:429
OpenMesh::VertexHandle
Handle for a vertex entity.
Definition: Handles.hh:120
OpenMesh::PolyConnectivity::voh_cwiter
VertexOHalfedgeCWIter voh_cwiter(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:263
OpenMesh::PolyConnectivity::cvv_iter
ConstVertexVertexIter cvv_iter(VertexHandle _vh) const
const vertex circulator
Definition: PolyConnectivity_inline_impl.hh:287
OpenMesh::PolyConnectivity::ConstVertexEdgeCCWIter
VertexEdgeCCWIter ConstVertexEdgeCCWIter
Definition: PolyConnectivity.hh:291
OpenMesh::PolyConnectivity::cfe_begin
ConstFaceEdgeIter cfe_begin(FaceHandle _fh) const
const face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:561
OpenMesh::PolyConnectivity::vv_cwend
VertexVertexCWIter vv_cwend(VertexHandle _vh)
vertex - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:593
OpenMesh::PolyConnectivity::ve_cwbegin
VertexEdgeCWIter ve_cwbegin(VertexHandle _vh)
vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:435
OpenMesh::PolyConnectivity::fh_ccwiter
FaceHalfedgeCCWIter fh_ccwiter(FaceHandle _fh)
face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:347
OpenMesh::PolyConnectivity::voh_end
VertexOHalfedgeIter voh_end(VertexHandle _vh)
vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:608
OpenMesh::PolyConnectivity::ConstVertexIHalfedgeIter
VertexIHalfedgeIter ConstVertexIHalfedgeIter
Definition: PolyConnectivity.hh:283
OpenMesh::PolyConnectivity::cfh_ccwiter
ConstFaceHalfedgeCCWIter cfh_ccwiter(FaceHandle _fh) const
const face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:383
OpenMesh::PolyConnectivity::vv_cwbegin
VertexVertexCWIter vv_cwbegin(VertexHandle _vh)
vertex - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:408
OpenMesh::PolyConnectivity::hl_cwend
HalfedgeLoopCWIter hl_cwend(HalfedgeHandle _heh)
face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:721
OpenMesh::PolyConnectivity::FaceVertexIter
Iterators::GenericCirculatorT_DEPRECATED< FaceVertexTraits > FaceVertexIter
Definition: PolyConnectivity.hh:308
OpenMesh::PolyConnectivity::FaceFaceCCWIter
Iterators::GenericCirculatorT< FaceFaceTraits, true > FaceFaceCCWIter
Definition: PolyConnectivity.hh:360
OpenMesh::PolyConnectivity::ConstVertexRange
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstVertexIter, &PolyConnectivity::vertices_begin, &PolyConnectivity::vertices_end > > ConstVertexRange
Definition: PolyConnectivity.hh:1064
OpenMesh::PolyConnectivity::chl_cwbegin
ConstHalfedgeLoopCWIter chl_cwbegin(HalfedgeHandle _heh) const
const halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:582
OpenMesh::PolyConnectivity::cfv_ccwbegin
ConstFaceVertexCCWIter cfv_ccwbegin(FaceHandle _fh) const
const face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:549
OpenMesh::PolyConnectivity::edges_end
EdgeIter edges_end()
End iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:199
OpenMesh::PolyConnectivity::voh_cwbegin
VertexOHalfedgeCWIter voh_cwbegin(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:426
OpenMesh::PolyConnectivity::ff_begin
FaceFaceIter ff_begin(FaceHandle _fh)
face - face circulator
Definition: PolyConnectivity_inline_impl.hh:524
OpenMesh::PolyConnectivity::ff_ccwiter
FaceFaceCCWIter ff_ccwiter(FaceHandle _fh)
face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:365
OpenMesh::PolyConnectivity::VertexFaceCCWIter
Iterators::GenericCirculatorT< VertexFaceTraits, false > VertexFaceCCWIter
Definition: PolyConnectivity.hh:237
OpenMesh::PolyConnectivity::ConstFaceRange
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_begin, &PolyConnectivity::faces_end > > ConstFaceRange
Definition: PolyConnectivity.hh:1094
OpenMesh::PolyConnectivity::ConstHalfedgeLoopCCWIter
HalfedgeLoopCCWIter ConstHalfedgeLoopCCWIter
Definition: PolyConnectivity.hh:385
OpenMesh::PolyConnectivity::EdgeIter
Iterators::GenericIteratorT< This, This::EdgeHandle, ArrayKernel, &ArrayKernel::has_edge_status, &ArrayKernel::n_edges > EdgeIter
Linear iterator.
Definition: PolyConnectivity.hh:139
OpenMesh::PolyConnectivity::cfv_end
ConstFaceVertexIter cfv_end(FaceHandle _fh) const
const face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:728
OpenMesh::PolyConnectivity::cvv_cwbegin
ConstVertexVertexCWIter cvv_cwbegin(VertexHandle _vh) const
const vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:454
OpenMesh::PolyConnectivity::FaceIter
Iterators::GenericIteratorT< This, This::FaceHandle, ArrayKernel, &ArrayKernel::has_face_status, &ArrayKernel::n_faces > FaceIter
Linear iterator.
Definition: PolyConnectivity.hh:140
OpenMesh::PolyConnectivity::cff_cwiter
ConstFaceFaceCWIter cff_cwiter(FaceHandle _fh) const
const face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:398
OpenMesh::PolyConnectivity::faces_sbegin
FaceIter faces_sbegin()
Begin iterator for faces.
Definition: PolyConnectivity_inline_impl.hh:236
OpenMesh::PolyConnectivity::ve_ccwend
VertexEdgeCCWIter ve_ccwend(VertexHandle _vh)
vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:623
OpenMesh::PolyConnectivity::cfe_cwbegin
ConstFaceEdgeCWIter cfe_cwbegin(FaceHandle _fh) const
const face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:564
OpenMesh::PolyConnectivity::vih_ccwiter
VertexIHalfedgeCCWIter vih_ccwiter(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:257
OpenMesh
Definition: MeshItems.hh:59
OpenMesh::PolyConnectivity::halfedges_sbegin
HalfedgeIter halfedges_sbegin()
Begin iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:224
OpenMesh::PolyConnectivity::cvv_cwend
ConstVertexVertexCWIter cvv_cwend(VertexHandle _vh) const
const vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:639
OpenMesh::PolyConnectivity::HalfedgeLoopCWIter
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > HalfedgeLoopCWIter
Definition: PolyConnectivity.hh:271
OpenMesh::PolyConnectivity::cfh_iter
ConstFaceHalfedgeIter cfh_iter(FaceHandle _fh) const
const face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:377
OpenMesh::PolyConnectivity::cfe_ccwiter
ConstFaceEdgeCCWIter cfe_ccwiter(FaceHandle _fh) const
const face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:392
OpenMesh::PolyConnectivity::VertexEdgeCWIter
Iterators::GenericCirculatorT< VertexEdgeTraits, true > VertexEdgeCWIter
Definition: PolyConnectivity.hh:252
OpenMesh::PolyConnectivity::cvf_begin
ConstVertexFaceIter cvf_begin(VertexHandle _vh) const
const vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:487
OpenMesh::PolyConnectivity::cvoh_cwiter
ConstVertexOHalfedgeCWIter cvoh_cwiter(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:308
OpenMesh::PolyConnectivity::cve_ccwiter
ConstVertexEdgeCCWIter cve_ccwiter(VertexHandle _vh) const
const vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:320
OpenMesh::PolyConnectivity::cve_iter
ConstVertexEdgeIter cve_iter(VertexHandle _vh) const
const vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:314
OpenMesh::make_smart
SmartVertexHandle make_smart(VertexHandle _vh, const PolyConnectivity *_mesh)
Creats a SmartVertexHandle from a VertexHandle and a Mesh.
Definition: SmartHandles.hh:186
OpenMesh::PolyConnectivity::HalfedgeLoopIter
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > HalfedgeLoopIter
Definition: PolyConnectivity.hh:270
OpenMesh::PolyConnectivity::edges
ConstEdgeRangeSkipping edges() const
Definition: PolyConnectivity_inline_impl.hh:116
OpenMesh::PolyConnectivity::cff_iter
ConstFaceFaceIter cff_iter(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:395
OpenMesh::PolyConnectivity::ConstVertexVertexIter
VertexVertexIter ConstVertexVertexIter
Definition: PolyConnectivity.hh:277
OpenMesh::PolyConnectivity::vih_end
VertexIHalfedgeIter vih_end(VertexHandle _vh)
vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:599
OpenMesh::PolyConnectivity::fe_cwbegin
FaceEdgeCWIter fe_cwbegin(FaceHandle _fh)
face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:518
OpenMesh::PolyConnectivity::ConstFaceRangeSkipping
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstFaceIter, &PolyConnectivity::faces_sbegin, &PolyConnectivity::faces_end > > ConstFaceRangeSkipping
Definition: PolyConnectivity.hh:1099
OpenMesh::PolyConnectivity::VertexOHalfedgeCCWIter
Iterators::GenericCirculatorT< VertexHalfedgeTraits, false > VertexOHalfedgeCCWIter
Definition: PolyConnectivity.hh:198
OpenMesh::PolyConnectivity::vih_range
ConstVertexIHalfedgeRange vih_range(VertexHandle _vh) const
Definition: PolyConnectivity_inline_impl.hh:135
OpenMesh::PolyConnectivity::cve_cwend
ConstVertexEdgeCWIter cve_cwend(VertexHandle _vh) const
const vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:666
OpenMesh::PolyConnectivity::vih_ccwbegin
VertexIHalfedgeCCWIter vih_ccwbegin(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:420
OpenMesh::Iterators::GenericIteratorT
Definition: IteratorsT.hh:83
OpenMesh::PolyConnectivity::ve_ccwbegin
VertexEdgeCCWIter ve_ccwbegin(VertexHandle _vh)
vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:438
OpenMesh::PolyConnectivity::ConstFaceEdgeCWIter
FaceEdgeCWIter ConstFaceEdgeCWIter
Definition: PolyConnectivity.hh:374
OpenMesh::PolyConnectivity::cve_cwbegin
ConstVertexEdgeCWIter cve_cwbegin(VertexHandle _vh) const
const vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:481
OpenMesh::PolyConnectivity::VertexVertexIter
Iterators::GenericCirculatorT_DEPRECATED< VertexVertexTraits > VertexVertexIter
Definition: PolyConnectivity.hh:172
OpenMesh::PolyConnectivity::cvoh_cwbegin
ConstVertexOHalfedgeCWIter cvoh_cwbegin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:472
OpenMesh::PolyConnectivity::ff_cwend
FaceFaceCWIter ff_cwend(FaceHandle _fh)
face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:712
OpenMesh::PolyConnectivity::cvf_iter
ConstVertexFaceIter cvf_iter(VertexHandle _vh) const
const vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:323
OpenMesh::PolyConnectivity::all_faces
ConstFaceRange all_faces() const
Definition: PolyConnectivity_inline_impl.hh:119
OpenMesh::PolyConnectivity::ConstFaceEdgeIter
FaceEdgeIter ConstFaceEdgeIter
Definition: PolyConnectivity.hh:373
OpenMesh::PolyConnectivity::cvih_cwiter
ConstVertexIHalfedgeCWIter cvih_cwiter(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:299
OpenMesh::PolyConnectivity::cvf_ccwend
ConstVertexFaceCCWIter cvf_ccwend(VertexHandle _vh) const
const vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:678
OpenMesh::PolyConnectivity::cvoh_cwend
ConstVertexOHalfedgeCWIter cvoh_cwend(VertexHandle _vh) const
const vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:657
OpenMesh::PolyConnectivity::voh_ccwend
VertexOHalfedgeCCWIter voh_ccwend(VertexHandle _vh)
vertex - outgoing halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:614
OpenMesh::PolyConnectivity::cvf_ccwiter
ConstVertexFaceCCWIter cvf_ccwiter(VertexHandle _vh) const
const vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:329
OpenMesh::PolyConnectivity::fv_cwend
FaceVertexCWIter fv_cwend(FaceHandle _fh)
face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:685
OpenMesh::CirculatorRange
Generic class for iterator ranges.
Definition: PolyConnectivity.hh:86
OpenMesh::PolyConnectivity::cve_end
ConstVertexEdgeIter cve_end(VertexHandle _vh) const
const vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:663
OpenMesh::PolyConnectivity::vv_ccwend
VertexVertexCCWIter vv_ccwend(VertexHandle _vh)
vertex - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:596
OpenMesh::PolyConnectivity::faces
ConstFaceRangeSkipping faces() const
Definition: PolyConnectivity_inline_impl.hh:118
OpenMesh::PolyConnectivity::cvih_ccwiter
ConstVertexIHalfedgeCCWIter cvih_ccwiter(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:302
OpenMesh::Iterators::GenericCirculatorT_DEPRECATED
Definition: CirculatorsT.hh:428
OpenMesh::PolyConnectivity::cfe_cwiter
ConstFaceEdgeCWIter cfe_cwiter(FaceHandle _fh) const
const face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:389
OpenMesh::PolyConnectivity::cfh_end
ConstFaceHalfedgeIter cfh_end(FaceHandle _fh) const
const face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:737
OpenMesh::PolyConnectivity::fv_begin
FaceVertexIter fv_begin(FaceHandle _fh)
face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:497
OpenMesh::PolyConnectivity::chl_end
ConstHalfedgeLoopIter chl_end(HalfedgeHandle _heh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:764
OpenMesh::PolyConnectivity::vf_cwend
VertexFaceCWIter vf_cwend(VertexHandle _vh)
vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:629
OpenMesh::PolyConnectivity::cvv_cwiter
ConstVertexVertexCWIter cvv_cwiter(VertexHandle _vh) const
const vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:290
OpenMesh::PolyConnectivity::voh_iter
VertexOHalfedgeIter voh_iter(VertexHandle _vh)
vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:260
OpenMesh::PolyConnectivity::ff_ccwend
FaceFaceCCWIter ff_ccwend(FaceHandle _fh)
face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:715
OpenMesh::PolyConnectivity::halfedges_begin
HalfedgeIter halfedges_begin()
Begin iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:181
OpenMesh::PolyConnectivity::cve_cwiter
ConstVertexEdgeCWIter cve_cwiter(VertexHandle _vh) const
const vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:317
OpenMesh::PolyConnectivity::cvoh_begin
ConstVertexOHalfedgeIter cvoh_begin(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:469
OpenMesh::PolyConnectivity::VertexFaceIter
Iterators::GenericCirculatorT_DEPRECATED< VertexFaceTraits > VertexFaceIter
Definition: PolyConnectivity.hh:231
OpenMesh::PolyConnectivity::HalfedgeIter
Iterators::GenericIteratorT< This, This::HalfedgeHandle, ArrayKernel, &ArrayKernel::has_halfedge_status, &ArrayKernel::n_halfedges > HalfedgeIter
Linear iterator.
Definition: PolyConnectivity.hh:138
OpenMesh::PolyConnectivity::vih_ccwend
VertexIHalfedgeCCWIter vih_ccwend(VertexHandle _vh)
vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:605
OpenMesh::PolyConnectivity::FaceVertexCWIter
Iterators::GenericCirculatorT< FaceVertexTraits, false > FaceVertexCWIter
Definition: PolyConnectivity.hh:314
OpenMesh::PolyConnectivity::cvf_cwbegin
ConstVertexFaceCWIter cvf_cwbegin(VertexHandle _vh) const
const vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:490
OpenMesh::PolyConnectivity::fh_end
FaceHalfedgeIter fh_end(FaceHandle _fh)
face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:691
OpenMesh::PolyConnectivity::FaceEdgeCCWIter
Iterators::GenericCirculatorT< FaceEdgeTraits, true > FaceEdgeCCWIter
Definition: PolyConnectivity.hh:340
OpenMesh::PolyConnectivity::cfh_cwiter
ConstFaceHalfedgeCWIter cfh_cwiter(FaceHandle _fh) const
const face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:380
OpenMesh::ArrayKernel::new_vertex
VertexHandle new_vertex()
Add a new vertex.
Definition: ArrayKernel.hh:216
OpenMesh::PolyConnectivity::ConstVertexIHalfedgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexIHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvih_begin, &PolyConnectivity::cvih_end > > ConstVertexIHalfedgeRange
Definition: PolyConnectivity.hh:1181
OpenMesh::PolyConnectivity::FaceHalfedgeIter
Iterators::GenericCirculatorT_DEPRECATED< FaceHalfedgeTraits > FaceHalfedgeIter
Definition: PolyConnectivity.hh:319
OpenMesh::PolyConnectivity::ConstFaceVertexIter
FaceVertexIter ConstFaceVertexIter
Definition: PolyConnectivity.hh:367
OpenMesh::PolyConnectivity::VertexIHalfedgeCWIter
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, true > VertexIHalfedgeCWIter
Definition: PolyConnectivity.hh:212
OpenMesh::PolyConnectivity::FaceHalfedgeCWIter
Iterators::GenericCirculatorT< FaceHalfedgeTraits, false > FaceHalfedgeCWIter
Definition: PolyConnectivity.hh:325
OpenMesh::PolyConnectivity::ConstVertexFaceIter
VertexFaceIter ConstVertexFaceIter
Definition: PolyConnectivity.hh:286
OpenMesh::PolyConnectivity::ConstFaceFaceIter
FaceFaceIter ConstFaceFaceIter
Definition: PolyConnectivity.hh:376
OpenMesh::PolyConnectivity::fe_cwiter
FaceEdgeCWIter fe_cwiter(FaceHandle _fh)
face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:353
OpenMesh::PolyConnectivity::all_edges
ConstEdgeRange all_edges() const
Definition: PolyConnectivity_inline_impl.hh:117
OpenMesh::PolyConnectivity::ConstFaceFaceCWIter
FaceFaceCWIter ConstFaceFaceCWIter
Definition: PolyConnectivity.hh:377
OpenMesh::PolyConnectivity::cfe_cwend
ConstFaceEdgeCWIter cfe_cwend(FaceHandle _fh) const
const face - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:749
OpenMesh::PolyConnectivity::ConstFaceIter
FaceIter ConstFaceIter
Linear iterator.
Definition: PolyConnectivity.hh:145
OpenMesh::PolyConnectivity::vv_range
ConstVertexVertexRange vv_range(VertexHandle _vh) const
Definition: PolyConnectivity_inline_impl.hh:131
OpenMesh::SmartFaceHandle
Definition: SmartHandles.hh:162
OpenMesh::EntityRange
Generic class for vertex/halfedge/edge/face ranges.
Definition: PolyConnectivity.hh:69
OpenMesh::PolyConnectivity::ConstHalfedgeIter
HalfedgeIter ConstHalfedgeIter
Linear iterator.
Definition: PolyConnectivity.hh:143
OpenMesh::PolyConnectivity::fh_ccwend
FaceHalfedgeCCWIter fh_ccwend(FaceHandle _fh)
face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:697
OpenMesh::PolyConnectivity::cvv_ccwbegin
ConstVertexVertexCCWIter cvv_ccwbegin(VertexHandle _vh) const
const vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:457
OpenMesh::PolyConnectivity::cve_begin
ConstVertexEdgeIter cve_begin(VertexHandle _vh) const
const vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:478
OpenMesh::PolyConnectivity::fe_ccwend
FaceEdgeCCWIter fe_ccwend(FaceHandle _fh)
face - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:706
OpenMesh::PolyConnectivity::ConstEdgeRange
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_begin, &PolyConnectivity::edges_end > > ConstEdgeRange
Definition: PolyConnectivity.hh:1084
OpenMesh::PolyConnectivity::vf_cwiter
VertexFaceCWIter vf_cwiter(VertexHandle _vh)
vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:281
OpenMesh::PolyConnectivity::ff_cwbegin
FaceFaceCWIter ff_cwbegin(FaceHandle _fh)
face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:527
OpenMesh::PolyConnectivity::fh_begin
FaceHalfedgeIter fh_begin(FaceHandle _fh)
face - halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:506
OpenMesh::PolyConnectivity::FaceHalfedgeCCWIter
Iterators::GenericCirculatorT< FaceHalfedgeTraits, true > FaceHalfedgeCCWIter
Definition: PolyConnectivity.hh:320
OpenMesh::PolyConnectivity::cff_ccwend
ConstFaceFaceCCWIter cff_ccwend(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:761
OpenMesh::PolyConnectivity::vertices_begin
VertexIter vertices_begin()
Begin iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:169
OpenMesh::PolyConnectivity::vih_begin
VertexIHalfedgeIter vih_begin(VertexHandle _vh)
vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:414
OpenMesh::PolyConnectivity::cfv_ccwend
ConstFaceVertexCCWIter cfv_ccwend(FaceHandle _fh) const
const face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:734
OpenMesh::PolyConnectivity::ConstVertexIHalfedgeCWIter
VertexIHalfedgeCWIter ConstVertexIHalfedgeCWIter
Definition: PolyConnectivity.hh:284
OpenMesh::PolyConnectivity::vf_cwbegin
VertexFaceCWIter vf_cwbegin(VertexHandle _vh)
vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:444
OpenMesh::PolyConnectivity::vf_end
VertexFaceIter vf_end(VertexHandle _vh)
vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:626
OpenMesh::PolyConnectivity::ve_ccwiter
VertexEdgeCCWIter ve_ccwiter(VertexHandle _vh)
vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:275
OpenMesh::PolyConnectivity::ConstVertexVertexCCWIter
VertexVertexCCWIter ConstVertexVertexCCWIter
Definition: PolyConnectivity.hh:279
OpenMesh::PolyConnectivity::cfv_cwbegin
ConstFaceVertexCWIter cfv_cwbegin(FaceHandle _fh) const
const face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:546
OpenMesh::PolyConnectivity::FaceVertexCCWIter
Iterators::GenericCirculatorT< FaceVertexTraits, true > FaceVertexCCWIter
Definition: PolyConnectivity.hh:309
OpenMesh::SmartVertexHandle
Smart version of VertexHandle contains a pointer to the corresponding mesh and allows easier access t...
Definition: SmartHandles.hh:84
OpenMesh::PolyConnectivity::VertexOHalfedgeCWIter
Iterators::GenericCirculatorT< VertexHalfedgeTraits, true > VertexOHalfedgeCWIter
Definition: PolyConnectivity.hh:193
OpenMesh::PolyConnectivity::chl_begin
ConstHalfedgeLoopIter chl_begin(HalfedgeHandle _heh) const
const halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:579
OpenMesh::PolyConnectivity::vv_begin
VertexVertexIter vv_begin(VertexHandle _vh)
vertex - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:405
OpenMesh::PolyConnectivity::fe_end
FaceEdgeIter fe_end(FaceHandle _fh)
face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:700
OpenMesh::PolyConnectivity::ConstVertexFaceRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexFaceIter, VertexHandle, FaceHandle, &PolyConnectivity::cvf_begin, &PolyConnectivity::cvf_end > > ConstVertexFaceRange
Definition: PolyConnectivity.hh:1202
OpenMesh::PolyConnectivity::ConstFaceVertexCWIter
FaceVertexCWIter ConstFaceVertexCWIter
Definition: PolyConnectivity.hh:368
OpenMesh::PolyConnectivity::ConstEdgeIter
EdgeIter ConstEdgeIter
Linear iterator.
Definition: PolyConnectivity.hh:144
OpenMesh::PolyConnectivity::ConstFaceVertexRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceVertexIter, FaceHandle, VertexHandle, &PolyConnectivity::cfv_begin, &PolyConnectivity::cfv_end > > ConstFaceVertexRange
Definition: PolyConnectivity.hh:1209
OpenMesh::PolyConnectivity::cff_ccwbegin
ConstFaceFaceCCWIter cff_ccwbegin(FaceHandle _fh) const
const face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:576
OpenMesh::PolyConnectivity::vf_ccwiter
VertexFaceCCWIter vf_ccwiter(VertexHandle _vh)
vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:284
OpenMesh::PolyConnectivity::add_vertex
SmartVertexHandle add_vertex()
Add a new vertex.
Definition: PolyConnectivity_inline_impl.hh:53
OpenMesh::PolyConnectivity::FaceEdgeCWIter
Iterators::GenericCirculatorT< FaceEdgeTraits, false > FaceEdgeCWIter
Definition: PolyConnectivity.hh:345
OpenMesh::PolyConnectivity::cff_begin
ConstFaceFaceIter cff_begin(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:570
OpenMesh::PolyConnectivity::vertices_sbegin
VertexIter vertices_sbegin()
Begin iterator for vertices.
Definition: PolyConnectivity_inline_impl.hh:218
OpenMesh::PolyConnectivity::voh_begin
VertexOHalfedgeIter voh_begin(VertexHandle _vh)
vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:423
OpenMesh::PolyConnectivity::halfedges_end
HalfedgeIter halfedges_end()
End iterator for halfedges.
Definition: PolyConnectivity_inline_impl.hh:187
OpenMesh::PolyConnectivity::fh_cwiter
FaceHalfedgeCWIter fh_cwiter(FaceHandle _fh)
face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:344
OpenMesh::PolyConnectivity::fv_cwiter
FaceVertexCWIter fv_cwiter(FaceHandle _fh)
face - vertex circulator cw
Definition: PolyConnectivity_inline_impl.hh:335
OpenMesh::PolyConnectivity::cvf_cwend
ConstVertexFaceCWIter cvf_cwend(VertexHandle _vh) const
const vertex - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:675
OpenMesh::PolyConnectivity::cve_ccwbegin
ConstVertexEdgeCCWIter cve_ccwbegin(VertexHandle _vh) const
const vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:484
OpenMesh::PolyConnectivity::ff_ccwbegin
FaceFaceCCWIter ff_ccwbegin(FaceHandle _fh)
face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:530
OpenMesh::PolyConnectivity::ve_cwiter
VertexEdgeCWIter ve_cwiter(VertexHandle _vh)
vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:272
OpenMesh::PolyConnectivity::fe_range
ConstFaceEdgeRange fe_range(FaceHandle _fh) const
Definition: PolyConnectivity_inline_impl.hh:159
OpenMesh::PolyConnectivity::ConstHalfedgeRangeSkipping
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstHalfedgeIter, &PolyConnectivity::halfedges_sbegin, &PolyConnectivity::halfedges_end > > ConstHalfedgeRangeSkipping
Definition: PolyConnectivity.hh:1079
OpenMesh::PolyConnectivity::voh_cwend
VertexOHalfedgeCWIter voh_cwend(VertexHandle _vh)
vertex - outgoing halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:611
OpenMesh::PolyConnectivity::ConstFaceEdgeCCWIter
FaceEdgeCCWIter ConstFaceEdgeCCWIter
Definition: PolyConnectivity.hh:375
OpenMesh::PolyConnectivity::VertexEdgeIter
Iterators::GenericCirculatorT_DEPRECATED< VertexEdgeTraits > VertexEdgeIter
Definition: PolyConnectivity.hh:251
OpenMesh::PolyConnectivity::fh_ccwbegin
FaceHalfedgeCCWIter fh_ccwbegin(FaceHandle _fh)
face - halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:512
OpenMesh::PolyConnectivity::cvf_end
ConstVertexFaceIter cvf_end(VertexHandle _vh) const
const vertex - face circulator
Definition: PolyConnectivity_inline_impl.hh:672
OpenMesh::PolyConnectivity::cvih_end
ConstVertexIHalfedgeIter cvih_end(VertexHandle _vh) const
const vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:645
OpenMesh::PolyConnectivity::vf_ccwend
VertexFaceCCWIter vf_ccwend(VertexHandle _vh)
vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:632
OpenMesh::PolyConnectivity::vv_ccwiter
VertexVertexCCWIter vv_ccwiter(VertexHandle _vh)
vertex - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:248
OpenMesh::PolyConnectivity::vf_ccwbegin
VertexFaceCCWIter vf_ccwbegin(VertexHandle _vh)
vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:447
OpenMesh::PolyConnectivity::ve_cwend
VertexEdgeCWIter ve_cwend(VertexHandle _vh)
vertex - edge circulator cw
Definition: PolyConnectivity_inline_impl.hh:620
OpenMesh::PolyConnectivity::ConstFaceVertexCCWIter
FaceVertexCCWIter ConstFaceVertexCCWIter
Definition: PolyConnectivity.hh:369
OpenMesh::PolyConnectivity::ConstVertexFaceCCWIter
VertexFaceCCWIter ConstVertexFaceCCWIter
Definition: PolyConnectivity.hh:288
OpenMesh::PolyConnectivity::ff_range
ConstFaceFaceRange ff_range(FaceHandle _fh) const
Definition: PolyConnectivity_inline_impl.hh:163
OpenMesh::PolyConnectivity::FaceFaceCWIter
Iterators::GenericCirculatorT< FaceFaceTraits, false > FaceFaceCWIter
Definition: PolyConnectivity.hh:365
OpenMesh::PolyConnectivity::hl_ccwend
HalfedgeLoopCCWIter hl_ccwend(HalfedgeHandle _heh)
face - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:724
OpenMesh::PolyConnectivity::vih_cwbegin
VertexIHalfedgeCWIter vih_cwbegin(VertexHandle _vh)
vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:417
OpenMesh::PolyConnectivity::cfe_iter
ConstFaceEdgeIter cfe_iter(FaceHandle _fh) const
const face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:386
OpenMesh::PolyConnectivity::ConstEdgeRangeSkipping
EntityRange< RangeTraitT< const PolyConnectivity, PolyConnectivity::ConstEdgeIter, &PolyConnectivity::edges_sbegin, &PolyConnectivity::edges_end > > ConstEdgeRangeSkipping
Definition: PolyConnectivity.hh:1089
OpenMesh::PolyConnectivity::ConstVertexOHalfedgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstVertexOHalfedgeIter, VertexHandle, HalfedgeHandle, &PolyConnectivity::cvoh_begin, &PolyConnectivity::cvoh_end > > ConstVertexOHalfedgeRange
Definition: PolyConnectivity.hh:1188
OpenMesh::PolyConnectivity::edges_sbegin
EdgeIter edges_sbegin()
Begin iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:230
OpenMesh::PolyConnectivity::fv_ccwend
FaceVertexCCWIter fv_ccwend(FaceHandle _fh)
face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:688
OpenMesh::PolyConnectivity::cvih_iter
ConstVertexIHalfedgeIter cvih_iter(VertexHandle _vh) const
const vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:296
OpenMesh::PolyConnectivity::VertexIHalfedgeCCWIter
Iterators::GenericCirculatorT< VertexOppositeHalfedgeTraits, false > VertexIHalfedgeCCWIter
Definition: PolyConnectivity.hh:217
OpenMesh::PolyConnectivity::VertexOHalfedgeIter
Iterators::GenericCirculatorT_DEPRECATED< VertexHalfedgeTraits > VertexOHalfedgeIter
Definition: PolyConnectivity.hh:192
OpenMesh::PolyConnectivity::cfv_iter
ConstFaceVertexIter cfv_iter(FaceHandle _fh) const
const face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:368
OpenMesh::PolyConnectivity::edges_begin
EdgeIter edges_begin()
Begin iterator for edges.
Definition: PolyConnectivity_inline_impl.hh:193
OpenMesh::PolyConnectivity::VertexIter
Iterators::GenericIteratorT< This, This::VertexHandle, ArrayKernel, &ArrayKernel::has_vertex_status, &ArrayKernel::n_vertices > VertexIter
Linear iterator.
Definition: PolyConnectivity.hh:137
OpenMesh::PolyConnectivity::halfedges
ConstHalfedgeRangeSkipping halfedges() const
Definition: PolyConnectivity_inline_impl.hh:114
OpenMesh::PolyConnectivity::ve_iter
VertexEdgeIter ve_iter(VertexHandle _vh)
vertex - edge circulator
Definition: PolyConnectivity_inline_impl.hh:269
OpenMesh::PolyConnectivity::fh_range
ConstFaceHalfedgeRange fh_range(FaceHandle _fh) const
Definition: PolyConnectivity_inline_impl.hh:155
OpenMesh::PolyConnectivity::cff_end
ConstFaceFaceIter cff_end(FaceHandle _fh) const
const face - face circulator
Definition: PolyConnectivity_inline_impl.hh:755
OpenMesh::PolyConnectivity::hl_ccwbegin
HalfedgeLoopCCWIter hl_ccwbegin(HalfedgeHandle _heh)
halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:539
OpenMesh::PolyConnectivity::cvv_ccwend
ConstVertexVertexCCWIter cvv_ccwend(VertexHandle _vh) const
const vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:642
OpenMesh::PolyConnectivity::hl_cwbegin
HalfedgeLoopCWIter hl_cwbegin(HalfedgeHandle _heh)
halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:536
OpenMesh::PolyConnectivity::cvoh_end
ConstVertexOHalfedgeIter cvoh_end(VertexHandle _vh) const
const vertex - outgoing halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:654
OpenMesh::PolyConnectivity::cvih_cwbegin
ConstVertexIHalfedgeCWIter cvih_cwbegin(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:463
OpenMesh::PolyConnectivity::fv_range
ConstFaceVertexRange fv_range(FaceHandle _fh) const
Definition: PolyConnectivity_inline_impl.hh:151
OpenMesh::PolyConnectivity::ff_end
FaceFaceIter ff_end(FaceHandle _fh)
face - face circulator
Definition: PolyConnectivity_inline_impl.hh:709
OpenMesh::PolyConnectivity::cve_ccwend
ConstVertexEdgeCCWIter cve_ccwend(VertexHandle _vh) const
const vertex - edge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:669
OpenMesh::PolyConnectivity::fe_iter
FaceEdgeIter fe_iter(FaceHandle _fh)
face - edge circulator
Definition: PolyConnectivity_inline_impl.hh:350
OpenMesh::PolyConnectivity::chl_cwend
ConstHalfedgeLoopCWIter chl_cwend(HalfedgeHandle _heh) const
const face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:767
OpenMesh::PolyConnectivity::cvf_ccwbegin
ConstVertexFaceCCWIter cvf_ccwbegin(VertexHandle _vh) const
const vertex - face circulator ccw
Definition: PolyConnectivity_inline_impl.hh:493
OpenMesh::PolyConnectivity::all_halfedges
ConstHalfedgeRange all_halfedges() const
Definition: PolyConnectivity_inline_impl.hh:115
OpenMesh::PolyConnectivity::ConstFaceHalfedgeCCWIter
FaceHalfedgeCCWIter ConstFaceHalfedgeCCWIter
Definition: PolyConnectivity.hh:372
OpenMesh::PolyConnectivity::fv_ccwiter
FaceVertexCCWIter fv_ccwiter(FaceHandle _fh)
face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:338
OpenMesh::PolyConnectivity::cvih_cwend
ConstVertexIHalfedgeCWIter cvih_cwend(VertexHandle _vh) const
const vertex - incoming halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:648
OpenMesh::PolyConnectivity::ff_cwiter
FaceFaceCWIter ff_cwiter(FaceHandle _fh)
face - face circulator cw
Definition: PolyConnectivity_inline_impl.hh:362
OpenMesh::PolyConnectivity::ConstFaceHalfedgeRange
CirculatorRange< CirculatorRangeTraitT< PolyConnectivity, ConstFaceHalfedgeIter, FaceHandle, HalfedgeHandle, &PolyConnectivity::cfh_begin, &PolyConnectivity::cfh_end > > ConstFaceHalfedgeRange
Definition: PolyConnectivity.hh:1216
OpenMesh::PolyConnectivity::VertexVertexCWIter
Iterators::GenericCirculatorT< VertexVertexTraits, true > VertexVertexCWIter
Definition: PolyConnectivity.hh:173
OpenMesh::PolyConnectivity::VertexVertexCCWIter
Iterators::GenericCirculatorT< VertexVertexTraits, false > VertexVertexCCWIter
Definition: PolyConnectivity.hh:178
OpenMesh::PolyConnectivity::fv_iter
FaceVertexIter fv_iter(FaceHandle _fh)
face - vertex circulator
Definition: PolyConnectivity_inline_impl.hh:332
OpenMesh::PolyConnectivity::cvih_ccwbegin
ConstVertexIHalfedgeCCWIter cvih_ccwbegin(VertexHandle _vh) const
const vertex - incoming halfedge circulator ccw
Definition: PolyConnectivity_inline_impl.hh:466
OpenMesh::PolyConnectivity::fv_ccwbegin
FaceVertexCCWIter fv_ccwbegin(FaceHandle _fh)
face - vertex circulator ccw
Definition: PolyConnectivity_inline_impl.hh:503
OpenMesh::PolyConnectivity::fh_cwbegin
FaceHalfedgeCWIter fh_cwbegin(FaceHandle _fh)
face - halfedge circulator cw
Definition: PolyConnectivity_inline_impl.hh:509
OpenMesh::PolyConnectivity::ConstVertexEdgeCWIter
VertexEdgeCWIter ConstVertexEdgeCWIter
Definition: PolyConnectivity.hh:290
OpenMesh::PolyConnectivity::ff_iter
FaceFaceIter ff_iter(FaceHandle _fh)
face - face circulator
Definition: PolyConnectivity_inline_impl.hh:359
OpenMesh::PolyConnectivity::cvih_begin
ConstVertexIHalfedgeIter cvih_begin(VertexHandle _vh) const
const vertex - incoming halfedge circulator
Definition: PolyConnectivity_inline_impl.hh:460