3D shape approximation

조회 수: 3 (최근 30일)
bob
bob 2011년 6월 3일
답변: John D'Errico 2020년 10월 7일
Hey guys, Is there any way to approximate irregular shapes with overlapping spheres in Matlab? The shapes are for sand particles and are to be converted to assembly of overlapping spheres.
  댓글 수: 1
Sean de Wolski
Sean de Wolski 2011년 6월 3일
The sphere defined by the equivalent radius of the volume of irregular shape?

댓글을 달려면 로그인하십시오.

답변 (1개)

John D'Errico
John D'Errico 2020년 10월 7일
An old question, answered here only to explain some aspects of the problem.
It sounds as if you have an arbitrary shaped object, probably not convex, and you want to know if there exists some pre-written code to approximate some general shape by a set of overlapping spheres. The answer here is simple: absolutely not. Solving that problem would in general be a rather nasty optimization problem, made more difficult if you have no clue how many spheres would be used. Clearly, the more spheres, the better would be your approximation. And there is no good reason for someone to have written such a code to be part of MATLAB, as it would be difficult to write and use. The interface issues would be something I would not wish to touch.
Is it possible you might find something on the file exchange? Possibly, but you would surely need to adapt it to your specific purposes and probably rewrite it in the end.
My point is, in order to solve such a problem, there are often many ways to do so. A complex of partially overlapping spheres could be one way, but why? Instead, learn to use the massive body of code in existence to work with computational geometry problems, much of it in the form of tools to work with triangulations and tessellations in multiple dimensions. You might start with tools like a Delaunay tessellation or a convex hull. To the extent that your particles can be represented as convex objects, these tools will work splendidly well. Beyond that, there are tools like alpha shapes and more. Non-convex tessellations are not that difficult to work with, and they can arguably solve any problem you could have solved using spheres.

카테고리

Help CenterFile Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by