|
|
|
|
45
|
if (isclockwise) { angular_travel -= 2*M_PI; }
|
45
|
if (isclockwise) { angular_travel -= 2*M_PI; }
|
46
|
|
46
|
|
47
|
float millimeters_of_travel = hypot(angular_travel*radius, fabs(linear_travel));
|
47
|
float millimeters_of_travel = hypot(angular_travel*radius, fabs(linear_travel));
|
48
|
- if (millimeters_of_travel == 0.0) { return; }
|
|
|
|
|
48
|
+ if (millimeters_of_travel < 0.001) { return; }
|
49
|
uint16_t segments = floor(millimeters_of_travel/MM_PER_ARC_SEGMENT);
|
49
|
uint16_t segments = floor(millimeters_of_travel/MM_PER_ARC_SEGMENT);
|
50
|
/*
|
50
|
/*
|
51
|
// Multiply inverse feed_rate to compensate for the fact that this movement is approximated
|
51
|
// Multiply inverse feed_rate to compensate for the fact that this movement is approximated
|