bubnikv
0558b53493
WIP: Moved sources int src/, separated most of the source code from Perl.
...
The XS was left only for the unit / integration tests, and it links
libslic3r only. No wxWidgets are allowed to be used from Perl starting
from now.
2018-09-19 11:02:24 +02:00
bubnikv
3ddaccb641
Replaced CONFESS with throw std::exception in libslic3r, so now
...
libslic3r should be compilable without Perl.
2018-09-18 10:09:58 +02:00
bubnikv
fe3b92870f
Merged with dev
2018-09-17 15:12:13 +02:00
bubnikv
0235f1a821
Merged with dev
2018-09-12 11:59:02 +02:00
Enrico Turri
15b1340514
Added ModelInstance::world_matrix() method and stl_transform using eigen transform
2018-09-04 14:42:14 +02:00
Enrico Turri
cfe49a20ad
Removed unused methods
2018-08-28 15:19:53 +02:00
tamasmeszaros
1c4574d42e
fix centroid error for two points and merge with dev.
2018-08-27 16:20:13 +02:00
Enrico Turri
fef5a5252e
Fixed conflicts after merging with master
2018-08-27 14:00:53 +02:00
tamasmeszaros
d749080261
Merge remote-tracking branch 'origin/dev' into sla_base_pool
2018-08-27 09:53:52 +02:00
Enrico Turri
66ce638439
Fixed conflicts after merging with branch eigenize
2018-08-23 15:37:38 +02:00
bubnikv
76d60070eb
Eigenized the admesh structures
...
(stl_vertex, stl_normal).
2018-08-22 15:34:03 +02:00
bubnikv
6829704475
d ..
2018-08-22 15:03:35 +02:00
bubnikv
ac72cd779f
Replaced Point3 with Eigen Vec3crd, removed Point3 from the Perl binding.
2018-08-21 22:14:47 +02:00
bubnikv
cae0806112
Eradicated most of Pointf extras compared to pure Eigen::Vector2d.
2018-08-21 20:34:45 +02:00
bubnikv
cb138a20b8
Completely replaced the homebrew Pointf3 class with Eigen Vec3d.
...
Replaced the unscale macro with a template, implemented templates
for unscaling Eigen vectors.
2018-08-21 17:43:05 +02:00
Lukas Matena
86b67bbd42
Lay flat - rotation is now done in one go directly about the necessary axis
2018-08-21 15:40:11 +02:00
tamasmeszaros
6e77307880
Merge remote-tracking branch 'origin/eigenize' into sla_base_pool
2018-08-21 13:50:09 +02:00
Lukas Matena
b0dd328fde
Lay flat - icons and invalidation improvement
2018-08-20 11:27:25 +02:00
bubnikv
65011f9382
Removed the x(), y(), z() Point/Pointf/Point3/Pointf3 accessors.
2018-08-17 15:53:43 +02:00
Lukas Matena
f9efcc36b6
Lay flat gizmo improvements - merge adjacent faces, compute and cache convex hull for entire ModelObject, refresh when moved, etc.
2018-08-17 15:40:47 +02:00
tamasmeszaros
f297da0d01
Working curve approximation of the concave hull with clipper offset.
2018-08-16 17:47:05 +02:00
Lukas Matena
3f72ca2a15
Merge remote-tracking branch 'origin/convex_hull' into lm_lay_flat_round_merged_facets
2018-08-16 08:56:18 +02:00
Enrico Turri
4d98d32199
Use of bounding box of rotated 3D convex hull for out of print volume detection
2018-08-15 12:50:06 +02:00
bubnikv
f34252a27b
Changing the internal representation of Point / Pointf / Point3 / Pointf3 to Eigen Matrix types:
...
Changed the Point3 / Pointf3 to composite Eigen Vec3crd / Vec3d.
Point3 is no more derived from Point,
Pointf3 is no more derived from Pointf.
Introduced Transform2f/3f/2d/3d types as aliases to Eigen::Transform.
2018-08-14 21:33:41 +02:00
bubnikv
86da661097
Changing the internal representation of Point / Pointf / Point3 / Pointf3 to Eigen Matrix types, first step
2018-08-14 18:33:26 +02:00
Lukas Matena
a06b6716ea
First naive implementation of TriangleMesh convex hull calculation
2018-08-09 16:35:28 +02:00
tamasmeszaros
3bdb12ada1
Making it compile on GCC 4.9
2018-05-23 14:16:54 +02:00
Enrico Turri
d19b1162b3
Fixed normals on wipe tower box
2018-05-03 11:09:13 +02:00
bubnikv
33e1108f65
Background processing in C++, WIP.
2018-03-28 17:05:31 +02:00
bubnikv
1b23f9cd6e
Fixing compilation errors: A non-const reference does not accept
...
a temporary variable.
2018-03-16 10:04:42 +01:00
bubnikv
4f0c6dd879
Reworked the fix of #784 for efficiency and robustness:
...
First, the same direction segments are chained as before, but this time
the remaining open polylines are collected to be processed in the 2nd step.
Second, the remaining open polylines are connected by a greedy algorithm
disregarding their original orientation. As the orientation of loops
created by the 2nd step is mixed, the orientation of these loops is
unknown, therfore a CCW orientation is enforced. The CCW heuristics
may fill holes and cavities, but no outer geometry will be lost.
2018-03-15 17:14:13 +01:00
Enrico Turri
1ae8684af1
Modified TriangleMeshSlicer::make_loops() to fix #784
2018-03-13 13:32:50 +01:00
Enrico Turri
0ec68eb35b
Fix for issue #661 (ExPolygons generation)
2018-02-28 11:41:04 +01:00
bubnikv
68c51be130
Merge remote-tracking branch 'remotes/origin/mesh_repair'
2018-02-23 14:38:37 +01:00
Enrico Turri
1489b9901b
Added workaround into admesh stl_fix_normal_directions() function to prevent meshes to be broken by the repairing process ( fixes #716 , #574 , #413 , #269 , #262 , #259 , #230 , #228 , #206 )
2018-02-15 16:10:47 +01:00
Enrico Turri
475f892413
3mf Importer - 1st installment
2018-01-30 09:27:10 +01:00
Enrico Turri
d34f3ffc83
Fix for #574 , #413 , #269 , #262 , #259 , #230 , #228 , #206
2018-01-18 09:15:04 +01:00
bubnikv
ee645007f2
Another step towards C++ presets.
2017-10-25 12:53:31 +02:00
bubnikv
98408bbed0
Fixed a crash when slicing leads to no print.
...
Fixed a bug in TriangleMesh::bounding_box().
2017-09-12 16:48:44 +02:00
bubnikv
31085fb1d7
Ported some ModelObject methods from Perl to C++.
...
Added some utility functions to TriangleMesh, thanks to @alexrj
Some porting to C++ based on work by @alexrj.
2017-08-02 16:05:18 +02:00
bubnikv
b724d789fd
New feature: Splitting an object into a multi-part volume.
2017-06-15 15:38:15 +02:00
bubnikv
f408f08850
Disabled the new Slic3r version check until we have a server set up
...
for the Slic3r Prusa Edition.
Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/258
by moving the 2D thumbnail generation to the main thread and
forcing the simple 2D convex hull for even the small objects.
2017-06-12 14:25:35 +02:00
bubnikv
329f0b9cf4
Debugging output and asserts for TriangleMeshSlicer::slice().
2017-04-05 08:57:37 +02:00
bubnikv
a956186c76
Parallelized TriangleMeshSlicer::make_expolygons
2017-03-08 21:55:38 +01:00
bubnikv
1e6cf0cd98
TriangleMeshSlicer
...
replaced the vectors of vectors by vectors of indices to a continuous memory,
using binary search to get to an index.
2017-03-08 09:47:32 +01:00
bubnikv
edd7cabf68
Trace TriangleMeshSlicer at loglevel debug (nr. 4)
2017-03-07 22:50:32 +01:00
bubnikv
cb1a6eae1e
Added dependencies on the Intel Thread Building Blocks.
...
Changed the C++ parallelization code to Intel Thread Building Blocks.
2017-03-07 13:03:14 +01:00
bubnikv
d20a9d73d4
Fix for OSX: clang requires the member operator< and == to be const.
2017-03-05 16:34:16 +01:00
bubnikv
1909c75c21
TriangleMeshSlic3r used unordered_map, which was terribly horribly shamelessly
...
slow on mingw. Rewrote using std::vector<>, which is blazing fast.
2017-03-03 17:36:07 +01:00
bubnikv
4de33effdc
Tracing of TriangleMesh repair.
2017-03-03 13:31:51 +01:00