OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Polygon.hpp File Reference
#include "libslic3r.h"
#include <initializer_list>
#include <utility>
#include <cstddef>
#include <algorithm>
#include <iterator>
#include <cmath>
#include <cassert>
#include <vector>
#include <string>
#include "Line.hpp"
#include "Point.hpp"
#include "MultiPoint.hpp"
#include "Polyline.hpp"
#include <boost/polygon/polygon.hpp>
Include dependency graph for Polygon.hpp:

Go to the source code of this file.

Classes

class  Slic3r::Polygon
struct  Slic3r::PolygonPoint
 Define point laying on polygon keep index of polygon line and point coordinate. More...
struct  boost::polygon::geometry_concept< Slic3r::Polygon >
struct  boost::polygon::polygon_traits< Slic3r::Polygon >
struct  boost::polygon::polygon_mutable_traits< Slic3r::Polygon >
struct  boost::polygon::geometry_concept< Slic3r::Polygons >
struct  boost::polygon::polygon_set_traits< Slic3r::Polygons >
struct  boost::polygon::polygon_set_mutable_traits< Slic3r::Polygons >

Namespaces

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

Typedefs

using Slic3r::Polygons = std::vector<Polygon, PointsAllocator<Polygon>>
using Slic3r::PolygonPtrs = std::vector<Polygon*, PointsAllocator<Polygon*>>
using Slic3r::ConstPolygonPtrs = std::vector<const Polygon*, PointsAllocator<const Polygon*>>
using Slic3r::PolygonPoints = std::vector<PolygonPoint>

Functions

bool Slic3r::contains (const Polygon &polygon, const Point &p, bool border_result)
bool Slic3r::contains (const Polygons &polygons, const Point &p, bool border_result)
bool Slic3r::operator== (const Polygon &lhs, const Polygon &rhs)
bool Slic3r::operator!= (const Polygon &lhs, const Polygon &rhs)
BoundingBox Slic3r::get_extents (const Polygon &poly)
BoundingBox Slic3r::get_extents (const Polygons &polygons)
BoundingBox Slic3r::get_extents_rotated (const Polygon &poly, double angle)
BoundingBox Slic3r::get_extents_rotated (const Polygons &polygons, double angle)
std::vector< BoundingBox > Slic3r::get_extents_vector (const Polygons &polygons)
bool Slic3r::polygon_is_convex (const Points &poly)
bool Slic3r::polygon_is_convex (const Polygon &poly)
bool Slic3r::has_duplicate_points (Polygon &&poly)
bool Slic3r::has_duplicate_points (const Polygon &poly)
bool Slic3r::has_duplicate_points (const Polygons &polys)
bool Slic3r::remove_same_neighbor (Polygon &polygon)
bool Slic3r::remove_same_neighbor (Polygons &polygons)
double Slic3r::total_length (const Polygons &polylines)
double Slic3r::area (const Polygon &poly)
double Slic3r::area (const Polygons &polys)
bool Slic3r::remove_sticks (Polygon &poly)
bool Slic3r::remove_sticks (Polygons &polys)
bool Slic3r::remove_degenerate (Polygons &polys)
bool Slic3r::remove_small (Polygons &polys, double min_area)
void Slic3r::remove_collinear (Polygon &poly)
void Slic3r::remove_collinear (Polygons &polys)
void Slic3r::polygons_append (Polygons &dst, const Polygons &src)
void Slic3r::polygons_append (Polygons &dst, Polygons &&src)
Polygons Slic3r::polygons_simplify (const Polygons &source_polygons, double tolerance)
void Slic3r::polygons_rotate (Polygons &polys, double angle)
void Slic3r::polygons_reverse (Polygons &polys)
Points Slic3r::to_points (const Polygon &poly)
size_t Slic3r::count_points (const Polygons &polys)
Points Slic3r::to_points (const Polygons &polys)
Lines Slic3r::to_lines (const Polygon &poly)
Lines Slic3r::to_lines (const Polygons &polys)
Polyline Slic3r::to_polyline (const Polygon &polygon)
Polylines Slic3r::to_polylines (const Polygons &polygons)
Polylines Slic3r::to_polylines (Polygons &&polys)
Polygons Slic3r::to_polygons (const Polylines &polylines)
Polygons Slic3r::to_polygons (const VecOfPoints &paths)
Polygons Slic3r::to_polygons (VecOfPoints &&paths)
bool Slic3r::polygons_match (const Polygon &l, const Polygon &r)
Polygon Slic3r::make_circle (double radius, double error)
Polygon Slic3r::make_circle_num_segments (double radius, size_t num_segments)
bool Slic3r::overlaps (const Polygons &polys1, const Polygons &polys2)

Class Documentation

◆ Slic3r::PolygonPoint

struct Slic3r::PolygonPoint

Define point laying on polygon keep index of polygon line and point coordinate.

Collaboration diagram for Slic3r::PolygonPoint:
Class Members
size_t index
Point point

◆ boost::polygon::geometry_concept< Slic3r::Polygon >

struct boost::polygon::geometry_concept< Slic3r::Polygon >
Class Members
typedef polygon_concept type

◆ boost::polygon::geometry_concept< Slic3r::Polygons >

struct boost::polygon::geometry_concept< Slic3r::Polygons >
Class Members
typedef polygon_set_concept type