Commit Graph

364 Commits

Author SHA1 Message Date
a15c16d40d Use new libnest backend for MinAreaBoundingBox wrapper 2021-04-21 17:21:43 +02:00
ad19ab219d New custom backend for libnest2d using libslic3r types
Adapted to new clipper->eigen mod
2021-04-21 16:02:25 +02:00
7112ac61b6 Replacing ClipperLib::IntPoint with Eigen point as a first step to
make the ClipperLib paths and polygons compatible with Slic3r paths
and polygons without conversions and memory allocations.
2021-04-14 09:22:51 +02:00
bed3321324 Small improvement to "least supports" method 2021-04-07 12:51:02 +02:00
773116b777 Allow auto-rotation of objects not completely inside bed.
Don't use SLAPrintObject as the input for optimization. Use ModelObject and pass the print config to the optimization in RotoptimizeJob::prepare()
2021-04-07 12:51:02 +02:00
5443f77489 Increase performance of "best misalignment" method 2021-04-07 12:51:02 +02:00
f3e3aabec7 Least supports optimization revived.
Fix missing include on Win32


Cleanup benchmarking code
2021-04-07 12:51:02 +02:00
0194094afa Method selection implemented 2021-04-07 12:51:02 +02:00
46fd722f3c Unite cancel callback and status function 2021-04-07 12:51:02 +02:00
de8bb00fa9 Speed up rotation optimizer
- No float to double conversion
- Solving issue of random (very similar) results due to the parallel summation of floats
2021-04-07 12:51:02 +02:00
7760d3fbc4 Add new execution framework
Inspired by std::execution
2021-04-07 12:51:02 +02:00
4293a68aaa Reverting to old rotation optimizer object-function.
Keep the performance optimizations though
2021-04-07 12:51:02 +02:00
6d58546aef Fix unmarked failed holes on first gizmo opening 2021-03-16 09:31:03 +01:00
4b9de0398f Drill holes one by one and display warning of any of them fails
Drill with cgal::minus for now
2021-03-16 09:31:03 +01:00
a62262666a Exclude triangles of original interior mesh and drillholes from trimming 2021-03-08 17:38:10 +01:00
1ec154012e Add working version of triangle trimming for hollowed meshes 2021-03-08 17:38:10 +01:00
b8c1c13666 Add max_concurrency method for various execution policies 2021-03-08 17:38:10 +01:00
e3c2e513fa Do grid redistance even with zero closing distance
This prevents having a leftover grid with zero at the exterior boundary. Trimming expects zero at (offset + closing distance) inwards
2021-03-08 17:38:10 +01:00
527e675294 Use triangle removal only for visualized mesh 2021-03-08 17:38:10 +01:00
82954ba715 Group hollowing result (including grid) into one struct 2021-03-08 17:38:10 +01:00
e57eca0289 Add voxel scale to openvdb metadata.
To be able to retrieve that information from a generated grid alone.

To avoid the copying of input mesh (for scaling) when doing the hollowing

Also remove some unused stuff from OpenVDBUtils
2021-03-08 17:38:10 +01:00
a7255235e5 Remove gcc warning about uninitialized values 2021-03-03 15:19:24 +01:00
cceaae84fb Silencing compiler warning in AGGRaster on Visual Studio 2021-02-19 18:57:45 +01:00
bf9f908685 Remove warning from zero division.
By changing the initial value of pixel size to 1. from 0.
2021-02-11 11:26:25 +01:00
8049dd1f72 Trying to fix the remaining OSX warnings 2021-02-10 19:07:09 +01:00
db2d78ff21 Reduction on compiler warnings, mainly on MSVC.
Fix of the new gap_fill_enable flag: Take it into account when comparing
regions.
2021-02-10 17:29:07 +01:00
a7728634f0 Clang: silence -Wdeprecated-declarations for now
RPi: hopefully silence a warning
2021-02-08 17:52:29 +01:00
1834ebe981 Fixing Clang warnings 3 2021-02-08 17:52:29 +01:00
b85de89751 Fixing Clang warnings 2 2021-02-08 17:52:29 +01:00
2d32c80b75 Fixing GCC warnings 2 2021-01-29 10:46:52 +01:00
eef800b5c4 FIXME on ExPolygon::overlaps(), which should be commutative. 2021-01-22 15:32:45 +01:00
62bdc192d8 Fix of [2.3.0-alpha4] Crash - several models cause crash when slicing #5208
Fixed some issues in internal anchors of the Adaptive Cubic infill.
The ugly and dangerous implicit casting operators in Line, MultiPoint,
Polyline and Polygon were made explicit.
2020-11-24 16:01:08 +01:00
edb8b9f46d Cover various overhang types cumulatively 2020-10-16 11:14:57 +02:00
fb1f3589ed Use rotated bounding box to calculate eccentricity 2020-10-16 11:14:57 +02:00
90ddffa83c This broke the SLA support point generator test. Why? 2020-10-15 13:35:45 +02:00
19a115260a A little bit cheaper triangle random sampling + documentation. 2020-10-15 07:58:13 +02:00
b178d0af38 Wipe tower - small refactoring and fix
Collection of data from internal wipe tower gcode generator now uses move semantics.
Part of gcode at the end of priming was erroneously not exported (extruder current reset etc.)
2020-09-25 12:35:20 +02:00
20bd7b99f9 Significant performance improvements for elevated and non-elevated case
Apply bruteforce for elevated models
2020-09-10 19:35:45 +02:00
d527122046 Performance optimizations and bugfix 2020-09-10 14:03:30 +02:00
3b7ea5587e Fix build on win 2020-09-10 14:03:30 +02:00
0d4c67b9a3 Mostly working, inefficiencies remain, status indication partly broken 2020-09-10 14:03:30 +02:00
b4b9af4100 cosmethics
Comments and cosmethics
2020-09-10 14:03:30 +02:00
c10ff4f503 fixing optimizer and concurrency::reduce 2020-09-10 14:03:30 +02:00
c193d7c930 Brute force optimization code, buggy yet
wip


wip


wip refactor
2020-09-10 14:03:30 +02:00
b4e30cc8ad rotation finder experiments
wip
2020-09-10 14:03:30 +02:00
50836914fc Calibration changes to address new algorithm behavior. 2020-09-10 13:37:58 +02:00
26d5c30366 Improvements to support point generator
- Separate the 3 bands -- dangling, sloping and full overhanging -- regions and handle them with different support force deficits.

- Use a heuristic for overhanging edges to increase the number of support points generated for them


- Try to make overhangs and slopes deficit depend on stable area.
2020-09-10 13:19:17 +02:00
19e1d877aa Don't use sla::EncodedRaster in SLAImport, revive opencsg sandbox 2020-08-27 23:14:42 +02:00
a95509ce36 Changed internal coordinates of drain holes
Drain holes reference position was saved slightly above the mesh to avoid problem when the hole is placed on flat or nearly flat surface
The depth of the hole was internally bigger than what the user has set to compensato for it
However, this leads to problem with scaling and makes reprojection of the holes on the mesh complicated

This commit changes the reference point to the point on the mesh and the extra elevation is handled when rendering and drilling the hole.
The change is reflected in 3MF drain holes versioning so that old 3MFs are loaded correctly.
Reprojection on the mesh after reload from disk/fix through netfabb has been enabled.
2020-08-24 08:11:12 +02:00
4ef52af906 Add dedicated tests for support point generation 2020-08-18 11:41:14 +02:00