c073749ee1
admesh refactoring: separation of the shared vertices / indices
...
into an indexed_triangle_set structure
2019-06-10 18:30:54 +02:00
068263a62d
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
362c229a5c
Refactored admesh to get rid of the error and fp members of stl_file.
2019-06-10 17:17:36 +02:00
e934e5550a
Fix of the previous refactoring.
2019-06-10 11:04:09 +02:00
bbcb22248d
Merge remote-tracking branch 'remotes/origin/master' into vb_admesh_fix
2019-06-06 21:01:19 +02:00
bab4611ee7
Future-proof qhull dependency handling
2019-06-05 19:19:49 +02:00
0e26eb0aeb
WIP: Admesh - replacement of C memory allocation with std vectors
2019-06-04 22:06:42 +02:00
3ebd5d94f6
Fix of mesh decimation (the admesh library).
...
Fixes "Unable to save project (#2445 )"
2019-06-04 18:25:53 +02:00
298ab4df7f
Use generic qhull include location
...
Currently the qhull includes are referenced absolutely, but the compiler
is always called with the src directory in the include path and so it
should be safe to specify a more generic path.
2019-05-22 10:29:54 +02:00
7715725991
Merge branch 'master' into vb_wold_object_manipulation
2019-05-04 20:59:57 +02:00
0871ca2662
Fixed make_cylinder() / make_sphere() functions to produce meshes
...
without errors.
2019-05-04 14:03:50 +02:00
b0830d062b
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
13ee8c3bd5
TriangleMeshSlicer is now initialized by const-pointer to the mesh, responsibility for calling require_shared_vertices is left to the caller
2019-04-16 09:04:04 +02:00
8ad52f0461
Vojtech's improvements in the SLA preview cutting dialog.
2019-04-11 15:44:32 +02:00
579b44c479
The gizmo is now able to triangulate and show the cut, the triangulated cut is cached
2019-04-08 10:31:19 +02:00
85a6ac60de
Follow-up of 763a91e2ca -> take in account of ModelObject::origin_translation when saving parts and modifiers to stl
2019-04-05 10:08:34 +02:00
380f5fbfa5
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
93798b9a5e
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
358ea1b1db
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
ab03a61901
Use number_of_parts for is_splittable
...
It's there, why not use it
2019-04-01 12:09:44 +02:00
7ee4009ef4
Move repaired check to find_unvisited_neighbors
2019-04-01 12:09:44 +02:00
e16ccd9a3b
Fix a bunch of warnings
2019-04-01 12:09:44 +02:00
99c72bd4af
Clean up and fix TriangleMesh::split and relatives
2019-04-01 12:09:44 +02:00
322d2a1fab
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
4faf41fc33
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
c4aa0f7f36
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
469d12f9cf
Extended tesselation wrapper for other 3d and 2d point types.
2019-02-08 09:26:48 +01:00
44487a1841
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
e5c201f2a3
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
9341ac5584
Improvements of the triangulation of SLA layer preview.
2019-01-24 19:08:58 +01:00
bd4108cd5c
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
c28f44ea1f
Fixed assert in mesh slicing code.
2019-01-14 19:39:45 +01:00
0f942b5dc0
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
6506626d69
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
ecf1e57e68
Manual merge of the TriangleMesh.cpp from the stable branch.
2018-12-12 10:02:01 +01:00
1d82cca0d2
WIP: Support of SLA suport & pad GLVolumes, couple of fixes.
2018-11-17 17:23:56 +01:00
0e241917ec
Use Transform3d in place of Transform3f as parameter of mesh transform functions
2018-11-02 13:47:47 +01:00
31b482c605
WIP: Reconstruction of background processing.
2018-10-23 15:27:31 +02:00
14b0d2d40c
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
8eabbb4428
Rewrote .PRUSA file parser from wxWidgets zip to miniz.
...
Added tracing for mesh repair.
2018-09-25 14:30:57 +02:00
1260b8deb3
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