OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
WipeTower.hpp File Reference
#include <cmath>
#include <map>
#include <cstddef>
#include <math.h>
#include <limits>
#include <string>
#include <sstream>
#include <unordered_map>
#include <utility>
#include <algorithm>
#include "libslic3r/libslic3r.h"
#include "libslic3r/Point.hpp"
#include "libslic3r/Polygon.hpp"
#include "libslic3r/Polyline.hpp"
#include "libslic3r/TriangleMesh.hpp"
#include <unordered_set>
#include <vector>
#include "libslic3r/MultiNozzleUtils.hpp"
Include dependency graph for WipeTower.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Slic3r::WipeTower
struct  Slic3r::WipeTower::PurgeEstimate
struct  Slic3r::WipeTower::Extrusion
struct  Slic3r::WipeTower::NozzleChangeResult
struct  Slic3r::WipeTower::ToolChangeResult
struct  Slic3r::WipeTower::box_coordinates
struct  Slic3r::WipeTower::FilamentParameters
struct  Slic3r::WipeTower::WipeTowerBlock
struct  Slic3r::WipeTower::BlockDepthInfo
struct  Slic3r::WipeTower::WipeTowerInfo
struct  Slic3r::WipeTower::WipeTowerInfo::ToolChange

Namespaces

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

Functions

Polylines Slic3r::construct_gap_for_skip_points (const Polygon &polygon, const std::vector< Vec2f > &skip_points, float wt_width, float gap_length, Polygon &insert_skip_polygon)
const char * Slic3r::flush_planner_queue_command (GCodeFlavor flavor)
std::string Slic3r::wait_command (GCodeFlavor flavor, float seconds)
bool Slic3r::wipe_tower_sparse_layers_skipped (const PrintConfig &config)
bool Slic3r::wipe_tower_layer_is_sparse (const std::vector< WipeTower::ToolChangeResult > &layer_tool_changes)
std::vector< float > Slic3r::compute_compacted_wipe_tower_z (const std::vector< std::vector< WipeTower::ToolChangeResult > > &tool_changes, float base_z)
bool Slic3r::wipe_tower_sparse_layers_combined (const PrintConfig &config)
bool Slic3r::wipe_tower_layer_is_combined_away (const std::vector< WipeTower::ToolChangeResult > &layer_tool_changes)
std::vector< char > Slic3r::combine_sparse_wipe_tower_layers (std::vector< float > &layer_height, const std::vector< char > &layer_is_sparse, const std::vector< float > &max_layer_height, size_t first_layer_idx)
template<class PlanLayers, class FilamentParams>
void Slic3r::combine_sparse_wipe_tower_plan (PlanLayers &plan, const FilamentParams &filpar, size_t first_layer_idx, size_t initial_tool)

Class Documentation

◆ Slic3r::WipeTower::PurgeEstimate

struct Slic3r::WipeTower::PurgeEstimate
Class Members
int category = 0
float filament_change_length = 0.f
float filament_diameter = 1.75f
float prime_volume = 0.f

◆ Slic3r::WipeTower::NozzleChangeResult

struct Slic3r::WipeTower::NozzleChangeResult
Collaboration diagram for Slic3r::WipeTower::NozzleChangeResult:
Class Members
Vec2f end_pos
string gcode
bool is_extruder_change {true}
Vec2f origin_start_pos
Vec2f start_pos
vector< Vec2f > wipe_path

◆ Slic3r::WipeTower::FilamentParameters

struct Slic3r::WipeTower::FilamentParameters
Collaboration diagram for Slic3r::WipeTower::FilamentParameters:
Class Members
int category
float filament_area
float filament_cooling_before_tower = 0.f
float filament_petg_pre_extrusion_offset_dist = 0
float filament_tower_interface_pre_extrusion_dist = 0
float filament_tower_interface_pre_extrusion_length = 0
float filament_tower_interface_print_temp
float flat_iron_area
bool is_soluble = false
bool is_support = false
string material = "PLA"
pair< float, float > max_e_ramming_speed
float max_e_speed = std::numeric_limits<float>::max()
float max_layer_height = 0.f
float nozzle_diameter
int nozzle_temperature = 0
int nozzle_temperature_initial_layer = 0
pair< vector< float >, vector< float > > precool_t
pair< vector< float >, vector< float > > precool_t_first_layer
pair< int, int > precool_target_temp
float ramming_line_width_multiplicator = 1.f
vector< float > ramming_speed
float ramming_step_multiplicator = 1.f
pair< float, float > ramming_travel_time
float retract_length
float retract_speed
float wipe_dist

◆ Slic3r::WipeTower::WipeTowerBlock

struct Slic3r::WipeTower::WipeTowerBlock
Collaboration diagram for Slic3r::WipeTower::WipeTowerBlock:
Class Members
int block_id {0}
float cur_depth {0}
float depth {0}
int filament_adhesiveness_category {0}
vector< float > finish_depth {0}
int last_filament_change_id {-1}
int last_nozzle_change_id {-1}
vector< float > layer_depths
vector< WipeTowerLayerType > layers_type
float start_depth {0}

◆ Slic3r::WipeTower::BlockDepthInfo

struct Slic3r::WipeTower::BlockDepthInfo
Class Members
int category {-1}
float depth {0}
float nozzle_change_depth {0}