13 #include <boost/graph/graph_traits.hpp>
14 #include <boost/graph/properties.hpp>
40 template<
typename FaceGraph,
45 const typename boost::graph_traits< FaceGraph >::halfedge_descriptor h1,
46 const typename boost::graph_traits< FaceGraph >::halfedge_descriptor h2,
49 const GeometryTraits >)
54 Vector next_h1, nnext, left_dir = gt.NULL_VECTOR, vg, next_h2,
55 right_dir = gt.NULL_VECTOR, vh;
65 nnext = FEVV::Operators::
66 calculate_vertex_normal< FaceGraph, PointMap, GeometryTraits >(
69 if(next_h1 != gt.NULL_VECTOR)
70 left_dir = gt.cross_product(next_h1, nnext);
77 nnext = FEVV::Operators::
78 calculate_vertex_normal< FaceGraph, PointMap, GeometryTraits >(
81 if(next_h2 != gt.NULL_VECTOR)
82 right_dir = gt.cross_product(next_h2, nnext);
90 return ((gt.dot_product(left_dir, vg) <= 0.0) ||
91 (gt.dot_product(right_dir, vh) <= 0.0));