Merge branch 'main' into main

This commit is contained in:
VOLUMIC
2024-11-27 16:35:50 +01:00
committed by GitHub
6 changed files with 30 additions and 13 deletions

View File

@@ -4625,7 +4625,7 @@ msgstr "Вигляд зверху"
#. TRN To be shown in the main menu View->Bottom #. TRN To be shown in the main menu View->Bottom
msgid "Bottom" msgid "Bottom"
msgstr "Ніз" msgstr "Низ"
msgid "Bottom View" msgid "Bottom View"
msgstr "Вигляд знизу" msgstr "Вигляд знизу"

View File

@@ -110,6 +110,7 @@ filament_vendors = [
'Justmaker', 'Justmaker',
'Keene Village Plastics', 'Keene Village Plastics',
'Kexcelled', 'Kexcelled',
'LDO',
'MakerBot', 'MakerBot',
'MatterHackers', 'MatterHackers',
'MIKA3D', 'MIKA3D',

View File

@@ -6813,7 +6813,12 @@ void PlateData::parse_filament_info(GCodeProcessorResult *result)
return false; return false;
} }
std::string type = (volume->type() == ModelVolumeType::MODEL_PART)?"model":"other"; // Orca#7574: always use "model" type to follow the 3MF Core Specification:
// https://github.com/3MFConsortium/spec_core/blob/20c079eef39e45ed223b8443dc9f34cbe32dc2c2/3MF%20Core%20Specification.md#3431-item-element
// > Note: items MUST NOT reference objects of type "other", either directly or recursively.
// This won't break anything because when loading the file Orca (and Bambu) simply does not care about the actual object type at all (as long as it's one of "model" & "other");
// But PrusaSlicer requires the type to be "model".
std::string type = "model";
output_buffer += " <"; output_buffer += " <";
output_buffer += OBJECT_TAG; output_buffer += OBJECT_TAG;

View File

@@ -266,8 +266,18 @@ public:
protected: protected:
double speed_first_layer() const { return m_config.option<ConfigOptionFloat>("initial_layer_speed")->value; }; double speed_first_layer() const { return m_config.option<ConfigOptionFloat>("initial_layer_speed")->value; };
double speed_perimeter() const { return m_config.option<ConfigOptionFloat>("outer_wall_speed")->value; }; double speed_perimeter() const { return m_config.option<ConfigOptionFloat>("outer_wall_speed")->value; };
double line_width_first_layer() const { return m_config.get_abs_value("initial_layer_line_width"); }; double line_width_first_layer() const
double line_width() const { return m_config.get_abs_value("line_width"); }; {
// TODO: FIXME: find out current filament/extruder?
const double nozzle_diameter = m_config.opt_float("nozzle_diameter", 0);
return m_config.get_abs_value("initial_layer_line_width", nozzle_diameter);
};
double line_width() const
{
// TODO: FIXME: find out current filament/extruder?
const double nozzle_diameter = m_config.opt_float("nozzle_diameter", 0);
return m_config.get_abs_value("line_width", nozzle_diameter);
};
int wall_count() const { return m_config.option<ConfigOptionInt>("wall_loops")->value; }; int wall_count() const { return m_config.option<ConfigOptionInt>("wall_loops")->value; };
private: private:

View File

@@ -50,14 +50,14 @@ static const std::vector<std::string> filament_vendors =
"Fil X", "GEEETECH", "Giantarm", "Gizmo Dorks", "GreenGate3D", "Fil X", "GEEETECH", "Giantarm", "Gizmo Dorks", "GreenGate3D",
"HATCHBOX", "Hello3D", "IC3D", "IEMAI", "IIID Max", "HATCHBOX", "Hello3D", "IC3D", "IEMAI", "IIID Max",
"INLAND", "iProspect", "iSANMATE", "Justmaker", "Keene Village Plastics", "INLAND", "iProspect", "iSANMATE", "Justmaker", "Keene Village Plastics",
"Kexcelled", "MakerBot", "MatterHackers", "MIKA3D", "NinjaTek", "Kexcelled", "LDO", "MakerBot", "MatterHackers", "MIKA3D",
"Nobufil", "Novamaker", "OVERTURE", "OVVNYXE", "Polymaker", "NinjaTek", "Nobufil", "Novamaker", "OVERTURE", "OVVNYXE",
"Priline", "Printed Solid", "Protopasta", "Prusament", "Push Plastic", "Polymaker", "Priline", "Printed Solid", "Protopasta", "Prusament",
"R3D", "Re-pet3D", "Recreus", "Regen", "RatRig", "Push Plastic", "R3D", "Re-pet3D", "Recreus", "Regen",
"Sain SMART", "SliceWorx", "Snapmaker", "SnoLabs", "Spectrum", "RatRig", "Sain SMART", "SliceWorx", "Snapmaker", "SnoLabs",
"SUNLU", "TTYT3D", "Tianse", "UltiMaker", "Valment", "Spectrum", "SUNLU", "TTYT3D", "Tianse", "UltiMaker",
"Verbatim", "VO3D", "Voxelab", "VOXELPLA", "YOOPAI", "Valment", "Verbatim", "VO3D", "Voxelab", "VOXELPLA",
"Yousu", "Ziro", "Zyltech"}; "YOOPAI", "Yousu", "Ziro", "Zyltech"};
static const std::vector<std::string> filament_types = {"PLA", "rPLA", "PLA+", "PLA Tough", "PETG", "ABS", "ASA", "FLEX", "HIPS", "PA", "PACF", static const std::vector<std::string> filament_types = {"PLA", "rPLA", "PLA+", "PLA Tough", "PETG", "ABS", "ASA", "FLEX", "HIPS", "PA", "PACF",
"NYLON", "PVA", "PVB", "PC", "PCABS", "PCTG", "PCCF", "PHA", "PP", "PEI", "PET", "NYLON", "PVA", "PVB", "PC", "PCABS", "PCTG", "PCCF", "PHA", "PP", "PEI", "PET",

View File

@@ -652,7 +652,8 @@ void Slic3r::GUI::ImageGrid::renderContent1(wxDC &dc, wxPoint const &pt, int ind
if (hit) { if (hit) {
texts.Add(_L("Delete")); texts.Add(_L("Delete"));
texts.Add(secondAction); texts.Add(secondAction);
texts.Add(thirdAction); if (!thirdAction.IsEmpty())
texts.Add(thirdAction);
renderButtons(dc, texts, rect, m_hit_type == HIT_ACTION ? m_hit_item & 3 : -1, states); renderButtons(dc, texts, rect, m_hit_type == HIT_ACTION ? m_hit_item & 3 : -1, states);
} else if (!nonHoverText.IsEmpty()) { } else if (!nonHoverText.IsEmpty()) {
texts.Add(nonHoverText); texts.Add(nonHoverText);