#include <CGAL/point_generators_3.h>
template<class TriangleMesh, class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
struct CGAL::Random_points_in_triangle_mesh_3< TriangleMesh, VertexPointMap, Creator >
The class Random_points_in_triangle_mesh_3
is an input iterator creating points uniformly distributed inside the faces of a triangle mesh model of FaceListGraph
.
The triangle mesh must be valid and unchanged while the iterator is used.
- Is Model Of:
InputIterator
PointGenerator
- See also
CGAL::Random_points_in_disc_2<Point_2, Creator>
-
CGAL::Random_points_in_cube_3<Point_3, Creator>
-
CGAL::Random_points_in_triangle_3<Point_3, Creator>
-
CGAL::Random_points_on_sphere_3<Point_3, Creator>
-
CGAL::Random_points_in_triangle_mesh_2<Point_2, Triangulation>
-
CGAL::Random_points_in_tetrahedral_mesh_boundary_3<C3T3>
-
CGAL::Random_points_in_tetrahedral_mesh_3<C3T3>
-
CGAL::Random_points_in_triangles_2<Point_2>
-
CGAL::Random_points_in_triangles_3<Point_3>
- Examples
- Generator/random_points_on_triangle_mesh_3.cpp.
◆ difference_type
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
◆ iterator_category
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
◆ Point_3
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
◆ value_type
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
◆ Random_points_in_triangle_mesh_3() [1/2]
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
Creates an input iterator g
generating points of type Point_3
uniformly distributed in the mesh faces based on vpm
.
Each triangle has a probability to be chosen to hold the point depending on its area.
◆ Random_points_in_triangle_mesh_3() [2/2]
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
Similar to the previous constructor using get(vertex_point, mesh)
as vertex point map.
◆ pointer
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>
◆ reference
template<class TriangleMesh , class VertexPointMap = typename boost::property_map<TriangleMesh, CGAL::vertex_point_t>::type, class Creator = Creator_uniform_3< typename Kernel_traits< typename boost::property_traits<VertexPointMap>::value_type >::Kernel::RT, typename boost::property_traits<VertexPointMap>::value_type >>