ENH: sync the different codes

especially for the translation files

Change-Id: I940578ff6e22b0939d42eeed2209bfeddb0eb191
This commit is contained in:
lane.wei 2022-12-14 21:12:36 +08:00 committed by Lane.Wei
parent 540ecb2fb2
commit 13a1dc03c1
23 changed files with 29 additions and 98 deletions

View File

@ -5847,14 +5847,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr ""

View File

@ -6227,14 +6227,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Extruder Farbe"

View File

@ -6115,14 +6115,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Extruder Color"

View File

@ -6215,14 +6215,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Color del extrusor"

View File

@ -6201,14 +6201,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Couleur de l'extrudeuse"

View File

@ -6197,14 +6197,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Extruder szín"

View File

@ -6225,14 +6225,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Extruder kleur"

View File

@ -6116,14 +6116,6 @@ msgid ""
"object printing."
msgstr ""
msgid "Max Radius"
msgstr ""
msgid ""
"Max clearance radius around extruder. Used for collision avoidance in by-"
"object printing."
msgstr ""
msgid "Extruder Color"
msgstr "Extruder Färg"

View File

@ -3430,7 +3430,7 @@ msgstr "是否保存修改到“%1%”?"
msgid ""
"Successfully unmounted. The device %s(%s) can now be safely removed from the "
"computer."
msgstr "卸载成功。设备%s(%s)现在可安全地从电脑移除。"
msgstr "卸载成功。设备%s(%s)现在可安全地从电脑移除。"
#, c-format, boost-format
msgid "Ejecting of device %s(%s) has failed."
@ -3565,9 +3565,6 @@ msgstr "选中的模型不可分裂。"
msgid "Another export job is running."
msgstr "有其他导出任务正在进行中。"
msgid "Another export job is currently running."
msgstr "有其他导出任务正在进行中。"
msgid "Select a new file"
msgstr "选择新文件"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -4047,19 +4047,18 @@ void GCodeProcessor::update_slice_warnings()
warning.msg = BED_TEMP_TOO_HIGH_THAN_FILAMENT;
warning.error_code = "1000C001";
m_result.warnings.push_back(warning);
}
//bbs:HRC checker
warning.params.clear();
warning.level=1;
if (m_result.nozzle_hrc!=0) {
for (size_t i = 0; i < used_extruders.size(); i++) {
int HRC=0;
if (used_extruders[i] < m_result.required_nozzle_HRC.size())
HRC = m_result.required_nozzle_HRC[used_extruders[i]];
if (HRC != 0 && (m_result.nozzle_hrc<HRC)) {
GCodeProcessorResult::SliceWarning warning;
warning.level = 1;
warning.msg = THE_ACTUAL_NOZZLE_HRC_SMALLER_THAN_THE_REQUAIRED_NOZZLE_HRC;
m_result.warnings.emplace_back(std::move(warning));
}
if (HRC != 0 && (m_result.nozzle_hrc<HRC))
warning.params.push_back(std::to_string(used_extruders[i]));
}
}

View File

@ -707,7 +707,7 @@ void TreeSupport::detect_object_overhangs()
if (m_object->tree_support_layer_count() >= m_object->layer_count())
return;
// Create Tree Support Layers
// Clear and create Tree Support Layers
m_object->clear_tree_support_layers();
m_object->clear_tree_support_preview_cache();
@ -720,11 +720,11 @@ void TreeSupport::detect_object_overhangs()
const coordf_t extrusion_width = config.line_width.value;
const coordf_t extrusion_width_scaled = scale_(extrusion_width);
const coordf_t max_bridge_length = scale_(config.max_bridge_length.value);
const bool bridge_no_support = max_bridge_length > 0;// config.bridge_no_support.value;
const bool bridge_no_support = max_bridge_length > 0;
const bool support_critical_regions_only = config.support_critical_regions_only.value;
const int enforce_support_layers = config.enforce_support_layers.value;
const double area_thresh_well_supported = SQ(scale_(6)); // min: 6x6=36mm^2
const double length_thresh_well_supported = scale_(6); // min: 6mm
const double area_thresh_well_supported = SQ(scale_(6));
const double length_thresh_well_supported = scale_(6);
static const double sharp_tail_max_support_height = 8.f;
// a region is considered well supported if the number of layers below it exceeds this threshold
const int thresh_layers_below = 10 / config.layer_height;
@ -825,12 +825,11 @@ void TreeSupport::detect_object_overhangs()
if (std::set<SupportType>{stTreeAuto, stHybridAuto, stTree}.count(stype))// == stTreeAuto || stype == stHybridAuto || stype == stTree)
{
double threshold_rad = (config.support_threshold_angle.value < EPSILON ? 30 : config.support_threshold_angle.value+1) * M_PI / 180.;
ExPolygons regions_well_supported; // regions on buildplate or well supported
std::map<ExPolygon, int, ExPolygonComp> region_layers_below; // regions and the number of layers below
ExPolygons lower_overhang_dilated; // for small overhang
ExPolygons regions_well_supported;
std::map<ExPolygon, int, ExPolygonComp> region_layers_below;
ExPolygons lower_overhang_dilated;
for (size_t layer_nr = 0; layer_nr < m_object->layer_count(); layer_nr++)
{
for (size_t layer_nr = 0; layer_nr < m_object->layer_count(); layer_nr++){
if (m_object->print()->canceled())
break;
@ -875,7 +874,7 @@ void TreeSupport::detect_object_overhangs()
// normal overhang
ExPolygons lower_layer_offseted = offset_ex(lower_polys, support_offset_scaled, SUPPORT_SURFACES_OFFSET_PARAMETERS);
ExPolygons overhang_areas = std::move(diff_ex(curr_polys, lower_layer_offseted));
// overhang_areas = std::move(offset2_ex(overhang_areas, -0.1 * extrusion_width_scaled, 0.1 * extrusion_width_scaled));
overhang_areas.erase(std::remove_if(overhang_areas.begin(), overhang_areas.end(),
[extrusion_width_scaled](ExPolygon &area) { return offset_ex(area, -0.1 * extrusion_width_scaled).empty(); }),
overhang_areas.end());
@ -962,7 +961,7 @@ void TreeSupport::detect_object_overhangs()
// 2.4 if the area grows fast than threshold, it get connected to other part or
// it has a sharp slop and will be auto supported.
ExPolygons new_overhang_expolys = diff_ex({ expoly }, lower_layer_sharptails);
ExPolygons new_overhang_expolys = diff_ex({expoly}, lower_layer_sharptails);
if (!offset_ex(new_overhang_expolys, -5.0 * extrusion_width_scaled).empty()) {
is_sharp_tail = false;
break;
@ -1133,7 +1132,6 @@ void TreeSupport::detect_object_overhangs()
// if (erode1.empty() && !inter_with_others.empty())
// blockers[layer_nr].push_back(p_overhang->contour);
}
}
}
@ -1162,12 +1160,13 @@ void TreeSupport::detect_object_overhangs()
for (auto &area : ts_layer->overhang_areas) {
ts_layer->overhang_types.emplace(&area, TreeSupportLayer::Detected);
}
// enforcers
if (layer_nr < enforcers.size()) {
Polygons& enforcer = enforcers[layer_nr];
// coconut: enforcer can't do offset2_ex, otherwise faces with angle near 90 degrees can't have enforcers, which
// is not good. For example: tails of animals needs extra support except the lowest tip.
//enforcer = std::move(offset2_ex(enforcer, -0.1 * extrusion_width_scaled, 0.1 * extrusion_width_scaled));
enforcer = offset(enforcer, 0.1 * extrusion_width_scaled);
for (const Polygon& poly : enforcer) {
ts_layer->overhang_areas.emplace_back(poly);
ts_layer->overhang_types.emplace(&ts_layer->overhang_areas.back(), TreeSupportLayer::Enforced);
@ -1869,7 +1868,7 @@ void TreeSupport::generate_support_areas()
if (!tree_support_enable)
return;
std::vector<std::vector<Node*>> contact_nodes(m_object->layers().size()); //Generate empty layers to store the points in.
std::vector<std::vector<Node*>> contact_nodes(m_object->layers().size());
profiler.stage_start(STAGE_total);
@ -2058,10 +2057,10 @@ void TreeSupport::draw_circles(const std::vector<std::vector<Node*>>& contact_no
const Node& node = *p_node;
ExPolygon area;
// 直接从overhang多边形生成如果
// ç´æŽ¥ä»Žoverhang多边形生æˆ<EFBFBD>ï¼Œå¦æžœï¼?
// 1) 是混合支撑里的普通部分,
// 2) 启用了顶部接触层,
// 3) 是顶部空隙
// 2) å<EFBFBD>¯ç”¨äº†é¡¶éƒ¨æŽ¥è§¦å±ï¼?
// 3) 是顶部空�
if (node.type == ePolygon || (top_interface_layers>0 &&node.support_roof_layers_below > 0) || node.distance_to_top<0) {
if (node.overhang->contour.size() > 100 || node.overhang->holes.size()>1)
area = *node.overhang;

View File

@ -399,7 +399,7 @@ struct SlabLines {
std::vector<IntersectionLines> at_slice;
// Projections of triangle set boundary lines into layer below (for projection from the top)
// or into layer above (for projection from the bottom).
// In both cases the intersection liens are CCW oriented.
// In both cases the intersection lines are CCW oriented.
std::vector<IntersectionLines> between_slices;
};