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

#include <ExtrusionEntityCollection.hpp>

Inheritance diagram for Slic3r::ExtrusionEntityCollection:
Slic3r::ExtrusionEntity

Public Member Functions

ExtrusionEntityCollectionclone () const
 
 ExtrusionEntityCollection ()
 
 ExtrusionEntityCollection (const ExtrusionEntityCollection &collection)
 
 ExtrusionEntityCollection (const ExtrusionPaths &paths)
 
ExtrusionEntityCollectionoperator= (const ExtrusionEntityCollection &other)
 
 ~ExtrusionEntityCollection ()
 
 operator ExtrusionPaths () const
 Operator to convert and flatten this collection to a single vefctor of ExtrusionPaths. More...
 
bool is_collection () const
 This particular ExtrusionEntity is a collection. More...
 
bool can_reverse () const
 
bool empty () const
 
void clear ()
 
size_t size () const
 
void swap (ExtrusionEntityCollection &c)
 
void append (const ExtrusionEntity &entity)
 
void append (const ExtrusionEntitiesPtr &entities)
 
void append (const ExtrusionPaths &paths)
 
void append (const Polylines &polylines, const ExtrusionPath &templ)
 
void replace (size_t i, const ExtrusionEntity &entity)
 
void remove (size_t i)
 
ExtrusionEntityCollection chained_path (bool no_reverse=false, std::vector< size_t > *orig_indices=NULL) const
 
void chained_path (ExtrusionEntityCollection *retval, bool no_reverse=false, std::vector< size_t > *orig_indices=NULL) const
 
void chained_path_from (Point start_near, ExtrusionEntityCollection *retval, bool no_reverse=false, std::vector< size_t > *orig_indices=NULL) const
 
void reverse ()
 
Point first_point () const
 
Point last_point () const
 
Polygons grow () const
 Produce a list of 2D polygons covered by the extruded path. More...
 
size_t items_count () const
 Recursively count paths and loops contained in this collection. More...
 
void flatten (ExtrusionEntityCollection *retval) const
 Returns a single vector of pointers to all non-collection items contained in this one. More...
 
ExtrusionEntityCollection flatten () const
 
double min_mm3_per_mm () const
 Minimum volumetric velocity of this extrusion entity. Used by the constant nozzle pressure algorithm. More...
 
Polyline as_polyline () const
 
ExtrusionEntitiesPtr::iterator begin ()
 
ExtrusionEntitiesPtr::iterator end ()
 
ExtrusionEntitiesPtr::const_iterator cbegin () const
 
ExtrusionEntitiesPtr::const_iterator cend () const
 
- Public Member Functions inherited from Slic3r::ExtrusionEntity
virtual bool is_loop () const
 
virtual ~ExtrusionEntity ()
 
virtual double length () const
 
virtual bool is_perimeter () const
 
virtual bool is_infill () const
 
virtual bool is_solid_infill () const
 

Public Attributes

ExtrusionEntitiesPtr entities
 
std::vector< size_t > orig_indices
 
bool no_sort
 

Constructor & Destructor Documentation

◆ ExtrusionEntityCollection() [1/3]

Slic3r::ExtrusionEntityCollection::ExtrusionEntityCollection ( )
inline

◆ ExtrusionEntityCollection() [2/3]

Slic3r::ExtrusionEntityCollection::ExtrusionEntityCollection ( const ExtrusionEntityCollection collection)

◆ ExtrusionEntityCollection() [3/3]

Slic3r::ExtrusionEntityCollection::ExtrusionEntityCollection ( const ExtrusionPaths paths)

◆ ~ExtrusionEntityCollection()

Slic3r::ExtrusionEntityCollection::~ExtrusionEntityCollection ( )

Member Function Documentation

◆ append() [1/4]

void Slic3r::ExtrusionEntityCollection::append ( const ExtrusionEntity entity)

◆ append() [2/4]

void Slic3r::ExtrusionEntityCollection::append ( const ExtrusionEntitiesPtr entities)

◆ append() [3/4]

void Slic3r::ExtrusionEntityCollection::append ( const ExtrusionPaths paths)

◆ append() [4/4]

void Slic3r::ExtrusionEntityCollection::append ( const Polylines polylines,
const ExtrusionPath templ 
)

◆ as_polyline()

Polyline Slic3r::ExtrusionEntityCollection::as_polyline ( ) const
inlinevirtual

◆ begin()

ExtrusionEntitiesPtr::iterator Slic3r::ExtrusionEntityCollection::begin ( )
inline

◆ can_reverse()

bool Slic3r::ExtrusionEntityCollection::can_reverse ( ) const
inlinevirtual

Reimplemented from Slic3r::ExtrusionEntity.

◆ cbegin()

ExtrusionEntitiesPtr::const_iterator Slic3r::ExtrusionEntityCollection::cbegin ( ) const
inline

◆ cend()

ExtrusionEntitiesPtr::const_iterator Slic3r::ExtrusionEntityCollection::cend ( ) const
inline

◆ chained_path() [1/2]

ExtrusionEntityCollection Slic3r::ExtrusionEntityCollection::chained_path ( bool  no_reverse = false,
std::vector< size_t > *  orig_indices = NULL 
) const

◆ chained_path() [2/2]

void Slic3r::ExtrusionEntityCollection::chained_path ( ExtrusionEntityCollection retval,
bool  no_reverse = false,
std::vector< size_t > *  orig_indices = NULL 
) const

◆ chained_path_from()

void Slic3r::ExtrusionEntityCollection::chained_path_from ( Point  start_near,
ExtrusionEntityCollection retval,
bool  no_reverse = false,
std::vector< size_t > *  orig_indices = NULL 
) const

◆ clear()

void Slic3r::ExtrusionEntityCollection::clear ( )

◆ clone()

ExtrusionEntityCollection * Slic3r::ExtrusionEntityCollection::clone ( ) const
virtual

◆ empty()

bool Slic3r::ExtrusionEntityCollection::empty ( ) const
inline

◆ end()

ExtrusionEntitiesPtr::iterator Slic3r::ExtrusionEntityCollection::end ( )
inline

◆ first_point()

Point Slic3r::ExtrusionEntityCollection::first_point ( ) const
virtual

◆ flatten() [1/2]

void Slic3r::ExtrusionEntityCollection::flatten ( ExtrusionEntityCollection retval) const

Returns a single vector of pointers to all non-collection items contained in this one.

◆ flatten() [2/2]

ExtrusionEntityCollection Slic3r::ExtrusionEntityCollection::flatten ( ) const

Returns a flattened copy of this ExtrusionEntityCollection. That is, all of the items in its entities vector are not collections. You should be iterating over flatten().entities if you are interested in the underlying ExtrusionEntities (and don't care about hierarchy).

◆ grow()

Polygons Slic3r::ExtrusionEntityCollection::grow ( ) const
virtual

Produce a list of 2D polygons covered by the extruded path.

Implements Slic3r::ExtrusionEntity.

◆ is_collection()

bool Slic3r::ExtrusionEntityCollection::is_collection ( ) const
inlinevirtual

This particular ExtrusionEntity is a collection.

Reimplemented from Slic3r::ExtrusionEntity.

◆ items_count()

size_t Slic3r::ExtrusionEntityCollection::items_count ( ) const

Recursively count paths and loops contained in this collection.

◆ last_point()

Point Slic3r::ExtrusionEntityCollection::last_point ( ) const
virtual

◆ min_mm3_per_mm()

double Slic3r::ExtrusionEntityCollection::min_mm3_per_mm ( ) const
virtual

Minimum volumetric velocity of this extrusion entity. Used by the constant nozzle pressure algorithm.

Implements Slic3r::ExtrusionEntity.

◆ operator ExtrusionPaths()

Slic3r::ExtrusionEntityCollection::operator ExtrusionPaths ( ) const

Operator to convert and flatten this collection to a single vefctor of ExtrusionPaths.

◆ operator=()

ExtrusionEntityCollection & Slic3r::ExtrusionEntityCollection::operator= ( const ExtrusionEntityCollection other)

◆ remove()

void Slic3r::ExtrusionEntityCollection::remove ( size_t  i)

◆ replace()

void Slic3r::ExtrusionEntityCollection::replace ( size_t  i,
const ExtrusionEntity entity 
)

◆ reverse()

void Slic3r::ExtrusionEntityCollection::reverse ( )
virtual

◆ size()

size_t Slic3r::ExtrusionEntityCollection::size ( ) const
inline

◆ swap()

void Slic3r::ExtrusionEntityCollection::swap ( ExtrusionEntityCollection c)

Member Data Documentation

◆ entities

ExtrusionEntitiesPtr Slic3r::ExtrusionEntityCollection::entities

Owned ExtrusionEntities and descendent ExtrusionEntityCollections. Iterating over this needs to check each child to see if it, too is a collection.

◆ no_sort

bool Slic3r::ExtrusionEntityCollection::no_sort

◆ orig_indices

std::vector<size_t> Slic3r::ExtrusionEntityCollection::orig_indices

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