I managed to create a definition that emulates the marching cube process. I'd thank David for the pointer, but by the time he comes back this thread will be deeply buried (hopefully). I tried to do it completely out of gh components, but I ended up inevitably with a scripting component (but with very little code). Note that it's very inefficient to do this sort of thing using only components so it's really slow. It should be able to recreate any type isosurface. The method i used is very simple but very limited, for example: there's no smooth shading of the mesh and there are some special cases that are not checked for (not to mention the speed). Example image (low detail): http://grasshopper3d.googlegroups.com/web/marchingcubes.jpg Definition: http://grasshopper3d.googlegroups.com/web/marchingcubes.ghx
If someone has any idea how to make it faster (besides scripting it completely) please tell. On Dec 2, 3:36 pm, David Rutten <[EMAIL PROTECTED]> wrote: > No, I don't think Delaunay is a good approach for this. This shape > requires a true 3D algorithm. Actually, the shape looks like it might > be the result of a Marching Cube process, and as always, it's usually > much easier to find good algorithms for very strict shapes than for > generic ones. With such a high degree of symmetry, I suppose a custom > solution would give you a better result that you could possibly > achieve otherwise. > > -- > David Rutten > Robert McNeel & Associates > > On Dec 2, 4:23 pm, visose <[EMAIL PROTECTED]> wrote: > > > What would be the best approach to create the skin for this > > shape?:http://grasshopper3d.googlegroups.com/web/schwartz2.jpg > > Discussed in this > > thread:http://groups.google.com/group/grasshopper3d/browse_thread/thread/fde... > > This skin in the screenshot is done by creating panels over several > > point grids (and culling the unwanted panels). You can't create this > > object by a continuous surface (i think). The problem is that with > > this method some panels overlap. The superposed point grids create an > > unordered point cloud that could be triangulated. > > > I was thinking that maybe if the delaunay triangulation had a distance > > threshold, and the points where close enough on the imaginary surface, > > it would only triangulate on the right spots and wouldn't create > > triangulations all over the place (well, maybe on edges but the > > curvature is continuous in this example). In this case, i don't think > > there's a useful guide geometry. > > > On Dec 2, 2:47 pm, David Rutten <[EMAIL PROTECTED]> wrote: > > > > Delaunay is pretty easy, but it's a 2D algorithm so there's always > > > some extra stuff that needs doing when using it in a 3D environment. > > > This is why the PoistSetReconstruction plugin uses Guide geometry, to > > > convert a 3D point cloud into a 2.5D point cloud. > > > > Once Delaunay is finished, it's quite easy to bolt a 2D voronoi cell > > > solver on top. 3D voronoi is much harder to do efficiently. It's not > > > as easy to discard certain points, which means you end up doing a lot > > > of unnecessary solid boolean operations slowing the whole thing > > > down... > > > > -- > > > David Rutten > > > Robert McNeel & Associates > > > > On Dec 2, 2:29 pm, visose <[EMAIL PROTECTED]> wrote: > > > > > Very nice. I also used voronoi a couple years ago as one of the > > > > parameters of urban planning for a school project. The realtime > > > > manipulation of grasshopper would've come really handy. Is the > > > > delaunay algorithm much harder to implement? I'd like to use it to > > > > mesh some unordered point clouds. > > > > > On Dec 2, 8:29 am, Dimitrie <[EMAIL PROTECTED]> wrote: > > > > > > hello oompa, > > > > > as i was also needing some sort of space-partitioning algorithm for an > > > > > urbanism project tomorrow, i tried and managed to pull up a > > > > > grasshopper voronoi node, based on david's algorithm > > > > > you can check it out > > > > > herehttp://dimitrie.wordpress.com/2008/12/01/grasshopper-voronoi-diagram/ > > > > > > On Nov 25, 7:44 pm, oompa_l <[EMAIL PROTECTED]> wrote: > > > > > > > is this possible with grasshopper yet? maybe it always has been...if > > > > > > anyone has any clues on this, I could use it right now... > > > > > > > thanks! --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Grasshopper" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/grasshopper3d?hl=en -~----------~----~----~----~------~----~------~--~---
