libslic3r
Library for generating gcode from 3d models
Public Member Functions | Public Attributes | Friends | List of all members
Slic3r::LayerRegion Class Reference

#include <Layer.hpp>

Public Member Functions

Layerlayer ()
 
const Layerlayer () const
 
PrintRegionregion ()
 
const PrintRegionregion () const
 
Flow flow (FlowRole role, bool bridge=false, double width=-1) const
 Flow object which provides methods to predict material spacing. More...
 
void merge_slices ()
 Merges this->slices. More...
 
void prepare_fill_surfaces ()
 Preprocesses fill surfaces. More...
 
void make_perimeters (const SurfaceCollection &slices, SurfaceCollection *fill_surfaces)
 Generates and stores the perimeters and thin fills. More...
 
void make_fill ()
 Generate infills for a LayerRegion. More...
 
void process_external_surfaces ()
 Processes external surfaces for bridges and top/bottom surfaces. More...
 
double infill_area_threshold () const
 Gets the smallest fillable area. More...
 

Public Attributes

SurfaceCollection slices
 
ExtrusionEntityCollection thin_fills
 Collection of extrusion paths/loops filling gaps. More...
 
SurfaceCollection fill_surfaces
 Collection of surfaces for infill generation. More...
 
Polygons bridged
 
PolylineCollection unsupported_bridge_edges
 Collection of polylines representing the unsupported bridge edges. More...
 
ExtrusionEntityCollection perimeters
 
ExtrusionEntityCollection fills
 

Friends

class Layer
 

Member Function Documentation

◆ flow()

Flow Slic3r::LayerRegion::flow ( FlowRole  role,
bool  bridge = false,
double  width = -1 
) const

Flow object which provides methods to predict material spacing.

Creates a new Flow object with the arguments and the variables of this LayerRegion.

◆ infill_area_threshold()

double Slic3r::LayerRegion::infill_area_threshold ( ) const

Gets the smallest fillable area.

Gets smallest area by squaring the Flow's scaled spacing.

◆ layer() [1/2]

Layer* Slic3r::LayerRegion::layer ( )
inline

◆ layer() [2/2]

const Layer* Slic3r::LayerRegion::layer ( ) const
inline

◆ make_fill()

void Slic3r::LayerRegion::make_fill ( )

Generate infills for a LayerRegion.

The LayerRegion at this point of time may contain surfaces of various types (internal/bridge/top/bottom/solid). The infills are generated on the groups of surfaces with a compatible type. Fills an array of ExtrusionPathCollection objects containing the infills generated now and the thin fills generated by generate_perimeters().

◆ make_perimeters()

void Slic3r::LayerRegion::make_perimeters ( const SurfaceCollection slices,
SurfaceCollection fill_surfaces 
)

Generates and stores the perimeters and thin fills.

Creates a new PerimeterGenerator object Which will return the perimeters by its construction

◆ merge_slices()

void Slic3r::LayerRegion::merge_slices ( )

Merges this->slices.

Merges this->slices with union_ex, and then repopulates this->slices.surfaces.

◆ prepare_fill_surfaces()

void Slic3r::LayerRegion::prepare_fill_surfaces ( )

Preprocesses fill surfaces.

If no solid layers are requested, turns top/bottom surfaces to internal Turns too small internal regions into solid regions according to the user setting

◆ process_external_surfaces()

void Slic3r::LayerRegion::process_external_surfaces ( )

Processes external surfaces for bridges and top/bottom surfaces.

Processes bridges with holes which are internal features. Detects same-orientation bridges and merges them. Processes and groups top and bottom surfaces This function reads layer->slices and lower_layer->slices and writes this->bridged and this->fill_surfaces, so it's thread-safe.

◆ region() [1/2]

PrintRegion* Slic3r::LayerRegion::region ( )
inline

◆ region() [2/2]

const PrintRegion* Slic3r::LayerRegion::region ( ) const
inline

Friends And Related Function Documentation

◆ Layer

friend class Layer
friend

Member Data Documentation

◆ bridged

Polygons Slic3r::LayerRegion::bridged

Collection of expolygons representing the bridged areas (thus not needing support material)

◆ fill_surfaces

SurfaceCollection Slic3r::LayerRegion::fill_surfaces

Collection of surfaces for infill generation.

◆ fills

ExtrusionEntityCollection Slic3r::LayerRegion::fills

Ordered collection of extrusion paths to fill surfaces (this collection contains only ExtrusionEntityCollection objects)

◆ perimeters

ExtrusionEntityCollection Slic3r::LayerRegion::perimeters

Ordered collection of extrusion paths/loops to build all perimeters (this collection contains only ExtrusionEntityCollection objects)

◆ slices

SurfaceCollection Slic3r::LayerRegion::slices

Collection of surfaces generated by slicing the original geometry Divided by type top/bottom/internal

◆ thin_fills

ExtrusionEntityCollection Slic3r::LayerRegion::thin_fills

Collection of extrusion paths/loops filling gaps.

◆ unsupported_bridge_edges

PolylineCollection Slic3r::LayerRegion::unsupported_bridge_edges

Collection of polylines representing the unsupported bridge edges.


The documentation for this class was generated from the following files: