diff options
author | FormerLurker <hochgebe@gmail.com> | 2020-05-10 19:37:34 +0300 |
---|---|---|
committer | FormerLurker <hochgebe@gmail.com> | 2020-05-10 19:37:34 +0300 |
commit | 4a1f1d55ff5e685a9f2818da7bf3f5e6bf0394d6 (patch) | |
tree | 6651c47d87298138aad30b28212c91d948fc5a92 | |
parent | 7be8bb7021bfe8e2ea79f572e798e17494253a5c (diff) |
Replace math.h with cmath. Add settings and copyright to gcode output. Add line break to console progress output.
-rw-r--r-- | ArcWelder/arc_welder.cpp | 14 | ||||
-rw-r--r-- | ArcWelder/arc_welder.h | 1 | ||||
-rw-r--r-- | ArcWelder/segmented_arc.cpp | 7 | ||||
-rw-r--r-- | ArcWelder/segmented_shape.cpp | 5 | ||||
-rw-r--r-- | ArcWelderConsole/ArcWelderConsole.cpp | 6 | ||||
-rw-r--r-- | ArcWelderInverseProcessor/inverse_processor.cpp | 4 | ||||
-rw-r--r-- | ArcWelderInverseProcessor/inverse_processor.h | 1 | ||||
-rw-r--r-- | GcodeProcessorLib/gcode_position.cpp | 2 | ||||
-rw-r--r-- | GcodeProcessorLib/utilities.cpp | 10 | ||||
-rw-r--r-- | PyArcWelder/py_arc_welder_extension.cpp | 4 |
10 files changed, 34 insertions, 20 deletions
diff --git a/ArcWelder/arc_welder.cpp b/ArcWelder/arc_welder.cpp index 89adbe3..84de1f5 100644 --- a/ArcWelder/arc_welder.cpp +++ b/ArcWelder/arc_welder.cpp @@ -189,6 +189,7 @@ arc_welder_results arc_welder::process() { if (output_file_.is_open()) { + add_arcwelder_comment_to_target(); if (info_logging_enabled_) { stream.clear(); @@ -614,7 +615,6 @@ std::string arc_welder::create_g92_e(double absolute_e) int arc_welder::write_gcode_to_file(std::string gcode) { output_file_ << utilities::trim(gcode) << "\n"; - //std::cout << utilities::trim(gcode) << "\n"; return 1; } @@ -664,4 +664,16 @@ std::string arc_welder::get_arc_gcode_absolute(double e, double f, const std::st } +void arc_welder::add_arcwelder_comment_to_target() +{ + std::stringstream stream; + stream << std::fixed << std::setprecision(2); + stream << "; Postprocessed by [ArcWelder](https://github.com/FormerLurker/ArcWelderLib)\n"; + stream << "; Copyright(C) 2020 - Brad Hochgesang\n"; + stream << "; arc_welder_resolution_mm = " << resolution_mm_ << "\n"; + stream << "; arc_welder_g90_influences_extruder = " << (gcode_position_args_.g90_influences_extruder ? "True" : "False") << "\n\n"; + + output_file_ << stream.str(); +} + diff --git a/ArcWelder/arc_welder.h b/ArcWelder/arc_welder.h index d1ab85c..bad6aaa 100644 --- a/ArcWelder/arc_welder.h +++ b/ArcWelder/arc_welder.h @@ -104,6 +104,7 @@ public: protected: virtual bool on_progress_(arc_welder_progress progress); private: + void add_arcwelder_comment_to_target(); void reset(); static gcode_position_args get_args_(bool g90_g91_influences_extruder, int buffer_size); progress_callback progress_callback_; diff --git a/ArcWelder/segmented_arc.cpp b/ArcWelder/segmented_arc.cpp index 4f46019..2af6bc4 100644 --- a/ArcWelder/segmented_arc.cpp +++ b/ArcWelder/segmented_arc.cpp @@ -29,8 +29,8 @@ #include <iostream> #include <iomanip> #include <sstream> -#include "math.h" #include <stdio.h> +#include <cmath> segmented_arc::segmented_arc() : segmented_shape() { @@ -263,11 +263,12 @@ bool segmented_arc::try_get_arc_(circle& c, point endpoint, double additional_di std::string segmented_arc::get_shape_gcode_absolute(double e, double f) { - return get_shape_gcode_(true, e, f); + bool has_e = e_relative_ != 0; + return get_shape_gcode_(has_e, e, f); } std::string segmented_arc::get_shape_gcode_relative(double f) { - bool has_e = e_relative_ > 0; + bool has_e = e_relative_ != 0; return get_shape_gcode_(has_e, e_relative_, f); } diff --git a/ArcWelder/segmented_shape.cpp b/ArcWelder/segmented_shape.cpp index e2be390..21ca2b1 100644 --- a/ArcWelder/segmented_shape.cpp +++ b/ArcWelder/segmented_shape.cpp @@ -24,8 +24,7 @@ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #include "segmented_shape.h" - -#include <math.h> +#include <cmath> #include <iostream> #pragma region Operators for Vector and Point point operator +(point lhs, const vector rhs) { @@ -151,7 +150,7 @@ double distance_from_segment(segment s, point p) bool circle::is_point_on_circle(point p, double resolution_mm) { // get the difference between the point and the circle's center. - double difference = abs(utilities::get_cartesian_distance(p.x, p.y, center.x, center.y) - radius); + double difference = std::abs(utilities::get_cartesian_distance(p.x, p.y, center.x, center.y) - radius); return utilities::less_than(difference, resolution_mm, CIRCLE_FLOATING_POINT_TOLERANCE); } diff --git a/ArcWelderConsole/ArcWelderConsole.cpp b/ArcWelderConsole/ArcWelderConsole.cpp index c96d4e7..099f8ba 100644 --- a/ArcWelderConsole/ArcWelderConsole.cpp +++ b/ArcWelderConsole/ArcWelderConsole.cpp @@ -197,6 +197,8 @@ int main(int argc, char* argv[]) log_levels.push_back(log_levels::DEBUG); logger* p_logger = new logger(log_names, log_levels); p_logger->set_log_level_by_value(log_level_value); + std::string log_level_name = "No Logging"; + if (log_level_value >= 0) log_level_names[logger::get_log_level_for_value(log_level_value)]; std::stringstream log_messages; log_messages << "Processing Gcode\n"; @@ -204,7 +206,7 @@ int main(int argc, char* argv[]) log_messages << "\tTarget File File : " << target_file_apth << "\n"; log_messages << "\tResolution in MM : " << resolution_mm << "\n"; log_messages << "\tG90/G91 Influences Extruder : " << (g90_g91_influences_extruder ? "True" : "False") << "\n"; - log_messages << "\tLog Level : " << log_level_names[logger::get_log_level_for_value(log_level_value)] << "\n"; + log_messages << "\tLog Level : " << log_level_name << "\n"; log_messages << "\tShow Progress Updates : " << (show_progress ? "True" : "False") << "\n"; std::cout << log_messages.str(); arc_welder* p_arc_welder = NULL; @@ -225,6 +227,6 @@ int main(int argc, char* argv[]) static bool on_progress(arc_welder_progress progress) { - std::cout << progress.str(); + std::cout << progress.str() << "\n"; return true; }
\ No newline at end of file diff --git a/ArcWelderInverseProcessor/inverse_processor.cpp b/ArcWelderInverseProcessor/inverse_processor.cpp index 449d6c1..6717700 100644 --- a/ArcWelderInverseProcessor/inverse_processor.cpp +++ b/ArcWelderInverseProcessor/inverse_processor.cpp @@ -48,7 +48,7 @@ */ #include "inverse_processor.h" - +#include <cmath> //#include "Marlin.h" //#include "stepper.h" @@ -308,7 +308,7 @@ void inverse_processor::mc_arc(float* position, float* target, float* offset, fl // 20200417 - FormerLurker - rename millimeters_of_travel to millimeters_of_travel_arc to better describe what we are // calculating here - float millimeters_of_travel_arc = hypot(angular_travel_total * radius, fabs(travel_z)); + float millimeters_of_travel_arc = hypot(angular_travel_total * radius, std::abs(travel_z)); if (millimeters_of_travel_arc < 0.001) { return; } // Calculate the total travel per segment // Calculate the number of arc segments diff --git a/ArcWelderInverseProcessor/inverse_processor.h b/ArcWelderInverseProcessor/inverse_processor.h index 7d5a313..d17386e 100644 --- a/ArcWelderInverseProcessor/inverse_processor.h +++ b/ArcWelderInverseProcessor/inverse_processor.h @@ -26,7 +26,6 @@ #include <string> #include "gcode_position.h" -#include "math.h" #include <iostream> #include <string> #include <sstream> diff --git a/GcodeProcessorLib/gcode_position.cpp b/GcodeProcessorLib/gcode_position.cpp index 3fc661f..7e56844 100644 --- a/GcodeProcessorLib/gcode_position.cpp +++ b/GcodeProcessorLib/gcode_position.cpp @@ -24,7 +24,7 @@ #include "utilities.h" #include <algorithm> #include <iterator> -#include <math.h> +#include <cmath> gcode_position_args::gcode_position_args(const gcode_position_args &pos_args) { position_buffer_size = pos_args.position_buffer_size; diff --git a/GcodeProcessorLib/utilities.cpp b/GcodeProcessorLib/utilities.cpp index 5a2c1d6..8844922 100644 --- a/GcodeProcessorLib/utilities.cpp +++ b/GcodeProcessorLib/utilities.cpp @@ -20,7 +20,7 @@ // FormerLurker@pm.me //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #include "utilities.h" -#include <math.h> +#include <cmath> #include <sstream> #include <iostream> @@ -30,7 +30,7 @@ const std::string utilities::WHITESPACE_ = " \n\r\t\f\v"; bool utilities::is_zero(double x) { - return abs(x) < ZERO_TOLERANCE; + return std::abs(x) < ZERO_TOLERANCE; } int utilities::round_up_to_int(double x) @@ -40,7 +40,7 @@ int utilities::round_up_to_int(double x) bool utilities::is_equal(double x, double y) { - double abs_difference = abs(x - y); + double abs_difference = std::abs(x - y); return abs_difference < ZERO_TOLERANCE; } @@ -67,12 +67,12 @@ bool utilities::less_than_or_equal(double x, double y) // custom tolerance functions bool utilities::is_zero(double x, double tolerance) { - return abs(x) < tolerance; + return std::abs(x) < tolerance; } bool utilities::is_equal(double x, double y, double tolerance) { - double abs_difference = abs(x - y); + double abs_difference = std::abs(x - y); return abs_difference < tolerance; } diff --git a/PyArcWelder/py_arc_welder_extension.cpp b/PyArcWelder/py_arc_welder_extension.cpp index 89410b9..1b7021e 100644 --- a/PyArcWelder/py_arc_welder_extension.cpp +++ b/PyArcWelder/py_arc_welder_extension.cpp @@ -126,7 +126,7 @@ PyInit_PyArcWelder(void) extern "C" void initPyArcWelder(void) #endif { - std::cout << "Initializing PyArcWelder V0.1.0rc1.dev0 - Copyright (C) 2019 Brad Hochgesang."; + std::cout << "Initializing PyArcWelder V0.1.0rc1.dev2 - Copyright (C) 2019 Brad Hochgesang."; #if PY_MAJOR_VERSION >= 3 std::cout << " Python 3+ Detected..."; @@ -151,7 +151,7 @@ extern "C" void initPyArcWelder(void) logger_levels.push_back(log_levels::DEBUG); p_py_logger = new py_logger(logger_names, logger_levels); p_py_logger->initialize_loggers(); - std::string message = "PyArcWelder V0.1.0rc1.dev0 imported - Copyright (C) 2019 Brad Hochgesang..."; + std::string message = "PyArcWelder V0.1.0rc1.dev2 imported - Copyright (C) 2019 Brad Hochgesang..."; p_py_logger->log(GCODE_CONVERSION, INFO, message); p_py_logger->set_log_level_by_value(DEBUG); std::cout << " Initialization Complete\r\n"; |