mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-07-31 15:41:58 +08:00
Fixed a hang in tree supports, caused by integer overflow on coord_t. Fixes #10048
This commit is contained in:
parent
b0a8757b12
commit
993d6bd561
@ -1451,7 +1451,7 @@ static void generate_initial_areas(
|
||||
// As a circle is round this length is identical for every axis as long as the 90 degrees angle between both remains.
|
||||
const coord_t circle_length_to_half_linewidth_change = config.min_radius < config.support_line_width ?
|
||||
config.min_radius / 2 :
|
||||
sqrt(sqr(config.min_radius) - sqr(config.min_radius - config.support_line_width / 2));
|
||||
scale_(sqrt(sqr(unscale<double>(config.min_radius)) - sqr(unscale<double>(config.min_radius - config.support_line_width / 2))));
|
||||
// Extra support offset to compensate for larger tip radiis. Also outset a bit more when z overwrites xy, because supporting something with a part of a support line is better than not supporting it at all.
|
||||
//FIXME Vojtech: This is not sufficient for support enforcers to work.
|
||||
//FIXME There is no account for the support overhang angle.
|
||||
|
Loading…
x
Reference in New Issue
Block a user