Marching Cubes

While trying to solve a problem of a geometry of a 3 Dimensional shape, i was confronted by a kind of complex problem, never faced before, and it required a new kind of solutions, using mathematics and computation’s iterative processes at the same time. a problem appear when you try to find te exterior shell of an irregular shape defined by randomly placed points on te 3d space. usually its easy to triangulate the solution using lines, or easier approach by turning around the problem; using the meta-balls algorithms, but is not accurate enough. what I want is the exact face connecting adjacent or proximate points. facing the exterior of the point collection or cloud.

I started looking around for solutions works within my environment; Grasshopper in Rhino. by David Rutten, many solutions was found, some solutions were addressing the issue in 2 Dimensional plane. which known as the convex hull  algorithm. some solutions refer the problem as shortest walk growth algorithm, the best i found is close to the voxels algorithms used to pixilate the volume of the cloud in MRI and medical imaging. the solution which called marching cubes, Developed by Lorensen and Cline. the approach uses the scalar field of the volume to extract the iso-surface, by calculating the approximate polygonal face of a pre-measured matrix cube.

I started my experiment looking for a tool or hints to use. the interesting part i found was developed by David Stasiuk, its called Cocoon, the algorithm/plugin allowed me to use the marching cubes within my modeling environment. it allow for charging different geometrical tectonics as meshing tool. i was able to use either points, curves or B-reps(surfaces) or all together at the same time. it allow me to use them as constructors(1+) or de-constructors(-1). and more interestingly, gave me a chance for refining the results. I started the experiment by creating a cloud of points charging them as close as meta-balls, and the results was astonishing. the neat geometry was extracted as magic. completely closed, wrapping the whole field of interest. then I tested different stuff, such like lines and NURB curves, all giving similar results.

it more than enough for this stage, but i am looking forward to be able to use it in other applied experiments.





Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s