yuehaowang / convex_hull_3d Goto Github PK
View Code? Open in Web Editor NEWIncremental Convex Hull Algorithm and SAT Collision Detection for 3D Objects.
Incremental Convex Hull Algorithm and SAT Collision Detection for 3D Objects.
What about concave hulls? For our application, we do prefer the collision is detected between two TIGHT 3D meshes, rather than the CONVEX HULL of two 3D objects.
I mean: if you can do two CONCAVE HULLs ?
Any suggestions?
Which version of open3d do you support?
0.14.1 ?
or 0.15.1?
It looks in function _incremental of file https://github.com/yuehaowang/convex_hull_3d/blob/master/convex_hull.py, there is a bug around is_visible = vol < 0
??
✗ python convex_hull.py --file ....../MySTL.STL --vis
Loaded mesh file ....../MySTL.STL
#vertices: 1788
#faces: 1184
Is edge manifold: True
Is self-intersecting: True
Is watertight: False
Computing convex hull...
WARNING: coplanar tetrahedron (2-3-4-1)
WARNING: coplanar tetrahedron (1-3-4-2)
WARNING: coplanar tetrahedron (1-2-4-3)
WARNING: coplanar tetrahedron (1-2-3-4)
0%| | 0/1783 [00:00<?, ?it/s]WARNING: edge(3-165): non-manifold edge
WARNING: edge(2-165): non-manifold edge
WARNING: edge(3-165): non-manifold edge
WARNING: edge(2-165): non-manifold edge
WARNING: edge(3-165): non-manifold edge
WARNING: edge(2-165): non-manifold edge
WARNING: edge(3-165): non-manifold edge
WARNING: edge(2-165): non-manifold edge
11%|█████████████████▍ | 191/1783 [00:00<00:00, 20605.26it/s]
Traceback (most recent call last):
File "....../convex_hull_3d/convex_hull.py", line 193, in <module>
convhull = ConvexHull3D(np.asarray(mesh.vertices), show_progress=True)
File "....../convex_hull_3d/convex_hull.py", line 42, in __init__
self._incremental()
File "....../convex_hull_3d/convex_hull.py", line 120, in _incremental
elif visible_ls[edge.adj_faces[0]] or visible_ls[edge.adj_faces[1]]:
KeyError: '3-157-165'
If I wanna know, where exactly in the world coordinates that two objects collide? How to provide/return that particular points' coordinates????
I'm testing this file:
astronaut.stl at https://www.thingiverse.com/thing:5423136/files .
It's NEVER finish loading:
python convex_hull.py --file ......astronaut.stl --vis
Loaded mesh file ......astronaut.stl
#vertices: 1971995
#faces: 678510
Is edge manifold: True
^C^C^Z
``
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.