meshmash / Plankton

A C# half-edge mesh data structure, and components for using this in Grasshopper/Rhino
http://meshmash.github.io/Plankton
GNU Lesser General Public License v3.0
216 stars 66 forks source link

Grasshopper Param #6

Closed pearswj closed 10 years ago

pearswj commented 10 years ago

Some stuff I did at the weekend...

I basically just copied the data type and param implementation from Turtle. We need to decide whether this is okay to do and if so how to properly acknowledge the work done by Giulio Piacentino.

Note that I didn't make a "proxy" for Plankton, because I don't know what it is or why you need one!

Also, serialisation isn't implemented yet. Turtle handles the internalisation of ngon meshes just fine, so it's not something worth worrying about yet.

Anyway... the upshot of this is that Plankton's mesh feels much more native. It can exist as a floating parameter (new icon needed) and can automatically cast from a Rhino mesh. For instance, try plugging a Rhino mesh directly into the "DecomposePlankton" component.

pearswj commented 10 years ago

We should really pull this stuff in. I'll try to find some time to review it.

On a related note, @johnHarding and I were playing with meshes before Christmas and we found it much more satisfying to preview each face as a planar surface, revealing the mesh's faceted nature, than to view the native (smoothed) preview mesh. Could we do this for smaller meshes and revert to using Rhino's mesh to preview larger meshes (which might otherwise slow things down)?

Dan-Piker commented 10 years ago

I agree that the smoothed preview mesh is often not the best when you want to see the topology, though previewing the edges in a different colour helps a lot. Mesh.Unweld(0, true) also seems to work well.

pearswj commented 10 years ago

@harrilewis was after a copy constructor for Plankton, which got me thinking about this stuff again. I'm going to rebase this branch onto master and re-submit.