Commit Graph

25 Commits

Author SHA1 Message Date
382326ffc8 Fixed FFF slicing of meshes with left hand oriented transformations applied.
Slight optimization of FFF slicing - optimized copy of an object with just
a single volume.
2019-04-03 11:12:03 +02:00
fbce7b001b Some optimizations of "Fix crash on splitting some models #2042"
replaced std::vector<bool> with std::vector<unsigned char>
as std::vector<bool> is a specialized version optimized for memory,
not speed (8 bools are packed into a single boolean).
The triangle neighbor traversal was optimized to not push visited
or non-neighbors into the queue.
2019-04-01 14:50:40 +02:00
d728f4be5e Revert "Use number_of_parts for is_splittable"
It is too dangerous to rely on the admesh flag without inspecting the
admesh code line by line and a through test.

This reverts commit cd3cec3e45.
2019-04-01 12:27:45 +02:00
cd3cec3e45 Use number_of_parts for is_splittable
It's there, why not use it
2019-04-01 12:09:44 +02:00
4a9e05194c Move repaired check to find_unvisited_neighbors 2019-04-01 12:09:44 +02:00
69199215b0 Fix a bunch of warnings 2019-04-01 12:09:44 +02:00
19dc89bfab Clean up and fix TriangleMesh::split and relatives 2019-04-01 12:09:44 +02:00
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
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
e3cba0a65a Introduced the "slice_closing_radius" to define, how large gaps
will be closed after triangle mesh slicing.
The value is set to 0.049 by default, which corresponds to the hard
coded default in Slic3r-1.41.3.

See issues #520 #820 #1029 #1364 for the reference of why we need
the parameter for being able to print some specific models.
2019-03-01 17:53:02 +01:00
d0553ece0e Extended tesselation wrapper for other 3d and 2d point types. 2019-02-08 09:26:48 +01:00
8982664551 Improved stability (fixed crashes) of the Cut by plane function by
replacing the cut triangulation with freeglu tesselator.
Added performance tracing output of the Cut by plane function.
Added wait cursor to split to parts / objects, object cut, save to AMF/3MF.
2019-02-05 20:23:24 +01:00
588c07c12a Performance improvements:
Lazy "Place on face" gizmo update.
Caching of MeshObject::raw_mesh_bounding_box() for the object size display.
ModelObject::bounding_box(), raw_mesh_bounding_box(), full_raw_mesh_bounding_box() will not copy the mesh.
TriangleMesh::transformed_bounding_box(const Transform3d &trafo) will not copy the mesh data.
get_options_for_bundle() will not return reference to temp value
is_splittable() calls cheap mesh.has_multiple_patches()
2019-01-26 18:51:34 +01:00
49487c16e6 Improvements of the triangulation of SLA layer preview. 2019-01-24 19:08:58 +01:00
0af11c51e3 Fixed update on reset of the variable layer height profile.
Fixed update of the layer height profile on PrintObject when changing profiles.
Fixed crash due to the layer height editing refactoring & wipe tower.
2019-01-23 14:00:03 +01:00
befccb0734 Fixed assert in mesh slicing code. 2019-01-14 19:39:45 +01:00
cf8e4fd7b0 Merged some of the late changes on slicing robustness
from the 1.41.2 (stable) to the current 1.42.0-alpha3
This should fix a number of errors reported (#1562, #1592, #1614, #1633)
2019-01-14 11:06:52 +01:00
2b9f52c33c Set a safety offset on a freshly sliced mesh to 0.0001
to satisfy GH #520, #1029, #1364
This change needs to be tested throughly on a large data set of meshes.
2018-12-12 10:29:42 +01:00
5ea8df0ca0 Manual merge of the TriangleMesh.cpp from the stable branch. 2018-12-12 10:02:01 +01:00
74ba1eaa16 WIP: Support of SLA suport & pad GLVolumes, couple of fixes. 2018-11-17 17:23:56 +01:00
7114b80882 Use Transform3d in place of Transform3f as parameter of mesh transform functions 2018-11-02 13:47:47 +01:00
bded28f888 WIP: Reconstruction of background processing. 2018-10-23 15:27:31 +02:00
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
8945763221 Rewrote .PRUSA file parser from wxWidgets zip to miniz.
Added tracing for mesh repair.
2018-09-25 14:30:57 +02:00
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