Allow specifying print order within each layer (#3685)

* Allow reordering objects regardless of print seq

* Add option to control the layer print order

* Sort object by their order in object list instead of id

* Show print order when print order is the same as the object list

* Ensure the print order when print order is same as object list

* Update option name

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
Noisyfox 2024-01-21 20:11:09 +08:00 committed by GitHub
parent e92be73894
commit 26505e23ee
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 54 additions and 28 deletions

View file

@ -106,6 +106,13 @@ enum class PrintSequence {
Count,
};
enum class PrintOrder
{
Default,
AsObjectList,
Count,
};
enum class SlicingMode
{
// Regular, applying ClipperLib::pftNonZero rule when creating ExPolygons.
@ -1101,6 +1108,7 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE(
((ConfigOptionInts, overhang_fan_speed))
((ConfigOptionEnumsGeneric, overhang_fan_threshold))
((ConfigOptionEnum<PrintSequence>,print_sequence))
((ConfigOptionEnum<PrintOrder>, print_order))
((ConfigOptionInts, first_layer_print_sequence))
((ConfigOptionBools, slow_down_for_layer_cooling))
((ConfigOptionInts, close_fan_the_first_x_layers))