Comments (2)
Thanks for querying. This was a long time todo, and did not have much interest in implementing handling for that case. Pushed in an implementation for this now in the above commit, and added a test for the planar case. I have not visualized this kind of scenario extensively in practice, so not sure how numerically float robust the implementation is - there may be some corner cases.
Basically the implementation detects if the input point set is planar so that either 3D convex hull computation fails, or the OBB computation fails, and then the common plane of the whole input point set is detected, and the point set projected flat to that common 2D plane, and a resulting OBB is constructed in that orientation. If you have point sets for which the computation fails badly, try building a test case with the tricky point set included (see the above commit for an example).
from mathgeolib.
Thank you!
Should I find a case where it's not behaving as expected, I will open an issue about it.
Best Regards
from mathgeolib.
Related Issues (20)
- Documentation Website is not working(?) HOT 3
- Triangle - AABB Intersection bug? HOT 2
- When will the new version be released? HOT 1
- aabb capsule intersection bug HOT 4
- bug:aabb capsule intersection, gjk.cpp wrong assert,wrong calculation result HOT 3
- KdTree not working with a single item/multiple items that cannot be split HOT 2
- Unexpected results with Polyhedron::Triangulate() HOT 2
- Forward-declared float2x2 & float2x3 do not exist HOT 2
- Set3x3PartRotateEulerYZX and ExtractEulerYZX need to modify in Matrix.inl HOT 2
- Missing Feature in Quadtree? HOT 2
- support multiplication of two float3 operands HOT 2
- How to build the lib with visual studio 2017 HOT 3
- Does not compile with /std:c++20 in msvc HOT 1
- Polyhedron against plane split
- float3::ProjectTo assumes that given direction is normalized
- math::Sphere::OptimalEnclosingSphere() breaks down for torus with sufficient detail HOT 6
- Including Triangle2D.h and Triangle.h in the same file can't work because of TRIANGLE
- struct hash_edge should be defined outside of OBB.cpp and Polyhedron.cpp
- Building using msys2 clang64 environment
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mathgeolib.