Commit graph

35 commits

Author SHA1 Message Date
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
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
Enrico Turri
fef5a5252e Fixed conflicts after merging with master 2018-08-27 14:00:53 +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
ac72cd779f Replaced Point3 with Eigen Vec3crd, removed Point3 from the Perl binding. 2018-08-21 22:14:47 +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
Lukas Matena
b0dd328fde Lay flat - icons and invalidation improvement 2018-08-20 11:27:25 +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
fca7c8abfe Fixed compilation and test cases. 2018-03-28 19:47:26 +02:00
bubnikv
33e1108f65 Background processing in C++, WIP. 2018-03-28 17:05:31 +02: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
475f892413 3mf Importer - 1st installment 2018-01-30 09:27:10 +01: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
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
1b89c08bfc TriangleMesh.cpp/h:
New methods: has_multiple_patches(), number_of_patches()
Improved constness of file access methods.
Reduced some memory allocations costs.
Fixed some crashes of the cut() method on invalid meshes, Slic3r crashes on the unstable triangulation now.
Documented.
2017-02-26 22:17:39 +01:00
Joseph Lenox
c575a1f1d6 Added make_sphere, generates a mesh with specified step angle and raidus rho. 2017-02-21 16:29:09 +01:00
Joseph Lenox
b91b98b21e Added prototype make_cylinder() 2017-02-21 16:10:38 +01:00
Joseph Lenox
3bb237deee Added new constructor to TriangleMesh that accepts vectors of Points and make_cube function to make a new simple cube mesh. 2017-02-21 16:10:14 +01:00
Alessandro Ranellucci
73ddd3b438 Refactored parallelization code, cherry picked from @alexrj 36789774471a0bf9a66bb33cc3ab6984f8ede8c6 2016-12-08 14:40:47 +01:00
Alessandro Ranellucci
70a9de085b Parallelize TriangleMeshSlicer::slice(), cherry picked from @alexrj 83ad123d951c6ee663d2f3b02e095c203ca794e7 2016-12-08 14:28:09 +01:00
Alessandro Ranellucci
4913e90e10 Remove any Perl related code from libslic3r 2015-12-08 00:39:54 +01:00
Alessandro Ranellucci
61f0a9e4da Replace the flip word with mirror. #3060 2015-11-04 23:11:30 +01:00
Alessandro Ranellucci
5eb3bc52ef Ported ModelObject::rotate() and ModelObject::flip() to XS, as well as axes constants 2015-04-16 21:22:04 +02:00
Alessandro Ranellucci
8791f5a493 Cleanup of some method signatures and of XS return types 2015-01-19 18:53:04 +01:00
Alessandro Ranellucci
d4ae734659 Minor improvement to IntersectionLine (now subclasses Line) 2015-01-06 20:58:07 +01:00
Alessandro Ranellucci
73b3c06361 Ported more things to XS 2014-09-21 10:51:36 +02:00
Alessandro Ranellucci
5a96bad8c2 Ported some more methods to C++ 2014-08-08 21:48:59 +02:00
Alessandro Ranellucci
b10917806a Ported some Model methods to XS 2014-08-03 20:33:16 +02:00
Alessandro Ranellucci
6adc3477c9 Moved C++ code into new libslic3r directory 2014-08-03 19:42:29 +02:00
Renamed from xs/src/TriangleMesh.hpp (Browse further)