Plankton

Plankton is a free and open library implementing the half-edge data structure for polygon meshes.

This way of storing the mesh connectivity information allows easier adjacency queries and supports mesh faces with any number of sides (Ngons), not just quads and triangles.

The plankton library is intended primarily to be referenced and used from scripts, but  basic GH components for conversion and topology extraction are provided, and more may be added at a future date.

Plankton is still very much a work in progress. This is a first release, and methods/features will change in future versions.

Currently most of the methods relate to extracting topology information from existing meshes, and converting between Rhino meshes and Plankton meshes, but the intent is to over time add more ways of actually modifying and building meshes.

Please share your thoughts and ideas in the forum...

download the latest release here:

https://github.com/meshmash/Plankton/releases/latest

This library is distributed under the terms of the GNU Lesser General Public License (LGPL).

(The source is available on GitHub here)

Copyright 2013 Daniel Piker and Will Pearson

For more on half-edges, see:

http://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml

http://openmesh.org/Documentation/OpenMesh-2.0-Documentation/mesh_hds.html

http://www.graphics.rwth-aachen.de/media/papers/directed.pdf

Thanks to the people I have had many conversations about meshes with over the last few years that have really helped inspire and inform this work: including: Daniel Hambleton, John Harding, Kristoffer Josefsson, Harri Lewis, Giulio Piacentino, and especially Dave Stasiuk, who also shared code that helped get this working.

  • Cytoskeleton

    Following on from the images I posted recently (here),I am now making available the source script for Cytoskeleton.First, to explain the name:In 1903 Nikolai K Koltsov  proposed that the shape of cells was determined by a…

    By Daniel Piker

    27
  • Target valency remeshing

    Hi,I’m using mesh machine to have a good triangulation of my mesh but I was wondering if I can set target valency for my edges in order to control triangulation. I want to have a triangulation where on specific edges the target valency is 3 and 5 while on other edges it should be 4. I took as…

    By Contestables

    0
  • Dynamic remeshing script with Plankton and Kangaroo

    Here are some demo's of remeshing with Plankton combined with some relaxation functions from Kangaroo.(Similar to what I described here: http://www.grasshopper3d.com/profiles/blogs/meshmash-dynamic-remeshing)The…

    By Daniel Piker

    90
  • Internal data structure

    Plankton 0.4.2. If I take any simple mesh object generated in grasshopper and convert it with the PMesh module, then try running the following python code, I get:for v in range(pm.Vertices.Count):    print (v, pm.Halfedges[pm.Vertices[v].OutgoingHalfedge].StartVertex)(0, 0)(1, 1)(2, 2)(3, 3)(4,…

    By Cory

    5
  • cytoskeleton problem

    By ilyas ekinci

    1
  • Runaway face circulator

    Dear Daniel, dear Will,I have messing arround with your plankton mesh, and it is create when you get to know it. I have implemented most of the conway polyhedron notation using your Mesh. As I don't want to stick to platonic solids I have started to test it on n-gon meshes as a bases, however I…

    By Richard Schaffranek

    0
  • Face Center

    Hi all,I have started implementing Conway polyhydron notation in Grasshopper and wanted to use plankton.Is there any way to compute face centers with plankton -> c#?If not consider it as a feature request...BestRichard

    By Richard Schaffranek

    4
  • Principle of the remesh_planton_circles.gh script.

    A while ago I found the remesh_planton_circles.gh script by Daniel Piker. I find this script really interesting as I am using it for my graduation and I am trying to figure out the logic behind it, which proves to be rather difficult because I have no experience with scripting whatsoever. What I…

    By Denise Jonker

    2
  • Error in Cytoskeleton Example files from the 2014 discussion

    By AS Abi

    1
  • Installation error

    i hav downloaded the latest version of plankton v 0.3.0 . i have four filesplankton.dllplankton.ghaplanktondemo0.3.0.ghplanktonturtledemo.ghxi have to copy the .dll and .gha into the libraries folder..is that enough for me to start working on example files ?!?can somebody pls tell stepwise…

    By raja

    10