|
|
|
@ -2352,6 +2352,8 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
|
|
|
|
|
|
|
|
|
|
vmax_junction_sqr = junction_acceleration * junction_deviation_mm * sin_theta_d2 / (1.0f - sin_theta_d2);
|
|
|
|
|
|
|
|
|
|
#if ENABLED(JD_HANDLE_SMALL_SEGMENTS)
|
|
|
|
|
|
|
|
|
|
// For small moves with >135° junction (octagon) find speed for approximate arc
|
|
|
|
|
if (block->millimeters < 1 && junction_cos_theta < -0.7071067812f) {
|
|
|
|
|
|
|
|
|
@ -2435,6 +2437,8 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
|
|
|
|
|
const float limit_sqr = (block->millimeters * junction_acceleration) / junction_theta;
|
|
|
|
|
NOMORE(vmax_junction_sqr, limit_sqr);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif // JD_HANDLE_SMALL_SEGMENTS
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Get the lowest speed
|
|
|
|
|