Lightly optimize arc length calculation

This commit is contained in:
Scott Lahteine 2018-01-23 19:04:05 -06:00
parent c9bda932fe
commit 9644fe1839
2 changed files with 3 additions and 3 deletions

View File

@ -86,7 +86,8 @@ void plan_arc(
if (angular_travel == 0 && current_position[p_axis] == cart[p_axis] && current_position[q_axis] == cart[q_axis]) if (angular_travel == 0 && current_position[p_axis] == cart[p_axis] && current_position[q_axis] == cart[q_axis])
angular_travel = RADIANS(360); angular_travel = RADIANS(360);
const float mm_of_travel = HYPOT(angular_travel * radius, FABS(linear_travel)); const float flat_mm = radius * angular_travel,
mm_of_travel = linear_travel ? HYPOT(flat_mm, linear_travel) : flat_mm;
if (mm_of_travel < 0.001) return; if (mm_of_travel < 0.001) return;
uint16_t segments = FLOOR(mm_of_travel / (MM_PER_ARC_SEGMENT)); uint16_t segments = FLOOR(mm_of_travel / (MM_PER_ARC_SEGMENT));

View File

@ -373,7 +373,7 @@ void Planner::recalculate_trapezoids() {
} }
} }
/* /**
* Recalculate the motion plan according to the following algorithm: * Recalculate the motion plan according to the following algorithm:
* *
* 1. Go over every block in reverse order... * 1. Go over every block in reverse order...
@ -403,7 +403,6 @@ void Planner::recalculate() {
recalculate_trapezoids(); recalculate_trapezoids();
} }
#if ENABLED(AUTOTEMP) #if ENABLED(AUTOTEMP)
void Planner::getHighESpeed() { void Planner::getHighESpeed() {