d45ab1c484
Fix trouble case test
2021-09-02 11:17:07 +02:00
25feacfd95
FIX Creation of non volume place in mode during simplification
2021-09-01 19:15:16 +02:00
c04856e049
Extend simplify test to chack distance of each triangle center and each vertices. Both simplify to origin and vice versa
2021-08-16 18:04:38 +02:00
b90ca142a5
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-08-16 11:56:56 +02:00
965c2f2c55
Improved error reporting when importing various configuration files:
...
1) Slic3r::RuntimeError was replaced with ConfigurationError,
all exceptions thrown by the configuration layer are derived
from ConfigurationError.
2) When parsing configuration files, ConfigurationError is catched and
rethrown extended with the file name being parsed.
2021-08-13 13:37:24 +02:00
ef5c94f90a
Fix: prevent degeneration of model during simplification
2021-08-06 15:11:20 +02:00
6bcc576b5f
truncate model name
2021-07-21 08:34:43 +02:00
25a4887075
QEC: When collapsing edge flip normal than check other edges in triangle
...
Quadric is calculated with double precission of normal
Fix calculation of normal for changed triangles
2021-07-19 15:46:41 +02:00
86a3fd00a5
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-19 09:18:55 +02:00
af526c54f4
Add simplification GUI
2021-07-19 09:17:50 +02:00
db782b01a5
Fix build on gcc8
2021-07-16 16:40:59 +02:00
aca93a7ced
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 14:14:54 +02:00
3a9857e493
Our friendly GCC does not consider std::pair<int, int> trivially
...
copiable either, while everybody else does. Shame on GCC.
2021-07-09 14:05:30 +02:00
d8a0b11157
GCC does not consider std::pair<std::pair<...>, ...> to be trivially
...
copiable, thus fixing the unit tests with a custom trivially
copyable type.
2021-07-09 13:58:54 +02:00
b2238834fb
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 13:40:58 +02:00
e4fd6a828f
1) Fixed a significant bug in MutablePriorityQueue when setting
...
the indices allowing rescheduling of values in the middle of the queue.
2) Implemented a cache friendly variant - MutableSkipHeapPriorityQueue
based on
https://playfulprogramming.blogspot.com/2015/08/cache-optimizing-priority-queue.html
https://github.com/rollbear/prio_queue/blob/master/prio_queue.hpp
2021-07-09 12:53:29 +02:00
2c0b89e4a7
FIX Simplify test
2021-07-09 10:31:05 +02:00
c53c958cdd
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 09:10:05 +02:00
e26bffadd8
Add throw_on_cancel and statusfn into QEC
2021-07-09 09:09:52 +02:00
60768d3248
Updated the Catch2 framework from v2.13.3 to v2.13.6.
...
Fixes Fix build error with non-const MINSIGSTKSZ. #6518
2021-07-08 16:55:59 +02:00
35a906139e
Extend test with checking simplified model distance to original model
2021-07-08 08:33:06 +02:00
ed9152d004
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-07 16:52:10 +02:00
0f3cabb5d9
Support for forward compatibility of configurations, user and system
...
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.
When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.
Substitute enums and bools only. Allow booleans to be parsed as
true: "1", "enabled", "on" case insensitive
false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".
Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.
WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
7c13cfa1d9
Add test checking diference in volume before/after simplification
...
FIX warnings
..\src\libslic3r\QuadricEdgeCollapse.cpp(173): warning C4056: overflow in floating-point constant arithmetic
..\src\libslic3r\QuadricEdgeCollapse.cpp(232): warning C4056: overflow in floating-point constant arithmetic
2021-06-22 09:41:38 +02:00
e3cdeda673
Add quadric edge collapse
2021-06-22 09:21:16 +02:00
c4507842a0
Add new (winner) neighbor index based on measurements
2021-06-08 10:34:32 +02:00
c8be2cdceb
Added measuring sandbox for neighbors index creation
2021-06-08 10:34:32 +02:00
c542e6e14b
Corrected mesh split implementation
2021-06-08 10:28:23 +02:00
8fdb0fddc0
Get rid of Contour3D
2021-06-08 10:28:23 +02:00
e6f97358bc
Refactored hollowing backend to use indexed_triangle_mesh
2021-06-08 10:28:23 +02:00
1009f78862
SLA backend refactored, except Hollowing
2021-06-08 10:27:35 +02:00
6b6b086948
Fixed tests and windows build
2021-05-24 12:20:29 +02:00
9da87d8e0f
Code cleanup
2021-05-24 10:03:48 +02:00
ca9fad002c
3rd attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-24 08:54:08 +02:00
dfa85c2c37
Another attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 15:37:25 +02:00
49f29e8353
Added debug output to help fixing unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 11:56:10 +02:00
90be278d98
Attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 10:14:13 +02:00
f0ef5e409d
Added unit test for calculation of 2D convex hull of sinking object
2021-05-20 12:53:47 +02:00
3481898d4d
Fixed missing include
2021-05-18 16:15:54 +02:00
70b4915f9c
TriangleMeshSlicer: Got rid of admesh!
2021-05-18 15:05:30 +02:00
308d6b7809
WIP: Reworked slicing
...
1) Slicing code moved to TriangleMeshSlicer.cpp,hpp from TriangleMesh.cpp,hpp
2) Refactored to use as little as possible of admesh.
2021-05-17 20:25:59 +02:00
52b3c655ff
Fixed Polygon::centroid()
...
Ported Polygon unit tests from Perl to C++.
2021-05-07 11:42:21 +02:00
f16d4953be
Removing offset2 from Perl bindings and other minor cleanup.
2021-05-06 14:29:20 +02:00
a2de09e11e
Fixing unit tests.
2021-05-05 13:19:01 +02:00
09a80d954c
Further rework of ClipperUtils: Replaced many to_polygons() /
...
to_expolygons() calls with templated ClipperUtils variants to avoid
memory allocation and copying.
2021-05-03 11:39:53 +02:00
9f4e9da5c6
Merge branch 'tm_vb_clipper_eigen'
2021-04-23 11:44:25 +02:00
8d0950ce12
Convincing ClipperLib to use Slic3r's own Point type internally.
2021-04-21 20:15:49 +02:00
949b0e63e8
Fix integer overflows in libnest2d tests
2021-04-21 16:08:38 +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
542d95a593
Fixing unit tests
2021-04-21 15:31:06 +02:00