OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
VoronoiOffset.hpp File Reference
#include <boost/polygon/polygon.hpp>
#include <cmath>
#include <vector>
#include "Voronoi.hpp"
#include "libslic3r/Line.hpp"
#include "libslic3r/Point.hpp"
#include "libslic3r/Polygon.hpp"
Include dependency graph for VoronoiOffset.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Slic3r
 |/ Copyright (c) Prusa Research 2020 - 2023 Enrico Turri @enricoturri1966 |/ |/ PrusaSlicer is released under the terms of the AGPLv3 or higher |/
namespace  Slic3r::Voronoi

Typedefs

using Slic3r::Voronoi::VD = Slic3r::Geometry::VoronoiDiagram

Enumerations

enum class  Slic3r::Voronoi::VertexCategory : unsigned char { Slic3r::Voronoi::OnContour , Slic3r::Voronoi::Inside , Slic3r::Voronoi::Outside , Slic3r::Voronoi::Unknown }
enum class  Slic3r::Voronoi::EdgeCategory : unsigned char { Slic3r::Voronoi::PointsToContour , Slic3r::Voronoi::PointsInside , Slic3r::Voronoi::PointsOutside , Slic3r::Voronoi::Unknown }
enum class  Slic3r::Voronoi::CellCategory : unsigned char { Slic3r::Voronoi::Boundary , Slic3r::Voronoi::Inside , Slic3r::Voronoi::Outside , Slic3r::Voronoi::Unknown }

Functions

const Point & Slic3r::Voronoi::contour_point (const VD::cell_type &cell, const Line &line)
Point & Slic3r::Voronoi::contour_point (const VD::cell_type &cell, Line &line)
const Point & Slic3r::Voronoi::contour_point (const VD::cell_type &cell, const Lines &lines)
Point & Slic3r::Voronoi::contour_point (const VD::cell_type &cell, Lines &lines)
Vec2d Slic3r::Voronoi::vertex_point (const VD::vertex_type &v)
Vec2d Slic3r::Voronoi::vertex_point (const VD::vertex_type *v)
VertexCategory Slic3r::Voronoi::vertex_category (const VD::vertex_type &v)
VertexCategory Slic3r::Voronoi::vertex_category (const VD::vertex_type *v)
void Slic3r::Voronoi::set_vertex_category (VD::vertex_type &v, VertexCategory c)
void Slic3r::Voronoi::set_vertex_category (VD::vertex_type *v, VertexCategory c)
EdgeCategory Slic3r::Voronoi::edge_category (const VD::edge_type &e)
EdgeCategory Slic3r::Voronoi::edge_category (const VD::edge_type *e)
void Slic3r::Voronoi::set_edge_category (VD::edge_type &e, EdgeCategory c)
void Slic3r::Voronoi::set_edge_category (VD::edge_type *e, EdgeCategory c)
CellCategory Slic3r::Voronoi::cell_category (const VD::cell_type &v)
CellCategory Slic3r::Voronoi::cell_category (const VD::cell_type *v)
void Slic3r::Voronoi::set_cell_category (const VD::cell_type &v, CellCategory c)
void Slic3r::Voronoi::set_cell_category (const VD::cell_type *v, CellCategory c)
void Slic3r::Voronoi::reset_inside_outside_annotations (VD &vd)
void Slic3r::Voronoi::annotate_inside_outside (VD &vd, const Lines &lines)
std::vector< double > Slic3r::Voronoi::signed_vertex_distances (const VD &vd, const Lines &lines)
static bool Slic3r::Voronoi::edge_offset_no_intersection (const Vec2d &intersection_point)
static bool Slic3r::Voronoi::edge_offset_has_intersection (const Vec2d &intersection_point)
std::vector< Vec2d > Slic3r::Voronoi::edge_offset_contour_intersections (const VD &vd, const Lines &lines, const std::vector< double > &vertex_distances, double offset_distance)
std::vector< Vec2d > Slic3r::Voronoi::skeleton_edges_rough (const VD &vd, const Lines &lines, const double threshold_alpha)
Polygons Slic3r::Voronoi::offset (const Geometry::VoronoiDiagram &vd, const Lines &lines, const std::vector< double > &signed_vertex_distances, double offset_distance, double discretization_error)
Polygons Slic3r::Voronoi::offset (const VD &vd, const Lines &lines, double offset_distance, double discretization_error)