CGAL 6.0 - Vector Graphics on Triangulated Surface Meshes
Loading...
Searching...
No Matches
Todo List
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 > &center, 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 > &center, 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 > &center, 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 > &center, 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 > &center, 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