- Member CGAL::Vector_graphics_on_surfaces::convert_path_to_polyline (const std::vector< CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > > &path, const TriangleMesh &tmesh, OutputIterator poly_out)
add named parameters
generic range
- Member CGAL::Vector_graphics_on_surfaces::convert_path_to_polyline (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > &src, const std::vector< CGAL::Polygon_mesh_processing::Edge_location< TriangleMesh, FT > > &path, const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > &tgt, const TriangleMesh &tmesh, OutputIterator poly_out)
add named parameters
generic range
- Member CGAL::Vector_graphics_on_surfaces::init_geodesic_dual_solver (Dual_geodesic_solver< FT > &solver, const TriangleMesh &tmesh)
add named parameters
make sure solver.graph is cleared before filling it
- Member CGAL::Vector_graphics_on_surfaces::locally_shortest_path (CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > src, CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > tgt, const TriangleMesh &tmesh, EdgeLocationRange &edge_locations, const Dual_geodesic_solver< FT > &solver)
add named parameters
should we have halfedge location instead?
- Member CGAL::Vector_graphics_on_surfaces::path_length (const std::vector< CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > > &path, const TriangleMesh &tmesh)
add named parameters
generic range
- Member CGAL::Vector_graphics_on_surfaces::path_length (const std::vector< CGAL::Polygon_mesh_processing::Edge_location< TriangleMesh, FT > > &path, const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > &src, const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, FT > &tgt, const TriangleMesh &tmesh)
add named parameters
generic range
- Member CGAL::Vector_graphics_on_surfaces::recursive_de_Casteljau (const TriangleMesh &mesh, const Bezier_segment< TriangleMesh, FT > &control_points, const int num_subdiv, const Dual_geodesic_solver< FT > &solver=Dual_geodesic_solver< FT >())
add named parameters
do we want to also have a way to return Bézier segments? The output is actually Bézier segments subdivided.
- Member CGAL::Vector_graphics_on_surfaces::refine_mesh_along_paths (const std::vector< std::vector< CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > > > &paths, TriangleMesh &tmesh, VNM vnm, FNM fnm, OutputIterator out)
add named parameters
vnm and fnm are optional
intersection between path or self-intersections are not handle. Should it be? If not what do we do?
out should contain edges, and also existing edges already part of a path
shall we also have the edges in the order of the input rather than all at once
- Member CGAL::Vector_graphics_on_surfaces::straightest_geodesic (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > &src, const typename K::Vector_2 &dir, const typename K::FT len, const TriangleMesh &tmesh)
add named parameters
do we want to also have a way to return Bézier segments? The output is actually Bézier segments subdivided.
offer something better than a 2D vector for the direction
- Member CGAL::Vector_graphics_on_surfaces::trace_bezier_curves (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > ¢er, const std::vector< std::array< typename K::Vector_2, 4 > > &directions, const std::vector< std::array< typename K::FT, 4 > > &lengths, const int num_subdiv, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
for better rendering we can group polygons to have one center for the same group of polygon (useful for letters that are not simply connected)
what if boundary is reached
- Member CGAL::Vector_graphics_on_surfaces::trace_geodesic_label (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > ¢er, const std::vector< std::vector< typename K::Point_2 > > &polygons, const typename K::FT scaling, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
for better rendering we can group polygons to have one center for the same group of polygon (useful for letters that are not simply connected)
what if boundary is reached
- Member CGAL::Vector_graphics_on_surfaces::trace_geodesic_label_along_curve (const std::vector< CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > > &supporting_curve, const std::vector< std::vector< typename K::Point_2 > > &polygons, const typename K::FT scaling, const typename K::FT padding, const bool is_centered, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
for better rendering we can group polygons to have one center for the same group of polygon (useful for letters that are not simply connected)
check padding is ignored if is_centered is used + update the doc if not
doc what happens if supporting curve is not long enough + boundary reached
- Member CGAL::Vector_graphics_on_surfaces::trace_geodesic_polygon (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > ¢er, const std::vector< typename K::Vector_2 > &directions, const std::vector< typename K::FT > &lengths, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
offer something better than a 2D vector for the direction
directly handle polyline?
why the first polygon vertex is duplicated by the function? (most probably for the example but it shouldn't be done here)
- Member CGAL::Vector_graphics_on_surfaces::trace_geodesic_polygons (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > ¢er, const std::vector< std::vector< typename K::Point_2 > > &polygons, const typename K::FT scaling, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
for better rendering we can group polygons to have one center for the same group of polygon (useful for letters that are not simply connected)
what if boundary is reached
- Member CGAL::Vector_graphics_on_surfaces::trace_polyline_of_bezier_curves (const CGAL::Polygon_mesh_processing::Face_location< TriangleMesh, typename K::FT > ¢er, const std::vector< typename K::Vector_2 > &directions, const std::vector< typename K::FT > &lengths, bool is_closed, const int num_subdiv, const TriangleMesh &tmesh, const Dual_geodesic_solver< typename K::FT > &solver={})
add named parameters
polygon orientation is not handled in the function and should be done outside of the function for now
for better rendering we can group polygons to have one center for the same group of polygon (useful for letters that are not simply connected)
what if boundary is reached
- Module PkgVGoS_Ref
- tracing functions should probably be merged in only one or two functions, with parameters for the placement of centers + parallel transport, as well as an option for joining with locally shortest paths