Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/prusa3d/PrusaSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'xs/src/libslic3r/GCode/Analyzer.hpp')
-rw-r--r--xs/src/libslic3r/GCode/Analyzer.hpp34
1 files changed, 20 insertions, 14 deletions
diff --git a/xs/src/libslic3r/GCode/Analyzer.hpp b/xs/src/libslic3r/GCode/Analyzer.hpp
index 7939d432d..27a49b869 100644
--- a/xs/src/libslic3r/GCode/Analyzer.hpp
+++ b/xs/src/libslic3r/GCode/Analyzer.hpp
@@ -75,12 +75,12 @@ public:
EType type;
Metadata data;
- Pointf3 start_position;
- Pointf3 end_position;
+ Vec3d start_position;
+ Vec3d end_position;
float delta_extruder;
- GCodeMove(EType type, ExtrusionRole extrusion_role, unsigned int extruder_id, double mm3_per_mm, float width, float height, float feedrate, const Pointf3& start_position, const Pointf3& end_position, float delta_extruder);
- GCodeMove(EType type, const Metadata& data, const Pointf3& start_position, const Pointf3& end_position, float delta_extruder);
+ GCodeMove(EType type, ExtrusionRole extrusion_role, unsigned int extruder_id, double mm3_per_mm, float width, float height, float feedrate, const Vec3d& start_position, const Vec3d& end_position, float delta_extruder);
+ GCodeMove(EType type, const Metadata& data, const Vec3d& start_position, const Vec3d& end_position, float delta_extruder);
};
typedef std::vector<GCodeMove> GCodeMovesList;
@@ -90,10 +90,10 @@ private:
struct State
{
EUnits units;
- EPositioningType positioning_xyz_type;
- EPositioningType positioning_e_type;
+ EPositioningType global_positioning_type;
+ EPositioningType e_local_positioning_type;
Metadata data;
- Pointf3 start_position;
+ Vec3d start_position = Vec3d::Zero();
float start_extrusion;
float position[Num_Axis];
};
@@ -127,6 +127,12 @@ private:
// Move
void _processG1(const GCodeReader::GCodeLine& line);
+ // Retract
+ void _processG10(const GCodeReader::GCodeLine& line);
+
+ // Unretract
+ void _processG11(const GCodeReader::GCodeLine& line);
+
// Firmware controlled Retract
void _processG22(const GCodeReader::GCodeLine& line);
@@ -170,11 +176,11 @@ private:
void _set_units(EUnits units);
EUnits _get_units() const;
- void _set_positioning_xyz_type(EPositioningType type);
- EPositioningType _get_positioning_xyz_type() const;
+ void _set_global_positioning_type(EPositioningType type);
+ EPositioningType _get_global_positioning_type() const;
- void _set_positioning_e_type(EPositioningType type);
- EPositioningType _get_positioning_e_type() const;
+ void _set_e_local_positioning_type(EPositioningType type);
+ EPositioningType _get_e_local_positioning_type() const;
void _set_extrusion_role(ExtrusionRole extrusion_role);
ExtrusionRole _get_extrusion_role() const;
@@ -200,15 +206,15 @@ private:
// Sets axes position to zero
void _reset_axes_position();
- void _set_start_position(const Pointf3& position);
- const Pointf3& _get_start_position() const;
+ void _set_start_position(const Vec3d& position);
+ const Vec3d& _get_start_position() const;
void _set_start_extrusion(float extrusion);
float _get_start_extrusion() const;
float _get_delta_extrusion() const;
// Returns current xyz position (from m_state.position[])
- Pointf3 _get_end_position() const;
+ Vec3d _get_end_position() const;
// Adds a new move with the given data
void _store_move(GCodeMove::EType type);