|
| std::string | Aleph::detail::tikz_palette_color (const size_t idx) |
| |
| size_t | Aleph::detail::spp_find_index (const Array< Point > &pts, const Point &p) |
| |
| Array< SPP_ITri > | Aleph::detail::spp_build_tris (const Array< Point > &pts, const DynList< Triangle > &tl) |
| |
| bool | Aleph::detail::spp_point_in_triangle (const Array< Point > &pts, const SPP_ITri &t, const Point &p) |
| |
| size_t | Aleph::detail::spp_find_tri (const Array< Point > &pts, const Array< SPP_ITri > &tris, const Point &p) |
| |
| Array< size_t > | Aleph::detail::spp_find_sleeve (const Array< SPP_ITri > &tris, const size_t src, const size_t dst) |
| |
| Geom_Number | Aleph::detail::spp_cross (const Point &a, const Point &b, const Point &c) |
| |
| Array< SPP_Portal > | Aleph::detail::shortest_path_portals (const Polygon &polygon, const Point &source, const Point &target) |
| |
| Tikz_Style | Aleph::tikz_points_style (const std::string &color="black", const double opacity=-1.0) |
| | Creates a style optimized for point clouds.
|
| |
| Tikz_Style | Aleph::tikz_wire_style (const std::string &color="black", const bool dashed=false, const bool with_arrow=false) |
| | Creates a style optimized for wireframe segments and polygons.
|
| |
| Tikz_Style | Aleph::tikz_path_style (const std::string &color="red", const bool with_arrow=false) |
| | Creates a style optimized for polyline paths.
|
| |
| Tikz_Style | Aleph::tikz_area_style (const std::string &draw_color="black", const std::string &fill_color="gray!25", const double opacity=0.6) |
| | Creates a style for drawing filled polygons.
|
| |
| void | Aleph::put_points (Tikz_Plane &plane, const Array< Point > &pts, const Tikz_Style &style=tikz_points_style(), const int layer=Tikz_Plane::Layer_Default) |
| | Inserts all points from an Array<Point> into the plane.
|
| |
| void | Aleph::put_points (Tikz_Plane &plane, const DynList< Point > &pts, const Tikz_Style &style=tikz_points_style(), const int layer=Tikz_Plane::Layer_Default) |
| | Inserts all points from a DynList<Point> into the plane.
|
| |
| void | Aleph::put_point_labels (Tikz_Plane &plane, const Array< Point > &pts, const std::string &prefix="p", const std::string &placement="above right", const Tikz_Style &style=make_tikz_draw_style("black"), const int layer=Tikz_Plane::Layer_Overlay) |
| | Adds a text label to each point in an Array<Point>.
|
| |
| void | Aleph::put_point_labels (Tikz_Plane &plane, const DynList< Point > &pts, const std::string &prefix="p", const std::string &placement="above right", const Tikz_Style &style=make_tikz_draw_style("black"), const int layer=Tikz_Plane::Layer_Overlay) |
| | Adds a text label to each point in a DynList<Point>.
|
| |
| void | Aleph::put_polygons (Tikz_Plane &plane, const Array< Polygon > &polys, const Tikz_Style &style=tikz_wire_style(), const int layer=Tikz_Plane::Layer_Default) |
| | Inserts all polygons from an Array<Polygon> into the plane.
|
| |
| void | Aleph::put_polygon_vertices (Tikz_Plane &plane, const Polygon &poly, const Tikz_Style &style=tikz_points_style(), const int layer=Tikz_Plane::Layer_Overlay) |
| | Inserts the vertices of a polygon as styled points.
|
| |
| void | Aleph::put_polygon_vertices (Tikz_Plane &plane, const Regular_Polygon &poly, const Tikz_Style &style=tikz_points_style(), const int layer=Tikz_Plane::Layer_Overlay) |
| | Inserts the vertices of a regular polygon as styled points.
|
| |
| Polygon | Aleph::polygon_from_vertices (const Array< Point > &vertices, const bool close=true) |
| | Constructs a Polygon from an ordered array of vertices.
|
| |
| Polygon | Aleph::polygon_from_vertex_indices (const Array< Point > &vertices, const DynList< size_t > &indices, const bool close=true) |
| | Constructs a Polygon from a list of indices into a vertex array.
|
| |
| template<typename HullAlgorithm > |
| Polygon | Aleph::visualize_convex_hull (Tikz_Plane &plane, const DynList< Point > &points, const HullAlgorithm &hull_algorithm, const Tikz_Style &point_style=tikz_points_style("black", 0.6), const Tikz_Style &hull_style=tikz_wire_style("red"), const Tikz_Style &hull_vertex_style=tikz_points_style("red"), const int point_layer=Tikz_Plane::Layer_Default, const int hull_layer=Tikz_Plane::Layer_Foreground, const bool draw_hull_vertices=true) |
| | Runs a convex hull algorithm and visualizes the result.
|
| |
| Polygon | Aleph::visualize_convex_intersection (Tikz_Plane &plane, const Polygon &subject, const Polygon &clip, const ConvexPolygonIntersectionBasic &intersection_algorithm={}, const Tikz_Style &subject_style=tikz_area_style("blue", "blue!15", 0.45), const Tikz_Style &clip_style=tikz_area_style("orange", "orange!20", 0.45), const Tikz_Style &result_style=tikz_area_style("red", "red!30", 0.60), const int input_layer=Tikz_Plane::Layer_Default, const int result_layer=Tikz_Plane::Layer_Foreground) |
| | Visualizes the intersection of two convex polygons.
|
| |
| Array< Polygon > | Aleph::visualize_boolean_operation (Tikz_Plane &plane, const Polygon &a, const Polygon &b, const BooleanPolygonOperations::Op op, const BooleanPolygonOperations &bop={}, const Tikz_Style &a_style=tikz_area_style("blue", "blue!15", 0.35), const Tikz_Style &b_style=tikz_area_style("green!60!black", "green!20", 0.35), const Tikz_Style &result_style=tikz_area_style("red", "red!35", 0.65), const int input_layer=Tikz_Plane::Layer_Default, const int result_layer=Tikz_Plane::Layer_Foreground) |
| | Visualizes a boolean operation (union, intersection, difference) on two polygons.
|
| |
| void | Aleph::put_delaunay_result (Tikz_Plane &plane, const DelaunayTriangulationBowyerWatson::Result &dt, const Tikz_Style &triangle_style=tikz_wire_style("blue"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black"), const int triangle_layer=Tikz_Plane::Layer_Default, const int site_layer=Tikz_Plane::Layer_Foreground) |
| | Insert Delaunay triangulation as triangle outlines.
|
| |
| DelaunayTriangulationBowyerWatson::Result | Aleph::visualize_delaunay (Tikz_Plane &plane, const DynList< Point > &points, const DelaunayTriangulationBowyerWatson &algorithm={}, const Tikz_Style &triangle_style=tikz_wire_style("blue"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black")) |
| | Compute and insert Delaunay triangulation as triangle outlines.
|
| |
| Point | Aleph::ray_endpoint (const Point &src, const Point &direction, const Geom_Number &length) |
| |
| template<typename VoronoiResult > |
| void | Aleph::put_voronoi_result (Tikz_Plane &plane, const VoronoiResult &vor, const bool draw_cells=false, const Tikz_Style &cell_style=tikz_area_style("gray!50!black", "gray!15", 0.35), const Tikz_Style &edge_style=tikz_wire_style("black"), const Tikz_Style &unbounded_edge_style=tikz_wire_style("black", true, true), const Tikz_Style &site_style=tikz_points_style("red"), const Geom_Number &unbounded_ray_length=Geom_Number(50), const int cell_layer=Tikz_Plane::Layer_Background, const int edge_layer=Tikz_Plane::Layer_Default, const int site_layer=Tikz_Plane::Layer_Foreground) |
| | Insert Voronoi diagram structures (cells, edges, sites).
|
| |
| VoronoiDiagram::Result | Aleph::visualize_voronoi (Tikz_Plane &plane, const DynList< Point > &sites, const VoronoiDiagram &algorithm={}, const bool draw_cells=false, const Tikz_Style &cell_style=tikz_area_style("gray!50!black", "gray!15", 0.35), const Tikz_Style &edge_style=tikz_wire_style("black"), const Tikz_Style &unbounded_edge_style=tikz_wire_style("black", true, true), const Tikz_Style &site_style=tikz_points_style("red"), const Geom_Number &unbounded_ray_length=Geom_Number(50)) |
| | Compute and insert Voronoi diagram for input sites.
|
| |
| void | Aleph::put_power_diagram_result (Tikz_Plane &plane, const PowerDiagram::Result &pd, const bool draw_cells=true, const Tikz_Style &cell_style=tikz_area_style("violet", "violet!18", 0.35), const Tikz_Style &edge_style=tikz_wire_style("violet"), const Tikz_Style &site_style=tikz_points_style("purple"), const int cell_layer=Tikz_Plane::Layer_Background, const int edge_layer=Tikz_Plane::Layer_Default, const int site_layer=Tikz_Plane::Layer_Foreground) |
| | Insert Power diagram structures (cells, edges, weighted sites).
|
| |
| PowerDiagram::Result | Aleph::visualize_power_diagram (Tikz_Plane &plane, const Array< PowerDiagram::WeightedSite > &sites, const PowerDiagram &algorithm={}, const bool draw_cells=true, const Tikz_Style &cell_style=tikz_area_style("violet", "violet!18", 0.35), const Tikz_Style &edge_style=tikz_wire_style("violet"), const Tikz_Style &site_style=tikz_points_style("purple")) |
| | Compute and insert Power diagram for weighted sites.
|
| |
| void | Aleph::put_segment_arrangement_result (Tikz_Plane &plane, const SegmentArrangement::Result &arrangement, const bool draw_faces=true, const bool draw_vertices=true, const bool draw_unbounded_face=false, const Tikz_Style &face_style=tikz_area_style("teal!60!black", "teal!12", 0.30), const Tikz_Style &edge_style=tikz_wire_style("teal!70!black"), const Tikz_Style &vertex_style=tikz_points_style("teal!70!black"), const int face_layer=Tikz_Plane::Layer_Background, const int edge_layer=Tikz_Plane::Layer_Default, const int vertex_layer=Tikz_Plane::Layer_Foreground, const bool color_faces_by_index=false) |
| | Insert segment arrangement structures (faces, edges, vertices).
|
| |
| SegmentArrangement::Result | Aleph::visualize_segment_arrangement (Tikz_Plane &plane, const Array< Segment > &segments, const SegmentArrangement &algorithm={}, const bool draw_faces=true, const bool draw_vertices=true, const bool draw_unbounded_face=false, const Tikz_Style &face_style=tikz_area_style("teal!60!black", "teal!12", 0.30), const Tikz_Style &edge_style=tikz_wire_style("teal!70!black"), const Tikz_Style &vertex_style=tikz_points_style("teal!70!black"), const bool color_faces_by_index=false) |
| | Compute and insert arrangement for input segments.
|
| |
| void | Aleph::put_kdtree_partitions_result (Tikz_Plane &plane, const KDTreePointSearch::DebugSnapshot &snapshot, const bool draw_partition_boxes=false, const bool draw_points=true, const Tikz_Style &partition_style=tikz_wire_style("gray!55", true), const Tikz_Style &split_style=tikz_wire_style("blue!70"), const Tikz_Style &point_style=tikz_points_style("red"), const int partition_layer=Tikz_Plane::Layer_Background, const int split_layer=Tikz_Plane::Layer_Default, const int point_layer=Tikz_Plane::Layer_Foreground) |
| | Draw KD-tree partitions from a debug snapshot.
|
| |
| KDTreePointSearch::DebugSnapshot | Aleph::visualize_kdtree_partitions (Tikz_Plane &plane, const KDTreePointSearch &kd_tree, const bool draw_partition_boxes=false, const bool draw_points=true, const Tikz_Style &partition_style=tikz_wire_style("gray!55", true), const Tikz_Style &split_style=tikz_wire_style("blue!70"), const Tikz_Style &point_style=tikz_points_style("red")) |
| | Visualize KD-tree recursive space partitions.
|
| |
| void | Aleph::put_range_tree_result (Tikz_Plane &plane, const RangeTree2D::DebugSnapshot &snapshot, const bool draw_points=true, const Rectangle *query_rect=nullptr, const DynList< Point > *query_hits=nullptr, const Tikz_Style &split_style=tikz_wire_style("purple"), const Tikz_Style &point_style=tikz_points_style("black"), const Tikz_Style &query_rect_style=tikz_wire_style("red", true), const Tikz_Style &query_hit_style=tikz_points_style("red"), const int split_layer=Tikz_Plane::Layer_Default, const int point_layer=Tikz_Plane::Layer_Foreground) |
| | Draw range-tree X-axis hierarchy and optional query highlights.
|
| |
| RangeTree2D::DebugSnapshot | Aleph::visualize_range_tree (Tikz_Plane &plane, const RangeTree2D &tree, const bool draw_points=true, const Tikz_Style &split_style=tikz_wire_style("purple"), const Tikz_Style &point_style=tikz_points_style("black")) |
| | Visualize range-tree structure without a query overlay.
|
| |
| RangeTreeQueryVizResult | Aleph::visualize_range_tree_query (Tikz_Plane &plane, const RangeTree2D &tree, const Rectangle &query_rect, const bool draw_points=true, const Tikz_Style &split_style=tikz_wire_style("purple"), const Tikz_Style &point_style=tikz_points_style("black"), const Tikz_Style &query_rect_style=tikz_wire_style("red", true), const Tikz_Style &query_hit_style=tikz_points_style("red")) |
| | Visualize range-tree plus a query rectangle and matching points.
|
| |
| void | Aleph::put_aabb_tree_result (Tikz_Plane &plane, const AABBTree::DebugSnapshot &snapshot, const Rectangle *query_rect=nullptr, const Array< size_t > *query_hit_ids=nullptr, const Tikz_Style &node_bbox_style=tikz_wire_style("teal!70!black"), const Tikz_Style &leaf_bbox_style=tikz_wire_style("blue!70"), const Tikz_Style &query_rect_style=tikz_wire_style("red", true), const Tikz_Style &query_hit_style=tikz_wire_style("red"), const int node_layer=Tikz_Plane::Layer_Default, const int query_layer=Tikz_Plane::Layer_Foreground) |
| | Draw AABB tree hierarchy and optional query results.
|
| |
| AABBTree::DebugSnapshot | Aleph::visualize_aabb_tree (Tikz_Plane &plane, const AABBTree &tree, const Tikz_Style &node_bbox_style=tikz_wire_style("teal!70!black"), const Tikz_Style &leaf_bbox_style=tikz_wire_style("blue!70")) |
| | Visualize AABB tree hierarchy.
|
| |
| AABBTreeQueryVizResult | Aleph::visualize_aabb_tree_query (Tikz_Plane &plane, const AABBTree &tree, const Rectangle &query_rect, const Tikz_Style &node_bbox_style=tikz_wire_style("teal!70!black"), const Tikz_Style &leaf_bbox_style=tikz_wire_style("blue!70"), const Tikz_Style &query_rect_style=tikz_wire_style("red", true), const Tikz_Style &query_hit_style=tikz_wire_style("red")) |
| | Visualize AABB tree with a rectangle query overlay.
|
| |
| void | Aleph::put_path (Tikz_Plane &plane, const DynList< Point > &path, const Tikz_Style &segment_style=tikz_path_style("red"), const bool draw_waypoints=true, const Tikz_Style &waypoint_style=tikz_points_style("red"), const int segment_layer=Tikz_Plane::Layer_Foreground, const int waypoint_layer=Tikz_Plane::Layer_Overlay) |
| | Insert a point path as connected segments and optional waypoints.
|
| |
| void | Aleph::put_path (Tikz_Plane &plane, const Array< Point > &path, const Tikz_Style &segment_style=tikz_path_style("red"), const bool draw_waypoints=true, const Tikz_Style &waypoint_style=tikz_points_style("red"), const int segment_layer=Tikz_Plane::Layer_Foreground, const int waypoint_layer=Tikz_Plane::Layer_Overlay) |
| | Insert an Array<Point> path as connected segments and waypoints.
|
| |
| void | Aleph::put_portals (Tikz_Plane &plane, const Array< FunnelPortal > &portals, const bool skip_degenerate=true, const Tikz_Style &portal_style=tikz_wire_style("purple", true), const int portal_layer=Tikz_Plane::Layer_Default) |
| | Insert funnel portals as segment connectors.
|
| |
| FunnelTraceResult | Aleph::compute_shortest_path_funnel_trace (const Polygon &polygon, const Point &source, const Point &target) |
| | Compute a full SSFA trace (portal-by-portal states).
|
| |
| void | Aleph::put_funnel_trace_step (Tikz_Plane &plane, const Polygon &polygon, const Point &source, const Point &target, const FunnelTraceResult &trace, size_t step_index, const Tikz_Style &polygon_style=tikz_area_style("black", "gray!15", 0.22), const Tikz_Style &source_style=tikz_points_style("green!50!black"), const Tikz_Style &target_style=tikz_points_style("blue"), const Tikz_Style &all_portals_style=tikz_wire_style("purple", true), const Tikz_Style &active_portal_style=tikz_path_style("purple"), const Tikz_Style &funnel_leg_style=tikz_path_style("orange!90!black"), const Tikz_Style &committed_style=tikz_path_style("red"), const bool draw_waypoints=true, const Tikz_Style &waypoint_style=tikz_points_style("red"), const int polygon_layer=Tikz_Plane::Layer_Default, const int portal_layer=Tikz_Plane::Layer_Foreground, const int highlight_layer=Tikz_Plane::Layer_Overlay) |
| | Render one funnel-trace frame in a plane.
|
| |
| DynList< Point > | Aleph::visualize_shortest_path_in_polygon (Tikz_Plane &plane, const Polygon &polygon, const Point &source, const Point &target, const ShortestPathInPolygon &algorithm={}, const Tikz_Style &polygon_style=tikz_area_style("black", "gray!15", 0.25), const Tikz_Style &source_style=tikz_points_style("green!50!black"), const Tikz_Style &target_style=tikz_points_style("blue"), const Tikz_Style &path_style=tikz_path_style("red"), const bool draw_waypoints=true, const Tikz_Style &waypoint_style=tikz_points_style("red"), const int polygon_layer=Tikz_Plane::Layer_Default, const int path_layer=Tikz_Plane::Layer_Foreground) |
| | Visualize the shortest path inside a simple polygon.
|
| |
| ShortestPathDebugResult | Aleph::visualize_shortest_path_with_portals (Tikz_Plane &plane, const Polygon &polygon, const Point &source, const Point &target, const ShortestPathInPolygon &algorithm={}, const Tikz_Style &polygon_style=tikz_area_style("black", "gray!15", 0.25), const Tikz_Style &source_style=tikz_points_style("green!50!black"), const Tikz_Style &target_style=tikz_points_style("blue"), const Tikz_Style &portal_style=tikz_wire_style("purple", true), const Tikz_Style &path_style=tikz_path_style("red"), const bool draw_waypoints=true, const Tikz_Style &waypoint_style=tikz_points_style("red"), const int polygon_layer=Tikz_Plane::Layer_Default, const int portal_layer=Tikz_Plane::Layer_Foreground, const int path_layer=Tikz_Plane::Layer_Overlay) |
| | Visualize the shortest path plus funnel portals.
|
| |
| void | Aleph::put_convex_decomposition_result (Tikz_Plane &plane, const Array< Polygon > &parts, const bool color_parts_by_index=true, const Tikz_Style &part_style=tikz_area_style("blue!60!black", "blue!15", 0.40), const int part_layer=Tikz_Plane::Layer_Default) |
| | Insert convex decomposition polygons.
|
| |
| Array< Polygon > | Aleph::visualize_convex_decomposition (Tikz_Plane &plane, const Polygon &polygon, const ConvexPolygonDecomposition &algorithm={}, const bool draw_input_polygon=true, const Tikz_Style &input_style=tikz_wire_style("black", true), const bool color_parts_by_index=true, const Tikz_Style &part_style=tikz_area_style("blue!60!black", "blue!15", 0.40), const int input_layer=Tikz_Plane::Layer_Default, const int part_layer=Tikz_Plane::Layer_Foreground) |
| | Compute and insert convex decomposition for a polygon.
|
| |
| void | Aleph::put_alpha_shape_result (Tikz_Plane &plane, const AlphaShape::Result &alpha_shape, const bool draw_kept_triangles=false, const Tikz_Style &triangle_style=tikz_wire_style("gray!55"), const Tikz_Style &boundary_style=tikz_path_style("orange!90!black"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black"), const int triangle_layer=Tikz_Plane::Layer_Background, const int boundary_layer=Tikz_Plane::Layer_Foreground, const int site_layer=Tikz_Plane::Layer_Overlay) |
| | Insert alpha-shape structures (kept triangles, boundary, sites).
|
| |
| AlphaShape::Result | Aleph::visualize_alpha_shape (Tikz_Plane &plane, const DynList< Point > &points, const Geom_Number &alpha_squared, const AlphaShape &algorithm={}, const bool draw_kept_triangles=false, const Tikz_Style &triangle_style=tikz_wire_style("gray!55"), const Tikz_Style &boundary_style=tikz_path_style("orange!90!black"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black")) |
| | Compute and insert alpha-shape for input points.
|
| |
| void | Aleph::put_regular_triangulation_result (Tikz_Plane &plane, const RegularTriangulationBowyerWatson::Result &rt, const Tikz_Style &triangle_style=tikz_wire_style("blue!60"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black"), const int triangle_layer=Tikz_Plane::Layer_Default, const int site_layer=Tikz_Plane::Layer_Foreground) |
| | Draw regular (weighted Delaunay) triangulation output.
|
| |
| RegularTriangulationBowyerWatson::Result | Aleph::visualize_regular_triangulation (Tikz_Plane &plane, const Array< RegularTriangulationBowyerWatson::WeightedSite > &weighted_sites, const RegularTriangulationBowyerWatson &algorithm={}, const Tikz_Style &triangle_style=tikz_wire_style("blue!60"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black")) |
| | Compute and insert regular (weighted Delaunay) triangulation.
|
| |
| void | Aleph::put_closest_pair_result (Tikz_Plane &plane, const DynList< Point > &points, const ClosestPairDivideAndConquer::Result &result, const Tikz_Style &points_style=tikz_points_style("black"), const Tikz_Style &pair_style=tikz_path_style("red"), const Tikz_Style &pair_points_style=tikz_points_style("red"), const int points_layer=Tikz_Plane::Layer_Default, const int pair_layer=Tikz_Plane::Layer_Foreground) |
| | Draw closest-pair result over the full point set.
|
| |
| ClosestPairDivideAndConquer::Result | Aleph::visualize_closest_pair (Tikz_Plane &plane, const DynList< Point > &points, const ClosestPairDivideAndConquer &algorithm={}, const Tikz_Style &points_style=tikz_points_style("black"), const Tikz_Style &pair_style=tikz_path_style("red"), const Tikz_Style &pair_points_style=tikz_points_style("red")) |
| | Compute and draw the closest pair from an input point set.
|
| |
| void | Aleph::put_rotating_calipers_result (Tikz_Plane &plane, const Polygon &polygon, const RotatingCalipersResult &result, const Tikz_Style &polygon_style=tikz_wire_style("gray!55"), const Tikz_Style &diameter_style=tikz_path_style("red"), const Tikz_Style &width_style=tikz_path_style("blue"), const Tikz_Style &witness_style=tikz_points_style("orange!90!black"), const int polygon_layer=Tikz_Plane::Layer_Default, const int witness_layer=Tikz_Plane::Layer_Foreground) |
| | Draw diameter and minimum-width witnesses for a convex polygon.
|
| |
| RotatingCalipersResult | Aleph::visualize_rotating_calipers (Tikz_Plane &plane, const Polygon &polygon, const Tikz_Style &polygon_style=tikz_wire_style("gray!55"), const Tikz_Style &diameter_style=tikz_path_style("red"), const Tikz_Style &width_style=tikz_path_style("blue"), const Tikz_Style &witness_style=tikz_points_style("orange!90!black")) |
| | Compute and draw rotating-calipers diameter and minimum width.
|
| |
| void | Aleph::put_half_plane_intersection_result (Tikz_Plane &plane, const Array< HalfPlaneIntersection::HalfPlane > &halfplanes, const Polygon &intersection, const Tikz_Style &boundary_style=tikz_wire_style("gray!60", true, true), const Tikz_Style &result_style=tikz_area_style("red", "red!25", 0.50), const int boundary_layer=Tikz_Plane::Layer_Default, const int result_layer=Tikz_Plane::Layer_Foreground) |
| | Draw half-plane boundaries and their bounded intersection polygon.
|
| |
| Polygon | Aleph::visualize_half_plane_intersection (Tikz_Plane &plane, const Array< HalfPlaneIntersection::HalfPlane > &halfplanes, const HalfPlaneIntersection &algorithm={}, const Tikz_Style &boundary_style=tikz_wire_style("gray!60", true, true), const Tikz_Style &result_style=tikz_area_style("red", "red!25", 0.50)) |
| | Compute and draw bounded half-plane intersection.
|
| |
| void | Aleph::put_minkowski_sum_result (Tikz_Plane &plane, const Polygon &first, const Polygon &second, const Polygon &result, const Tikz_Style &first_style=tikz_area_style("blue", "blue!14", 0.30), const Tikz_Style &second_style=tikz_area_style("green!60!black", "green!16", 0.30), const Tikz_Style &result_style=tikz_area_style("red", "red!26", 0.60), const int input_layer=Tikz_Plane::Layer_Default, const int result_layer=Tikz_Plane::Layer_Foreground) |
| | Draw input polygons and their Minkowski sum result.
|
| |
| Polygon | Aleph::visualize_minkowski_sum (Tikz_Plane &plane, const Polygon &first, const Polygon &second, const MinkowskiSumConvex &algorithm={}, const Tikz_Style &first_style=tikz_area_style("blue", "blue!14", 0.30), const Tikz_Style &second_style=tikz_area_style("green!60!black", "green!16", 0.30), const Tikz_Style &result_style=tikz_area_style("red", "red!26", 0.60)) |
| | Compute and draw Minkowski sum of two convex polygons.
|
| |
| void | Aleph::put_monotone_triangulation_result (Tikz_Plane &plane, const Polygon &polygon, const DynList< Triangle > &triangles, const Tikz_Style &polygon_style=tikz_wire_style("black"), const Tikz_Style &triangle_style=tikz_wire_style("blue!65"), const int polygon_layer=Tikz_Plane::Layer_Default, const int triangle_layer=Tikz_Plane::Layer_Foreground) |
| | Draw a monotone triangulation result plus polygon boundary.
|
| |
| DynList< Triangle > | Aleph::visualize_monotone_triangulation (Tikz_Plane &plane, const Polygon &polygon, const MonotonePolygonTriangulation &algorithm={}, const Tikz_Style &polygon_style=tikz_wire_style("black"), const Tikz_Style &triangle_style=tikz_wire_style("blue!65")) |
| | Compute and draw triangulation via monotone partition pipeline.
|
| |
| void | Aleph::put_visibility_polygon_result (Tikz_Plane &plane, const Polygon &polygon, const Point &query_point, const Polygon &visibility_polygon, const Tikz_Style &polygon_style=tikz_wire_style("black"), const Tikz_Style &visibility_style=tikz_area_style("orange!90!black", "orange!25", 0.50), const Tikz_Style &query_style=tikz_points_style("red"), const int polygon_layer=Tikz_Plane::Layer_Default, const int visibility_layer=Tikz_Plane::Layer_Foreground) |
| | Draw visibility polygon with source polygon and query point.
|
| |
| Polygon | Aleph::visualize_visibility_polygon (Tikz_Plane &plane, const Polygon &polygon, const Point &query_point, const VisibilityPolygon &algorithm={}, const Tikz_Style &polygon_style=tikz_wire_style("black"), const Tikz_Style &visibility_style=tikz_area_style("orange!90!black", "orange!25", 0.50), const Tikz_Style &query_style=tikz_points_style("red")) |
| | Compute and draw visibility polygon from a query point.
|
| |
| void | Aleph::put_line_sweep_result (Tikz_Plane &plane, const Array< Segment > &segments, const Array< SweepLineSegmentIntersection::Intersection > &intersections, const Tikz_Style &segment_style=tikz_wire_style("blue!60"), const Tikz_Style &intersection_style=tikz_points_style("red"), const int segment_layer=Tikz_Plane::Layer_Default, const int intersection_layer=Tikz_Plane::Layer_Foreground) |
| | Draw line segments and all sweep-line intersection points.
|
| |
| Array< SweepLineSegmentIntersection::Intersection > | Aleph::visualize_line_sweep (Tikz_Plane &plane, const Array< Segment > &segments, const SweepLineSegmentIntersection &algorithm={}, const Tikz_Style &segment_style=tikz_wire_style("blue!60"), const Tikz_Style &intersection_style=tikz_points_style("red")) |
| | Compute and draw Bentley-Ottmann line-sweep intersections.
|
| |
| void | Aleph::put_cdt_result (Tikz_Plane &plane, const ConstrainedDelaunayTriangulation::Result &cdt, const Tikz_Style &triangle_style=tikz_wire_style("blue!60"), const Tikz_Style &constraint_style=tikz_path_style("red"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black"), const int triangle_layer=Tikz_Plane::Layer_Default, const int constraint_layer=Tikz_Plane::Layer_Foreground, const int site_layer=Tikz_Plane::Layer_Overlay) |
| | Insert constrained Delaunay triangulation result.
|
| |
| ConstrainedDelaunayTriangulation::Result | Aleph::visualize_cdt (Tikz_Plane &plane, const DynList< Point > &points, const DynList< Segment > &constraints, const ConstrainedDelaunayTriangulation &algorithm={}, const Tikz_Style &triangle_style=tikz_wire_style("blue!60"), const Tikz_Style &constraint_style=tikz_path_style("red"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black")) |
| | Compute and insert constrained Delaunay triangulation.
|
| |
| void | Aleph::put_mec_result (Tikz_Plane &plane, const MinimumEnclosingCircle::Circle &circle, const DynList< Point > &points, const Tikz_Style &circle_style=tikz_wire_style("blue!70"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black"), const int circle_layer=Tikz_Plane::Layer_Default, const int site_layer=Tikz_Plane::Layer_Overlay) |
| | Draw a precomputed minimum enclosing circle result.
|
| |
| MinimumEnclosingCircle::Circle | Aleph::visualize_mec (Tikz_Plane &plane, const DynList< Point > &points, const MinimumEnclosingCircle &algorithm={}, const Tikz_Style &circle_style=tikz_wire_style("blue!70"), const bool draw_sites=true, const Tikz_Style &site_style=tikz_points_style("black")) |
| | Compute minimum enclosing circle and insert into plane.
|
| |
| void | Aleph::put_simplification_result (Tikz_Plane &plane, const Polygon &original, const Polygon &simplified, const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &simplified_style=tikz_wire_style("blue!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Draw original and simplified polygons overlaid.
|
| |
| Polygon | Aleph::visualize_douglas_peucker (Tikz_Plane &plane, const Polygon &poly, const Geom_Number &epsilon, const DouglasPeuckerSimplification &algorithm={}, const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &simplified_style=tikz_wire_style("blue!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Simplify a polygon with Douglas-Peucker and draw the result.
|
| |
| Polygon | Aleph::visualize_visvalingam_whyatt (Tikz_Plane &plane, const Polygon &poly, const Geom_Number &area_threshold, const VisvalingamWhyattSimplification &algorithm={}, const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &simplified_style=tikz_wire_style("green!70!black", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Simplify a polygon with Visvalingam-Whyatt and draw the result.
|
| |
| void | Aleph::put_offset_result (Tikz_Plane &plane, const Polygon &original, const PolygonOffset::Result &result, const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &offset_style=tikz_wire_style("blue!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Draw a polygon offset result overlaid on the original polygon.
|
| |
| PolygonOffset::Result | Aleph::visualize_polygon_offset (Tikz_Plane &plane, const Polygon &poly, const Geom_Number &distance, const PolygonOffset &algorithm={}, PolygonOffset::JoinType join=PolygonOffset::JoinType::Miter, const Geom_Number &miter_limit=Geom_Number(2), const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &offset_style=tikz_wire_style("blue!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Offset a polygon and draw the result.
|
| |
| void | Aleph::put_smoothing_result (Tikz_Plane &plane, const Polygon &original, const Polygon &smoothed, const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &smoothed_style=tikz_wire_style("violet!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Draw original and smoothed polygons overlaid.
|
| |
| Polygon | Aleph::visualize_chaikin_smoothing (Tikz_Plane &plane, const Polygon &poly, const size_t iterations, const Geom_Number &ratio=Geom_Number(1, 4), const Tikz_Style &original_style=tikz_wire_style("gray!50"), const Tikz_Style &smoothed_style=tikz_wire_style("violet!80", 1.2), const bool draw_vertices=true, const Tikz_Style &vertex_style=tikz_points_style("red")) |
| | Smooth a polygon with Chaikin subdivision and draw the result.
|
| |
| void | Aleph::put_trapezoidal_map_result (Tikz_Plane &plane, const TrapezoidalMapPointLocation::Result &res, const Tikz_Style &segment_style=tikz_path_style("red"), const Tikz_Style &extension_style=tikz_wire_style("gray!60", true), const bool draw_trapezoids=true, const double trapezoid_opacity=0.3, const int trap_layer=Tikz_Plane::Layer_Background, const int seg_layer=Tikz_Plane::Layer_Foreground, const int ext_layer=Tikz_Plane::Layer_Default) |
| | Draw the trapezoidal map result into a Tikz_Plane.
|
| |
| TrapezoidalMapPointLocation::Result | Aleph::visualize_trapezoidal_map (Tikz_Plane &plane, const Array< Segment > &segments, const Tikz_Style &segment_style=tikz_path_style("red"), const Tikz_Style &extension_style=tikz_wire_style("gray!60", true), const bool draw_trapezoids=true, const double trapezoid_opacity=0.3) |
| | Build a trapezoidal map and draw it.
|
| |
| TrapezoidalMapPointLocation::Result | Aleph::visualize_trapezoidal_map (Tikz_Plane &plane, const Polygon &polygon, const Tikz_Style &segment_style=tikz_path_style("red"), const Tikz_Style &extension_style=tikz_wire_style("gray!60", true), const bool draw_trapezoids=true, const double trapezoid_opacity=0.3) |
| | Build a trapezoidal map from a polygon and draw it.
|
| |