Commit Graph

51 Commits

Author SHA1 Message Date
Enrico Turri
e7e4cc5600 Fixed crash while repairing imported model 2019-12-09 13:27:21 +01:00
Enrico Turri
25ab9e8d5d Fixed normals transformation in functions stl_transform() 2019-11-19 11:43:20 +01:00
Lukas Matena
661c91a821 Fixing Linux build
GCC 4.8 does not fully support C++11 and in-class char array initialization
2019-09-27 11:31:16 +02:00
Lukas Matena
b67d8c1614 Fixed memsetting non-trivially-copyable types
Types stl_stats, stl_normal and SurfaceFillParams should not be zeroed by memset
This is not correct and also triggered warnings on gcc
2019-09-24 17:09:07 +02:00
Jason Tibbitts
197a1f95ff Relocate declaration of stl_internal_reverse_quads
On little-endian hosts, stl_internal_reverse_quads will be called before
it is declared.  Move the declaration up to the beginning of the file to
fix build breakage seen on an s390x host.
2019-09-24 08:54:35 +02:00
bubnikv
94212fa2a9 Another fix of admesh on big endian architectures, fixes #2879 2019-09-19 08:56:47 +02:00
bubnikv
b4f2df6a98 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-12 10:19:09 +02:00
bubnikv
6f4fff1b29 Fix of 2.1.0-rc2 Fails to open "certain' STL files #2906 2019-09-12 10:16:52 +02:00
bubnikv
6ba43ebacb Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-09 17:49:07 +02:00
bubnikv
42e41dae04 Fix of a regression big endian issue in admesh
fixes 2.1.0-rc build error in admesh (unusual architecture only) (#2879)
2019-09-09 09:18:53 +02:00
Enrico Turri
19616c4f93 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-06 17:53:17 +02:00
bubnikv
07798510fc Fighting the ASCII STL import.
Fix of 2.1.0-rc: Loading MMU STL's results in object placement off the plater (#2868)
It has been broken with 9abef2241d
when trying to fix "Error on importing stl" #2813
2019-09-05 14:29:34 +02:00
Lukas Matena
942f959e87 Fixed couple of warnings
Turned several includes into forward declarations
Removed several sprintf calls in favor of std::to_string
2019-09-02 16:27:48 +02:00
bubnikv
9abef2241d The ASCII STL import was made more tolerant to non-standard input format,
namely:
1) Whitespaces are allowed at the end of lines
2) A freeform is allowed after "endloop", "endfacet" and "endsolid", if separated
from the keyword by a whitespace. Some ASCII STL exporters likely add their
annotations in there.

Fixes "Error on importing stl" #2813
2019-08-26 09:50:28 +02:00
bubnikv
cd95b52dcd Undo / Redo memory conservation strategy: Release recoverable data
starting from the objects of lowest ObjectID.
(convex hulls are recoverable as well as the indexed triangle sets
inside the TriangleMeshes or the triangle connectivity information).

Now the top most snapshot (the temp one taken before Undo jump) will
never be released.
2019-07-18 11:51:06 +02:00
bubnikv
3a74e7ab69 WIP: Undo / Redo memory limiting by releasing the least recently
used snapshots. Memory limit set to 10% of physical system memory.
2019-07-17 15:48:53 +02:00
bubnikv
270fec84d3 Fix of the Undo / Redo for Cut.
Added some more operations (for example Rotation) to the Undo / Redo.
2019-07-05 19:46:48 +02:00
bubnikv
c95a324c3f Merge branch 'vb_admesh_fix' 2019-06-18 08:54:50 +02:00
bubnikv
f8c5570155 Removed unnecessary copy / move constructors / assignment operators. 2019-06-14 15:47:40 +02:00
bubnikv
77954a13b9 Fix of admesh import due to boost::pool::destroy taking O(n).
Why on earth?!
2019-06-14 11:07:07 +02:00
bubnikv
9379fedd43 Further C++isation of the admesh library & TriangleMesh
(copy & move constructors / operators)
2019-06-13 16:33:50 +02:00
tamasmeszaros
821ca0e36a Build fix when boost is not in prefix/boost 2019-06-13 14:19:24 +02:00
bubnikv
3872b939e4 Fix of previous commit 2019-06-11 17:15:07 +02:00
bubnikv
0bb8ee149e Sharing TriangleMesh objects between the front end (UI) and back end
(background processing)
2019-06-11 17:08:47 +02:00
bubnikv
5fc465b7e8 admesh refactoring: Using boost::object_pool for linked list memory
allocation.
2019-06-11 09:29:32 +02:00
bubnikv
590c290ede Fix of a typo. 2019-06-10 22:43:42 +02:00
bubnikv
af5017c46c admesh refactoring: Use Eigen vec3i for indexed triangles. 2019-06-10 21:14:58 +02:00
bubnikv
313ec7424a admesh refactoring: replaced various diagnostics outputs with boost::log 2019-06-10 19:45:38 +02:00
bubnikv
6defabea53 admesh refactoring: separation of the shared vertices / indices
into an indexed_triangle_set structure
2019-06-10 18:30:54 +02:00
bubnikv
65238a89b1 admesh refactoring: Removed the shared_vertices counter as it is now
contained inside v_shared std::vector
2019-06-10 17:36:15 +02:00
bubnikv
a1c38794fb Refactored admesh to get rid of the error and fp members of stl_file. 2019-06-10 17:17:36 +02:00
bubnikv
40b27e8332 admesh refactoring: Move the hashing structure out of stl_file 2019-06-10 16:53:08 +02:00
bubnikv
025f86ca3f Fix of the previous refactoring. 2019-06-10 11:04:09 +02:00
bubnikv
8da54139c4 WIP: Admesh - replacement of C memory allocation with std vectors 2019-06-04 22:06:42 +02:00
bubnikv
3ab886b747 Fix of mesh decimation (the admesh library).
Fixes "Unable to save project (#2445)"
2019-06-04 18:25:53 +02:00
tamasmeszaros
96380180f4 Build system tweaks to get rid of cmake and boost warnings. 2019-05-30 17:48:32 +02:00
bubnikv
3f08d9f30d Changed references to renamed github project
https://github.com/prusa3d/PrusaSlicer
2019-05-14 19:46:01 +02:00
bubnikv
054a3258d3 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2019-05-07 15:45:17 +02:00
Enrico Turri
61a0ab4280 Workaround to fix crash reported in #2209 2019-05-07 15:09:15 +02:00
bubnikv
bfb9288df6 Yet another template gymnastics 2019-04-29 16:59:31 +02:00
bubnikv
558bd5d95a Fixed usage of template method, worked only on non-standard MS compiler. 2019-04-29 16:42:50 +02:00
bubnikv
8c8f8fd940 Fixed compilation on osx 2019-04-29 16:11:39 +02:00
bubnikv
6526a8fcaf WIP: Transformation of instances in world coordinate space:
Ulocking the "anisotropic" scaling checkbox will bake the transformation
into meshes to allow for scaling in world axes.

Optimized and templated the stl_transform functions, now also available for 3x3 matrices.
The Canvas3D::reload_scene() now maintains selection even if all volumes of an instance changed their IDs.
2019-04-26 17:28:31 +02:00
bubnikv
4a210aeecf Vojtech's improvements in the SLA preview cutting dialog. 2019-04-11 15:44:32 +02:00
bubnikv
ef1a273f0c Fix of "Latest commit of Slic3r 1.42.0 cuts away part of the model #2063"
Fixed one bug of many in admesh library, where the face connectivity
was broken when removing a degenerate face. Likely there are some
similar issues left to be solved.
Placed a workaround to always recalculate face connectivity before slicing.
2019-04-04 16:16:57 +02:00
bubnikv
18025cc669 Reworked the command line interface based on the current state
of the upstream.
Thanks @alexrj, @lordofhyphens for the original code of slic3r.cpp
2019-03-13 15:44:50 +01:00
bubnikv
c482933845 Fixed a regression issue in the triangle mesh slicing code, where
a broken contour was not glued together using the closest neighbors.
2019-03-11 17:18:38 +01:00
bubnikv
041de161a9 Fixes to storing and loading configs from AMF/3MF. 2018-11-07 14:57:50 +01:00
Enrico Turri
7114b80882 Use Transform3d in place of Transform3f as parameter of mesh transform functions 2018-11-02 13:47:47 +01:00
bubnikv
47b2d363f0 Fixed a regression bug in admesh: bad hashing.
Also the hash table size for admesh was made adaptive based on the number
of faces.
2018-09-25 16:05:26 +02:00