Skip to content

Commit ea0d709

Browse files
committed
Merge remote-tracking branch 'remotes/local/dev' into superslicer_variant
2 parents bafb3ab + 97e3528 commit ea0d709

File tree

12 files changed

+1584
-90
lines changed

12 files changed

+1584
-90
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ deps/build-linux/*
2121
**/.idea/
2222
.pkg_cache
2323
CMakeUserPresets.json
24+
**/bad_*
2425
# MacOS Ignores
2526
.DS_Store
2627

resources/profiles

Submodule profiles updated 397 files

src/libslic3r/Config.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -952,7 +952,7 @@ class ConfigOptionVector : public ConfigOptionVectorBase
952952
this->m_enabled.erase(this->m_enabled.begin() + n, this->m_enabled.end());
953953
} else if (n > this->m_values.size()) {
954954
if (this->m_values.empty()) {
955-
if (opt_default == nullptr)
955+
if (opt_default == nullptr || opt_default->size() == 0)
956956
this->m_values.resize(n, this->default_value);
957957
else if (opt_default->type() != this->type())
958958
throw ConfigurationError("ConfigOptionVector::resize(): Extending with an incompatible type.");

src/libslic3r/GCode.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7086,6 +7086,7 @@ void GCodeGenerator::_add_object_change_labels(std::string& gcode) {
70867086
// if m_new_z_target, then the ramping lift will be written. if not, then there isn't anything to ensure a good z
70877087
if(!m_new_z_target && BOOL_EXTRUDER_CONFIG(travel_ramping_lift) && m_spiral_vase_layer <= 0) {
70887088
gcode += m_writer.get_travel_to_z_gcode(m_writer.get_position().z(), "ensure z is right");
7089+
m_writer.set_lift(0);
70897090
}
70907091
}
70917092
}
@@ -7352,13 +7353,12 @@ void GCodeGenerator::write_travel_to(std::string &gcode, Polyline& travel, std::
73527353
double layer_change_diff = m_layer->print_z - m_writer.get_unlifted_position().z();
73537354
// move layer_change_diff into lift & z_diff_layer_and_lift
73547355
z_diff_layer_and_lift += layer_change_diff;
7355-
} else {
7356-
// do a strait z-move (as we can't see the preious point.
7357-
gcode += m_writer.get_travel_to_z_gcode(m_layer->print_z, "strait z-move, as the travel is undefined.");
7358-
no_ramping = true;
73597356
}
7360-
} else {
7361-
assert(!m_new_z_target);
7357+
}
7358+
if (travel.size() <= 1) {
7359+
// do a strait z-move (as we can't see the previous point.
7360+
gcode += m_writer.travel_to_z(m_layer->print_z, "strait z-move, as the travel is undefined.");
7361+
no_ramping = true;
73627362
}
73637363
// register get_extra_lift for our ramping lift (ramping lift + lift_min)
73647364
if (m_writer.get_extra_lift() != 0) {

src/libslic3r/LayerRegion.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1191,11 +1191,11 @@ void LayerRegion::prepare_fill_surfaces()
11911191
this->region().config().fill_density.value == 0))) {
11921192
for (Surface &surface : m_fill_surfaces)
11931193
if (surface.has_pos_top())
1194-
surface.surface_type = (
1195-
//this->layer()->object()->config().infill_only_where_needed &&
1194+
surface.surface_type =
1195+
/*( this->layer()->object()->config().infill_only_where_needed &&
11961196
!this->region().config().infill_dense.value
11971197
&& this->region().config().fill_pattern != ipLightning) ?
1198-
stPosInternal | stDensVoid : stPosInternal | stDensSparse;
1198+
stPosInternal | stDensVoid :*/ stPosInternal | stDensSparse;
11991199
}
12001200
if (this->region().config().bottom_solid_layers == 0) {
12011201
for (Surface &surface : m_fill_surfaces)

src/libslic3r/Preset.cpp

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
1-
///|/ Copyright (c) Prusa Research 2017 - 2023 Oleksandra Iushchenko @YuSanka, Lukáš Matěna @lukasmatena, Tomáš Mészáros @tamasmeszaros, Lukáš Hejl @hejllukas, Vojtěch Bubník @bubnikv, Pavel Mikuš @Godrak, David Kocík @kocikdav, Enrico Turri @enricoturri1966, Vojtěch Král @vojtechkral
2-
///|/ Copyright (c) 2021 Martin Budden
3-
///|/ Copyright (c) 2021 Ilya @xorza
4-
///|/ Copyright (c) 2019 John Drake @foxox
5-
///|/ Copyright (c) 2018 Martin Loidl @LoidlM
1+
///|/ Copyright (c) SuperSlicer 2025 Durand rémi @supermerill
62
///|/
7-
///|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
3+
///|/ SuperSlicer is released under the terms of the AGPLv3 or higher
84
///|/
95
#include <cassert>
106

@@ -50,6 +46,8 @@
5046

5147
using boost::property_tree::ptree;
5248

49+
// todo: arc_fitting and mlin_gcode_resolution switch from print to printer
50+
5351
namespace Slic3r {
5452

5553
ConfigFileType guess_config_file_type(const ptree &tree)

src/libslic3r/PrintConfig.cpp

Lines changed: 183 additions & 61 deletions
Large diffs are not rendered by default.

src/libslic3r/Semver.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66

77
namespace Slic3r {
88

9-
Semver SEMVER { SLIC3R_VERSION };
9+
Semver SEMVER { SLIC3R_VERSION_FULL };
1010

1111
}

src/libslic3r/Semver.hpp

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -115,18 +115,22 @@ class Semver
115115

116116
~Semver() { ::semver_free(&ver); }
117117

118-
// const accessors
119-
int maj() const { return ver.counter_size > 0 ? ver.counters[0] : 0; }
120-
int min() const { return ver.counter_size > 1 ? ver.counters[1] : 0; }
121-
//int counter() const { return ver.counter_size > 2 ? ver.counters[2] : 0; }
122-
//int patch() const { return ver.counter_size > 3 ? ver.counters[3] : 0; }
123-
const char* prerelease() const { return ver.prerelease; }
124-
const char* metadata() const { return ver.metadata; }
118+
// const accessors
119+
int maj() const { return ver.counter_size > 0 ? ver.counters[0] : 0; }
120+
int min() const { return ver.counter_size > 1 ? ver.counters[1] : 0; }
121+
int counter() const { return ver.counter_size > 2 ? ver.counters[2] : 0; }
122+
int patch() const { return ver.counter_size > 3 ? ver.counters[3] : 0; }
123+
bool has_maj() const { return ver.counter_size > 0; }
124+
bool has_min() const { return ver.counter_size > 1; }
125+
bool has_counter() const { return ver.counter_size > 2; }
126+
bool has_patch() const { return ver.counter_size > 3; }
127+
const char *prerelease() const { return ver.prerelease; }
128+
const char *metadata() const { return ver.metadata; }
125129

126130
// Setters
127-
//void set_maj(int maj) { if(ver.counter_size > 0) ver.counters[0] = maj; }
128-
//void set_min(int min) { if (ver.counter_size > 1) ver.counters[1] = min; }
129-
//void set_counter(int count) { if (ver.counter_size > 2) ver.counters[2] = count; }
131+
void set_maj(int maj) { if(ver.counter_size > 0) ver.counters[0] = maj; }
132+
void set_min(int min) { if (ver.counter_size > 1) ver.counters[1] = min; }
133+
void set_counter(int count) { if (ver.counter_size > 2) ver.counters[2] = count; }
130134
void set_patch(int patch) { if (ver.counter_size > 3) ver.counters[3] = patch; }
131135
void set_metadata(std::optional<std::string> meta)
132136
{

src/slic3r/GUI/ConfigWizard.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ BundleMap BundleMap::load()
173173
// Fresh index should be in archive_dir, otherwise look for it in cache
174174
// Then if not in archive or cache - it could be 3rd party profile that user just copied to vendor folder (both ini and cache)
175175

176-
fs::path idx_path (archive_dir / (id + ".idx"));
176+
fs::path idx_path (cache_dir / (id + ".idx"));
177177
if (!boost::filesystem::exists(idx_path)) {
178178
BOOST_LOG_TRIVIAL(error) << format("Missing index %1% when loading bundle %2%. Going to search for it in cache folder.", idx_path.string(), id);
179179
idx_path = fs::path(cache_dir / (id + ".idx"));

0 commit comments

Comments
 (0)