Organic supports: Added check for variable layer height, with which

Organic supports are not compatible.
Fixes #9528 and similar.
Moved the object max Z against build volume Z to Print::validate().
Updated layer_height_profile_from_ranges() to compress the resulting
ranges.
This commit is contained in:
Vojtech Bubnik 2023-02-03 15:27:40 +01:00
parent 79d5a38928
commit 5b94971fce
6 changed files with 135 additions and 58 deletions

View file

@ -385,7 +385,11 @@ public:
bool is_mm_painted() const;
// Checks if object contains just one volume and it's a text
bool is_text() const;
// This object may have a varying layer height by painting or by a table.
// Even if true is returned, the layer height profile may be "flat" with no difference to default layering.
bool has_custom_layering() const
{ return ! this->layer_config_ranges.empty() || ! this->layer_height_profile.empty(); }
ModelInstance* add_instance();
ModelInstance* add_instance(const ModelInstance &instance);
ModelInstance* add_instance(const Vec3d &offset, const Vec3d &scaling_factor, const Vec3d &rotation, const Vec3d &mirror);