mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-13 17:58:03 -06:00
Fixed "Fill angle of any number other than an Integer does not work"
https://github.com/prusa3d/Slic3r/issues/427 Also enabled floating point rotation angle for supports.
This commit is contained in:
parent
7103fa78ff
commit
969e3f4a80
3 changed files with 10 additions and 10 deletions
|
@ -948,7 +948,7 @@ PrintObjectSupportMaterial::MyLayersPtr PrintObjectSupportMaterial::top_contact_
|
|||
slices_margin_cached,
|
||||
// How much to offset the extracted contour outside of the grid.
|
||||
m_object_config->support_material_spacing.value + m_support_material_flow.spacing(),
|
||||
Geometry::deg2rad(double(m_object_config->support_material_angle)));
|
||||
Geometry::deg2rad(m_object_config->support_material_angle));
|
||||
// 1) infill polygons, expand them by half the extrusion width + a tiny bit of extra.
|
||||
new_layer.polygons = support_grid_pattern.extract_support(m_support_material_flow.scaled_spacing()/2 + 5);
|
||||
// 2) Contact polygons will be projected down. To keep the interface and base layers to grow, return a contour a tiny bit smaller than the grid cells.
|
||||
|
@ -1155,7 +1155,7 @@ PrintObjectSupportMaterial::MyLayersPtr PrintObjectSupportMaterial::bottom_conta
|
|||
trimming,
|
||||
// How much to offset the extracted contour outside of the grid.
|
||||
m_object_config->support_material_spacing.value + m_support_material_flow.spacing(),
|
||||
Geometry::deg2rad(double(m_object_config->support_material_angle)));
|
||||
Geometry::deg2rad(m_object_config->support_material_angle));
|
||||
tbb::task_group task_group_inner;
|
||||
// 1) Cache the slice of a support volume. The support volume is expanded by 1/2 of support material flow spacing
|
||||
// to allow a placement of suppot zig-zag snake along the grid lines.
|
||||
|
@ -2472,7 +2472,7 @@ void PrintObjectSupportMaterial::generate_toolpaths(
|
|||
loop_interface_processor.n_contact_loops = this->has_contact_loops() ? 1 : 0;
|
||||
|
||||
float base_angle = Geometry::deg2rad(float(m_object_config->support_material_angle));
|
||||
float interface_angle = Geometry::deg2rad(float(m_object_config->support_material_angle + 90));
|
||||
float interface_angle = Geometry::deg2rad(float(m_object_config->support_material_angle + 90.));
|
||||
coordf_t interface_spacing = m_object_config->support_material_interface_spacing.value + m_support_material_interface_flow.spacing();
|
||||
coordf_t interface_density = std::min(1., m_support_material_interface_flow.spacing() / interface_spacing);
|
||||
coordf_t support_spacing = m_object_config->support_material_spacing.value + m_support_material_flow.spacing();
|
||||
|
@ -2763,7 +2763,7 @@ void PrintObjectSupportMaterial::generate_toolpaths(
|
|||
if (base_layer.layer->bottom_z < EPSILON) {
|
||||
// Base flange (the 1st layer).
|
||||
filler = filler_interface.get();
|
||||
filler->angle = Geometry::deg2rad(float(m_object_config->support_material_angle + 90));
|
||||
filler->angle = Geometry::deg2rad(float(m_object_config->support_material_angle + 90.));
|
||||
density = 0.5f;
|
||||
flow = m_first_layer_flow;
|
||||
// use the proper spacing for first layer as we don't need to align
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue