fix extreme fibre distance calculation
This commit is contained in:
parent
a6cf309020
commit
ff73cd253e
@ -677,7 +677,7 @@ public:
|
||||
if (directional_xy_variance < EPSILON) {
|
||||
return 0.0f;
|
||||
}
|
||||
float extreme_fiber_dist = sqrt(area * directional_xy_variance);
|
||||
float extreme_fiber_dist = sqrt(area/PI);
|
||||
float elastic_section_modulus = area * directional_xy_variance / extreme_fiber_dist;
|
||||
|
||||
#ifdef DETAILED_DEBUG_LOGS
|
||||
@ -924,7 +924,7 @@ Issues check_global_stability(SupportGridFilter supports_presence_grid,
|
||||
Vec2f variance = (conn.second_moment_of_area_accumulator / conn.area
|
||||
- centroid.head<2>().cwiseProduct(centroid.head<2>()));
|
||||
float xy_variance = variance.x() + variance.y();
|
||||
float arm_len_estimate = std::max(1.1f, layer_z - (conn.centroid_accumulator.z() / conn.area));
|
||||
float arm_len_estimate = std::max(1.0f, layer_z - (conn.centroid_accumulator.z() / conn.area));
|
||||
return conn.area * sqrt(xy_variance) / arm_len_estimate;
|
||||
};
|
||||
|
||||
@ -933,10 +933,10 @@ Issues check_global_stability(SupportGridFilter supports_presence_grid,
|
||||
transfered_weakest_connection.print_info("transfered_weakest_connection");
|
||||
#endif
|
||||
|
||||
if (estimate_conn_strength(transfered_weakest_connection) < estimate_conn_strength(new_weakest_connection)) {
|
||||
new_weakest_connection = transfered_weakest_connection;
|
||||
if (estimate_conn_strength(transfered_weakest_connection) > estimate_conn_strength(new_weakest_connection)) {
|
||||
transfered_weakest_connection = new_weakest_connection;
|
||||
}
|
||||
next_island_weakest_connection.emplace(island_idx, new_weakest_connection);
|
||||
next_island_weakest_connection.emplace(island_idx, transfered_weakest_connection);
|
||||
next_island_to_object_part_mapping.emplace(island_idx, final_part_id);
|
||||
ObjectPart &part = active_object_parts.access(final_part_id);
|
||||
part.add(ObjectPart(island));
|
||||
|
@ -19,9 +19,9 @@ struct Params {
|
||||
const float max_acceleration = 9*1000.0f; // mm/s^2 ; max acceleration of object (bed) in XY (NOTE: The max hit is received by the object in the jerk phase, so the usual machine limits are too low)
|
||||
const float filament_density = 1.25e-3f ; // g/mm^3 ; Common filaments are very lightweight, so precise number is not that important
|
||||
const float bed_adhesion_yield_strength = 0.128f * 1e6f; //MPa * 1e^6 = (g*mm/s^2)/mm^2 = g/(mm*s^2); yield strength of the bed surface
|
||||
const float material_yield_strength = 33.0f * 1e6f; // (g*mm/s^2)/mm^2; 33 MPa is yield strength of ABS, which has the lowest yield strength from common materials.
|
||||
const float material_yield_strength = 15.0f * 1e6f; // (g*mm/s^2)/mm^2; 33 MPa is yield strength of ABS, which has the lowest yield strength from common materials.
|
||||
const float standard_extruder_conflict_force = 20.0f * gravity_constant; // force that can occasionally push the model due to various factors (filament leaks, small curling, ... );
|
||||
const float malformations_additive_conflict_extruder_force = 150.0f * gravity_constant; // for areas with possible high layered curled filaments
|
||||
const float malformations_additive_conflict_extruder_force = 300.0f * gravity_constant; // for areas with possible high layered curled filaments
|
||||
};
|
||||
|
||||
struct SupportPoint {
|
||||
|
Loading…
Reference in New Issue
Block a user