13 #include <boost/graph/graph_traits.hpp>
14 #include <boost/graph/properties.hpp>
17 #include <Eigen/Dense>
34 template<
typename HalfedgeGraph,
36 typename GeometryTraits >
40 const Eigen::Matrix4d &mat,
41 const GeometryTraits >)
43 typedef boost::graph_traits< HalfedgeGraph > GraphTraits;
44 typedef typename GraphTraits::vertex_iterator vertex_iterator;
45 typedef typename boost::property_traits< PointMap >::value_type
Point;
48 vertex_iterator vi = iterator_pair.first;
49 vertex_iterator vi_end = iterator_pair.second;
52 for(; vi != vi_end; ++vi)
56 double x = gt.get_x(p);
57 double y = gt.get_y(p);
58 double z = gt.get_z(p);
59 Eigen::Vector4d v(x, y, z, 1);
67 Eigen::Vector4d vt = mat * v;
71 Point pt(vt(0), vt(1), vt(2));
88 template<
typename HalfedgeGraph,
94 const Eigen::Matrix4d &mat)
99 GeometryTraits >(g, pm, mat, gt);