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

github.com/FormerLurker/ArcWelderLib.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'ArcWelder/segmented_arc.h')
-rw-r--r--ArcWelder/segmented_arc.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/ArcWelder/segmented_arc.h b/ArcWelder/segmented_arc.h
index 9af5f25..6705e2e 100644
--- a/ArcWelder/segmented_arc.h
+++ b/ArcWelder/segmented_arc.h
@@ -40,7 +40,9 @@ public:
int max_segments = DEFAULT_MAX_SEGMENTS,
double resolution_mm = DEFAULT_RESOLUTION_MM,
double path_tolerance_percnet = ARC_LENGTH_PERCENT_TOLERANCE_DEFAULT,
- double max_radius_mm = DEFAULT_MAX_RADIUS_MM ,
+ double max_radius_mm = DEFAULT_MAX_RADIUS_MM,
+ int min_arc_segments = DEFAULT_MIN_ARC_SEGMENTS,
+ double mm_per_arc_segment = DEFAULT_MM_PER_ARC_SEGMENT,
bool allow_z_axis_changes = DEFAULT_ALLOW_Z_AXIS_CHANGES
);
virtual ~segmented_arc();
@@ -52,13 +54,19 @@ public:
point pop_front(double e_relative);
point pop_back(double e_relative);
double get_max_radius() const;
+ int get_min_arc_segments() const;
+ double get_mm_per_arc_segment() const;
private:
bool try_add_point_internal_(point p, double pd);
std::string get_shape_gcode_(bool has_e, double e, double f) const;
+ std::string get_g1(double x, double y, double z, double e, double f, bool has_z);
+ std::string interpolate_arc(double f, bool is_relative, double start_e = 0);
//circle arc_circle_;
arc current_arc_;
double max_radius_mm_;
+ int min_arc_segments_;
+ double mm_per_arc_segment_;
bool allow_z_axis_changes_;
};