Added static versions of ArrayKernel::edge_handle and ...::halfedge_handle.

This commit is contained in:
Hans-Christian Ebke
2015-11-26 13:01:53 +01:00
parent 0a35e4d2b9
commit 3fe3657bc8

View File

@@ -444,15 +444,23 @@ public:
{ return next_halfedge_handle(opposite_halfedge_handle(_heh)); } { return next_halfedge_handle(opposite_halfedge_handle(_heh)); }
// --- edge connectivity --- // --- edge connectivity ---
HalfedgeHandle halfedge_handle(EdgeHandle _eh, unsigned int _i) const static HalfedgeHandle s_halfedge_handle(EdgeHandle _eh, unsigned int _i)
{ {
assert(_i<=1); assert(_i<=1);
return HalfedgeHandle((_eh.idx() << 1) + _i); return HalfedgeHandle((_eh.idx() << 1) + _i);
} }
EdgeHandle edge_handle(HalfedgeHandle _heh) const static EdgeHandle s_edge_handle(HalfedgeHandle _heh)
{ return EdgeHandle(_heh.idx() >> 1); } { return EdgeHandle(_heh.idx() >> 1); }
HalfedgeHandle halfedge_handle(EdgeHandle _eh, unsigned int _i) const
{
return s_halfedge_handle(_eh, _i);
}
EdgeHandle edge_handle(HalfedgeHandle _heh) const
{ return s_edge_handle(_heh); }
// --- face connectivity --- // --- face connectivity ---
HalfedgeHandle halfedge_handle(FaceHandle _fh) const HalfedgeHandle halfedge_handle(FaceHandle _fh) const
{ return face(_fh).halfedge_handle_; } { return face(_fh).halfedge_handle_; }