enricoturri1966
e33c34327a
Small refactoring into ClippingPlane to ensure that the normal is always a unit vector
2021-09-15 13:36:44 +02:00
Vojtech Bubnik
01451d2e63
Removed the PRUS format parser. WIP: admesh eradication:
...
stl_stats are newly only accessed by TriangleMesh::stats(),
most of the direct access to TriangleMesh::stl is gone with the exception
of parsing input files (3MF, AMF, obj).
2021-09-14 11:58:14 +02:00
Vojtech Bubnik
aae7e5f2a7
Fix of paint on supports don't work for object that has been scaled up #6718
...
The triangle-ray intersection function used a hard coded epsilon,
which did not work for triangle meshes, that were either too small
or too large. Newly the epsilon may be provided to the AABBTreeIndirect
search functions externally and IndexedMesh calculates a suitable
epsilon on demand from an average triangle mesh edge length.
2021-08-27 21:04:18 +02:00
Lukas Matena
8e009350b8
Painting gizmos and sinking objects:
...
1. Do not show what's below the bed when a gizmo is open
2. Triangulate the cut so people don't see inside
3. If regular clipping plane is used, the cuts are mutually clipped by one another
4. Painting itself ignores the hidden part of the object
2021-08-09 10:47:51 +02:00
Vojtech Bubnik
39e17fd6b9
TriangleMeshSlicer: Got rid of admesh!
2021-05-18 15:05:30 +02:00
Vojtech Bubnik
499d8405e9
WIP: Reworked slicing
...
1) Slicing code moved to TriangleMeshSlicer.cpp,hpp from TriangleMesh.cpp,hpp
2) Refactored to use as little as possible of admesh.
2021-05-17 20:25:59 +02:00
tamasmeszaros
ca81fdfa0d
Fix Gizmo preview with hollowed mesh
2021-03-08 17:38:10 +01:00
tamasmeszaros
6a9eccf673
Rename EigenMesh3D to IndexedMesh and SupportConfig to SupportTreeConfig
2020-08-03 19:05:30 +02:00
Lukas Matena
27b3d906da
EigenMesh3D does not store a copy of the mesh
...
Instead, it stores a pointer to extern TriangleMesh (which must not be destroyed before the EigenMesh3D object)
2020-05-27 00:51:11 +02:00
Lukas Matena
7eab7f416c
Removed immediate OpenGL mode calls for clipping plane rendering
2020-05-21 10:25:31 +02:00
Lukas Matena
82cedcd870
FDM supports gizmo: caching triangle normals in order to increase performance
2020-05-18 16:08:21 +02:00
Lukas Matena
350e50bcff
WIP: FDM supports gizmo now works with multiple part objects into some extent
2020-03-19 11:15:17 +01:00
Lukas Matena
744927413b
WIP: Added a circle cursor and naive logic to select triangles inside
...
Deselection is possible when holding shift
Triangles obscured by the mesh are selected nonetheless (so far)
2020-03-19 11:15:17 +01:00
Lukas Matena
1ef8886391
WIP: First working implementation of the triangle selector for the FDM support gizmo
2020-03-19 11:15:17 +01:00
Lukas Matena
a69f1912b2
Removed an obsolete variable from MeshRaycaster
2019-12-12 13:19:16 +01:00
Lukas Matena
11feb259a3
Merge branch 'master' into lm_tm_hollowing
2019-12-12 11:37:33 +01:00
Lukas Matena
c153c16808
Added comments in MeshUtils.hpp
...
PIMPL in MeshRaycaster now uses std::unique_ptr instead of raw pointer
2019-12-10 09:53:34 +01:00
tamasmeszaros
0cf10c144c
Holes are now visible on slices in preview.
2019-11-13 15:55:37 +01:00
tamasmeszaros
10f2d23ff6
Merge branch 'tm_openvdb_integration' into lm_tm_hollowing
...
* Refactor file names in SLA dir
2019-11-11 12:55:22 +01:00
Lukas Matena
14bd37048b
Unified igl calls in MeshRaycaster and EigenMesh3D
...
MeshRaycaster is still aware of the clipping plane but it now uses EigenMesh3D internally
Public interface of both classes is unchanged
2019-11-08 20:18:14 +01:00
Lukas Matena
b9e86d21ec
MeshUtils.cpp: MeshRaycaster is now aware of the clipping plane
2019-09-24 12:58:12 +02:00
Enrico Turri
ff9bdaa9fe
Fixed typo
2019-09-17 15:48:39 +02:00
Lukas Matena
f8139337fd
SLA gizmo no more uses IGL code directly, all was moved to the new MeshRaycaster class
2019-09-17 14:57:57 +02:00
Lukas Matena
9520a432fd
MeshRaycaster class is now used in SLA gizmo when selecting by rectangle
2019-09-17 14:57:54 +02:00
Lukas Matena
e0b41068ae
Added functions get_hit_pos, get_hit_normal, ready to implement intersect_ray
2019-09-17 14:57:49 +02:00
Lukas Matena
9776224b06
Unproject on mesh in the SLA gizmo is now performed by the MeshRaycaster class
2019-09-17 14:57:45 +02:00
Lukas Matena
44a4110bd8
Renamed MeshClipper.cpp/.hpp to MeshUtils.cpp/.hpp
...
More helper classes like the MeshClipper could live here
Moved ClippingPlane class in here to start
2019-09-13 12:03:53 +02:00