Grasshopper

algorithmic modeling for Rhino

Hi all, 

       I am a python user(beginner) trying to understand meshes and meshing algorithms like Marching cubes, Ball Pivot and Marching tetrahedra. I saw basic example provided with rhinoscriptsyntax, It was hard to imagine how hard it was to make mesh faces assigned from points. One way i could think of not Reinventing the wheel was to call mesh from points commands in python . I needs some direction to head towards creating meshes in rhino

      I was suggested Libraries but i not smart enough to figure out how to or where to use them exactly. 

Views: 8167

Replies to This Discussion

previous M.C strategy in ghI have an idea of orienting a geometry (multifaceted) to points , remove unused faces and use a relaxing algorithm.

And for some corners where resolution is required This strategy can be used

Dear Srinivasa Ramanujan:

I wanted to just Boolean union balls, but Rhino took forever, and Booleans like that always fail anyway due to mere kissing points instead of real clearly defined cutting curve intersections between adjacent surfaces and besides would oddly leave both inner and outer surfaces as a final result.

I'll look up the red thing in the morning, to see what you are up to.

Try This approach its incredibly fast. it would have been nice if the voxels were central oriented.

These aren't voxels, only surface blobs, hereby called "surfoxels."

Ah, there is an actual Voxels component in Mesh that makes a regular grid of cubes and then deletes internal faces, but not all internal faces if you don't start with fully filling 3d space with points so air is left inside.

I don't know how to quickly populate breps with points in their volume instead of just surface. Using bounding box arrays of 3D points requires a very slow culling of which points are outside the breps. Way too slow, like 2 minutes for a simple NURBS sphere overlapping a torus:

I've been looking a long time for a more robust way to do even crude Boolean unions of NURBS solids that so often fail due to kissing surfaces that lack well defined overlap curves for the automated cutting and joining algorithm involved.

Attachments:

The best plain English description I've found so far of how marching cubes works is here:

http://http.developer.nvidia.com/GPUGems3/gpugems3_ch01.html

It tests each case of a polygonal face subdivided cube for best fit locally to the local points near it, which case minimizes a number gotten by assigning a value to each vertex based on solving the XYZ equation for that point in space. Something like that.

Here's where I source all of my implementations for marching cubes/tetrahedra. Paul Bourke's website is a goldmine:

http://paulbourke.net/geometry/polygonise/

This is fun, marching cubes all with Grasshopper components with no scripting:

http://www.grasshopper3d.com/forum/topics/marching-cubes-in-grassho...

One more approach in gh forum.

Delaunay edges

Will it work for the Boolean union of a sphere and a torus? The simple case wasn't well behaved, and bridges wildly between remote features.

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service