. a collection of codes & grammars for Grasshopper, a generative modeling tool for Rhinoceros.
ASCII art generator
This definition uses any image to create a AASCII art picture.
ASCII art generator_090014.zip < package ( for GH v.0.9.0014)
Recursive subdivision
Recursively subdivide a surface in order to minimize panel curvature (tested by keeping the distance between the centroid of the subsurface and its projection on the subsurface itself below a given threshold). Uses a C# custom component. It will all be a lot clearer if you give it a try.
GH recursive subdiv_090014.zip < package ( for GH v.0.9.0014)
Tangent threshold
This code samples one or more curves and, for each sample point, gives the points in both directions whose tangents form a given angle with the tangent of the given point. In narrow curvature zones the two given points will tend to be close to the original one, while in straighter zones they will spread farther. Uses a C# custom component.
GH_tangent threshold_090014.zip < package ( for GH v.0.9.0014)
Koch Snowflake [Hoopsnake]
This code creates a Koch Snowflake 2D fractal using the Hoopsnake component
Koch Snowflake_Hoopsnake_GH090014.zip < package ( for GH v.0.9.0014)
Sierpinski Triangle [Hoopsnake]
This code creates a Sierpinski Triangle 2D fractal using the Hoopsnake component
Sierpinski Triangle Hoopsnake_GH090014.zip < package ( for GH v.0.9.0014)
Gradient Descent Algorithm
![]()
This code creates a Gradient Descent algorithm on a surface generated by an image sampler logic. There’re two type of the algorithm: normal and rotated. The package includes a GH definition, the Rhino 3d file and a map used for the image sampler component.
N.B.Original VBnet code by Woo Jae Sung.
Gradient Descent Algorithm.rar < package ( for GH v.0.9.0014)
GH to Maya
This tutorial package includes a GH definition with a method to preserve mesh vertices colors after welding and explains a pipeline to render vertex-color meshes in Mental Ray in Maya. Included are: GH definition (v 0.9.0014), Rhino 4.0 file, .fbx mesh sample, .mb file with finished result
GH to Maya package < the full package (for GH v. 0.9.0014)
GH to Blender
![]()
This tutorial package includes a GH definition with a method to preserve mesh vertices colors after welding and explains a pipeline to render vertex-color meshes in Blender with Cycles. Included are: GH definition (v 0.8.0060), Rhino 4.0 file, VRML mesh sample, Blender file with finished result
GH to Blender package < the full package (for GH v. 0.8.0066 + GH v. 0.9.0006)
Voxelizator
A definition that draws custom size cubic voxels onto a surface or polysurface.
Voxelizator_Co-de-iT_GH080066.zip < Grasshopper definition (for GH v. 0.8.0066)
Voxelizator_Co-de-iT_3dm.zip < 3dm Rhinoceros file
Ribs Structure
![]()
This definition creates from a given Nurbs surface a Ribs structure and all pieces unrolled.
RibsStucture_Co-de-iT_GH080066 < Grasshopper definition (for GH v.0.8.0066)
Strip fabrication
![]()
Fabrication of single-curvature striped surfaces. A study based on the Strip Morphologies technique by ©StudioMODE
Strip morphologies_Co-de-iT_GH080066 < Grasshopper definition (for GH v0.8.0066)
Seamless Pattern
![]()
. A simple GH definition that mimics the Escher patterns process.
Seamless pattern_Co-de-iT_GH080066.zip < Grasshopper definition (for GH v0.8.0066)
DiY Architectural Dialogue machine.

. insprired by this post – http://allisonarchitecture.tumblr.com/post/5613643435
i did a GH def to sort random strings from several lists of data in order
to do an architectural dialogue machine.
DiY Arch Dialogue.zip < Grasshopper definition (for GH v0.8.0010)
Blender2GH.
![]()
a simple GH definition to import a Blender3D geometry using the export .PLY file format
Blender2GH_blender.zip < Blender3D file (for Blender3D 2.57b)
Blender2GH_PLY.zip < export .PLY file
Blender2GH_GH_def.zip < Grasshopper definition (for GH v0.8.0010)
Blender2GH_tutorial.zip < Tutorial (PDF file)
Hexachaos.
![]()
Random hexagonal based pattern generator
Hexachaos_Co-de-iT_GH080010.zip < Grasshopper definition (for GH v0.8.0010)
Uneven Subdivision.
![]()
Uneven subdivision of a NURBS surface, controlled by random intervals.
Uneven Subdivision_Co-de-iT_GH08004.zip < Grasshopper definition (for GH v0.8.0004)
Complete Diagrid.
![]()
Diagrid definition that covers the whole surface, up to the edges.
Complete Diagrid_Co-de-iT_GH06059.zip < Grasshopper definition (for GH v06.0059)
Phyllotaxis growth.
![]()
Phyllotaxis variation working on variables with a few changes of the values “i” in the math formula of spiral: x= cos(i), y=sin(i), z=i
phyllotaxis growth_Co-de-iT_GH06057.rar < Grasshopper definition (for GH v06.0057)
Phyllotaxis.
![]()
Phyllotaxis 2D pattern.
phyllotaxis_Co-de-iT_GH06057.rar < Grasshopper definition (for GH v06.0057)
Curvature analysis pattern.
![]()
This definition subdivides a surface into a quadrangular panels, plots a circle or a closed spline(similar to an ellipse) with center in the centroid of each panels, scale the radius dimension trough a numeric values extrapolated from the curvature analisys of the input surface.
curvature analysis pattern_Co-de-iT_GH06057.rar < Grasshopper definition (for GH v06.0057)
Attractors vector deformation.
![]()
The complex structure of radiolaria was treated as a two-dimensional representation with a hexagonal pattern. Two points control the deformation of individual cells that make structure through a transformation of vectors connecting the vertices of the single cell with the point. The deformation of the grid can be caused by an attraction or a repulsion generated by attractor points.
attractors vector deformation_Co-de-iT_GH0657.rar < Grasshopper definition (for GH v06.0057)
Image field04.
![]()
Investigation on the potentiality of numerical field generated by a source image. The height of one ellipse control point is linked with grayscale value of the image generating parametric variations in the starting flatten pattern.
IMAGE FIELD04_Co-de-iT_GH06057.rar < Grasshopper definition (for GH v06.0057)
Pie chart.
![]()
A definition that draws a percentage pie chart from a list of values (random values are used here but you can plug any list of values including external data).
Pie chart_Co-de-iT_GH06059.zip < Grasshopper definition (for GH v06.0059)
Panels dispatch
![]()
This definition allows you to tessellate a surface with two different panel types dispatched through random sorting.
Panels dispatch_Co-de-iT_GH06019.zip < Grasshopper definition (for GH v06.0019)
Panels dispatch_Co-de-iT_3dm.zip < 3dm Rhinoceros file
Quad 2 diagrid
![]()
This definition allows you to tessellate a surface and smoothly transform the tessellation from a quadrangular to a diagrid pattern.
Quad 2 diagrid_Co-de-iT_GH06019.zip < Grasshopper definition (for GH v06.0019)
Quad 2 diagrid_Co-de-iT_3dm.zip < 3dm Rhinoceros file
Hexagonal field
![]()
A magnetic field applyed to an hexagonal grid ruled by 4 points that can be switched (attractors or repulsors).
Hexagonal field_Co-de-iT_GH06019.zip < Grasshopper definition (for GH v06.0019)
Hexagonal field_Co-de-iT_3dm.zip < 3dm Rhinoceros file
Tatami-Cairo-Diagrid tessellation
![]()
This definition allows you to tessellate a surface going smoothly from tatami tessellation to diagrid through Cairo tessellation.
T-C-D_Co-de-iT_GH06019.zip < Grasshopper definition (for GH v06.0019)
Curve driver
![]()
This definition allows you to control geometry properties (curvature radius) through a control curve.
Curve driver_Co-de-iT_GH06019.zip < Grasshopper definition (for GH v06.0019)
Curve driver_Co-de-iT_3dm.zip < 3dm Rhinoceros file











