* Fix crash due to the wrong window get returned in `PointCtrl` (SoftFever/OrcaSlicer#6261).
`getWindow()` must return the control itself, not its child control; otherwise the child control will be destroyed twice when the tab container is destroyed.
* Fix another crash on Linux caused by unused undo button
* Fix build with CGAL 5.6
Surface_mesh iterators no longer return references, so it's necessary to
use const references or copies when iterating.
This was previously merged in #3045 but isn't references in the
current main branch anymore. No idea where why it is gone, but the issue
still persists thus the patch should still be added.
* Fix linux deps debug build
* Use the same DL_CACHE for release build when building debug version of deps on Linux.
This prevents downloading the same source packages twice, and avoid downloading again after deleting the build dir.
* Fix debug build
* Fix warnings "loop variable creates a copy from type" and "loop variable binds to a temporary constructed from type"
* Improvements in Inner Outer Inner wall ordering logic
* Updated to BFS algorithm, made ordering more robust and corrected edge cases
* Doc updates
* Refinements in perimeter sorting
* Removal of touch threshold and code debugging to improve sequencing
* Code cleanup
* Code refinements on perimeter distance thresholds
* Extend perimeter re-ordering to more than inset index 2, to reduce travel moves when printing neighbouring features
* Refinements to IOI perimeter re-ordering algorithm to improve travel scenarios where multiple external perimeters are contained in the same island.
* Documentation updates
* Removed unnecessary code
* Removed bespoke to_points function and replaced with ExtrusionLine member already present. Removed squaredDistance and replaced with Eigen library call.
* Refactor code to move distancing functions to the multipoint class. Renamed for more clarity on their purpose.
* Added SBS to filament_info.json
* Added SBS to Print.cpp
* added SBS to PrintConfig.cpp
* Added SBS to BBL
* Added SBS Template and also specified SBS as type in fdm_filament_sbs.json
* Updated settings for SBS in filament_sbs_template.json
* Applied SBS settings to fdm_filament_sbs.json
* added settings to Generic SBS @base.json
---------
Co-authored-by: Duan Gauche <duan.gauche@pdsvision.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Revert "Fix #3311: filament Load / Unload time was not used in time estimation (#3706)"
This reverts commit 252788419b.
* revamp tool/filament change time
* tweak message
* Use more readable data types for storing triangle splitting information.
* fix build errors
* SPE-2063: Determine correctly which extruders are used when the object is painted by the multi-material painting gizmo.
During the serialization of TriangleSelector and also during reading serialized painting data from 3MF, we cache all used states in the painted triangle mesh.
Based on this information, we can quickly determine which extruders are used and which don't.
* Fixed an bug that filament list was not updated properly
---------
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
* Fix z hop performed after retraction in PA pattern calibration. Fix zhop config value not used
* Updated gathering of z hop value method for consistency
* Fix -Wsubobject-linkage warning
Having tk::spline header-only implementation included from
SmallAreaInfillFlowCompensator.hpp makes
SmallAreaInfillFlowCompensator::flowModel have separate (albeit the
same) implementation in each translation unit.
In order to fix this issue, SmallAreaInfillFlowCompensator::flowModel
converted to opaque 'pimpl'
* spline: remove anonymous namespace
Remove outer anonymous namespace from splice.h to make
forward declaration for tk::spline possible.
* fix gizmo bar wobbling
Gizmo bar is wobbling at specific application window width range.
This comes from a bar scaling calculations method:
- new scale calculated for already scaled bar
- scale stored as application settings loosing precision
Rework gizmo bar resizing code to remove feedback:
- calculate scale factor based on unscaled bar size
* rework gizmo bar scaling
Unify scaling implementation across platforms (MacOS, Win, Linux).
Now all platform scale bar setting icon size.
Toolbar scale is used for high-DPI displays scaling only.
* Add comments, reorganize changes to minimize diff
* Fix crash when filling very tiny (1-5nm) gaps (#6279)
Cherry-picked from prusa3d/PrusaSlicer@8784ca0ecf
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
* SPE-2256: Fix the issue that we used the old Voronoi graph during the detection of invalid Voronoi diagrams.
This happens because we didn't set a modified flag that is required to be set before we use the new Voronoi graph.
Possibly related to #12385
Cherry-picked from prusa3d/PrusaSlicer@2de1f3aa45
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
---------
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
* Supress warnings on unused functions an variables
Compilation of OrcaSlicer produces 3056 warnings.
Nearly half of them related to unused functions and variables.
It is unlikely we going to clean them up since we may want to
keep code base as close to the BBS as possible
* initialize class member with correct value
* Fix memset arguments order
* Merge multiple statemensts into single
* fix -Wpessimizing-move
* Increase granularity of extrusion move splitting for small line segments ending in an overhang
* Parameter tweak
* Increase granularity of estimation for curled perimeters
* Adjust parameters following experimentation with overhang prints
* Updated overhang segmentation logic
* Cleanup code comments