mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-15 03:36:01 +08:00
Fixed mismatch with firmware in calculating acceleration in time estimates
This commit is contained in:
parent
9b7961ddcb
commit
88c94180f7
@ -2730,8 +2730,9 @@ void GCodeProcessor::process_G1(const std::array<std::optional<double>, 4>& axes
|
||||
|
||||
for (unsigned char a = X; a <= E; ++a) {
|
||||
const float axis_max_acceleration = get_axis_max_acceleration(static_cast<PrintEstimatedStatistics::ETimeMode>(i), static_cast<Axis>(a));
|
||||
if (acceleration * std::abs(delta_pos[a]) * inv_distance > axis_max_acceleration)
|
||||
acceleration = axis_max_acceleration;
|
||||
const float scale = std::abs(delta_pos[a]) * inv_distance;
|
||||
if (acceleration * scale > axis_max_acceleration)
|
||||
acceleration = axis_max_acceleration / scale;
|
||||
}
|
||||
|
||||
block.acceleration = acceleration;
|
||||
|
Loading…
x
Reference in New Issue
Block a user