OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
LayerRegion.cpp File Reference
#include "Flow.hpp"
#include "Config.hpp"
#include "ExPolygon.hpp"
#include "ExtrusionEntity.hpp"
#include "Exception.hpp"
#include "Layer.hpp"
#include "BridgeDetector.hpp"
#include "ClipperUtils.hpp"
#include "Geometry.hpp"
#include "Line.hpp"
#include "PerimeterGenerator.hpp"
#include "Point.hpp"
#include "Polygon.hpp"
#include "Polyline.hpp"
#include "Print.hpp"
#include "PrintConfig.hpp"
#include "Surface.hpp"
#include "BoundingBox.hpp"
#include "SVG.hpp"
#include "Algorithm/RegionExpansion.hpp"
#include "libslic3r.h"
#include "Utils.hpp"
#include <cmath>
#include <array>
#include <cstddef>
#include <initializer_list>
#include <algorithm>
#include <cstdint>
#include <optional>
#include <iterator>
#include <stdexcept>
#include <math.h>
#include <cassert>
#include <string>
#include <map>
#include <boost/log/trivial.hpp>
#include <boost/algorithm/clamp.hpp>
#include <utility>
#include <vector>
#include "ExtrusionEntityCollection.hpp"
#include "MultiMaterialSegmentation.hpp"
#include "SurfaceCollection.hpp"
Include dependency graph for LayerRegion.cpp:

Go to the source code of this file.

Classes

struct  Slic3r::ExpansionZone
struct  Slic3r::Bridge
struct  Slic3r::ExpansionResult

Namespaces

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

Functions

static ExPolygons Slic3r::fill_surfaces_extract_expolygons (Surfaces &surfaces, std::initializer_list< SurfaceType > surface_types, double &thickness)
uint32_t Slic3r::group_id (std::vector< Bridge > &bridges, uint32_t src_id)
std::vector< Bridge > Slic3r::get_grouped_bridges (ExPolygons &&bridge_expolygons, const std::vector< Algorithm::RegionExpansionEx > &bridge_expansions)
void Slic3r::detect_bridge_directions (const Algorithm::WaveSeeds &bridge_anchors, std::vector< Bridge > &bridges, const std::vector< ExpansionZone > &expansion_zones)
Surfaces Slic3r::merge_bridges (std::vector< Bridge > &bridges, const std::vector< Algorithm::RegionExpansionEx > &bridge_expansions, const float closing_radius)
ExpansionResult Slic3r::expand_expolygons (const ExPolygons &expolygons, std::vector< ExpansionZone > &expansion_zones)
Surfaces Slic3r::expand_bridges_detect_orientations (Surfaces &surfaces, std::vector< ExpansionZone > &expansion_zones, const float closing_radius)
Surfaces Slic3r::expand_merge_surfaces (Surfaces &surfaces, SurfaceType surface_type, std::vector< ExpansionZone > &expansion_zones, const float closing_radius, const double bridge_angle=-1)

Class Documentation

◆ Slic3r::ExpansionZone

struct Slic3r::ExpansionZone
Collaboration diagram for Slic3r::ExpansionZone:
Class Members
bool expanded_into = false
ExPolygons expolygons
RegionExpansionParameters parameters

◆ Slic3r::Bridge

struct Slic3r::Bridge
Collaboration diagram for Slic3r::Bridge:
Class Members
optional< double > angle {std::nullopt}
const_iterator bridge_expansion_begin
ExPolygon expolygon
uint32_t group_id

◆ Slic3r::ExpansionResult

struct Slic3r::ExpansionResult
Collaboration diagram for Slic3r::ExpansionResult:
Class Members
WaveSeeds anchors
vector< RegionExpansionEx > expansions