# 8.1. Zusammenarbeit mit anderen Grasshopper-Komponenten

### Plug-ins:

Human

💡
https://www.food4rhino.com/en/app/human

What does it do?

There are two sets of components with different functions:

Human.gha

Extends Grasshopper's ability to create and reference geometry
including lights, blocks, and text objects. Also enables access to
information about the active Rhino document, pertaining to materials,
layers, linetypes, and other settings.

Includes the following components:

(Those in bold are new components with this release.)

- Object Creation
  - Bake Geometry with Attributes
  - Create Hatches
  - Create Justified 3d Text
  - Create Lights
  - Define Block
  - Place Blocks
  - Create Object Attributes

- Display
  - Custom Display with Variable Lineweights
  - Custom Display with Bitmap Textures
  - Render Text to Screen
  - Render Mesh to Screen
  - Render Curve to Screen
  - Render Point to Screen
  - Screen-Oriented Text
  - Screen-Oriented Mesh

- Document Information
  - Font Table
  - Material Table
  - Layer Table
  - Hatch Pattern Table
  - Linetype Table

- Document Modifications
  - Create/Modify Layers
  - Create/Modify Materials

- Miscellaneous
  - Document Units
  - Directory Contents
  - Delete Objects on Layer
  - Dynamic Item Selector

- Reference
  - Dynamic Geometry Pipeline
  - Explode Hatches
  - Explode Blocks
  - Explode Blocks Recursively
  - Get Object Attributes
  - Light Properties
  - Sort Objects by Type
  - Text Object Info
  - Get Objects by Selection
  - Get Objects by Layer

- Texture Mapping
  - Planar Mapping
  - Box Mapping
  - Spherical Mapping
  - Surface Mapping
  - Cylindrical Mapping
  - Custom Texture Mapping

TreeFrog.gha

This add-on includes a set of components to aid in the advanced manipulation of data tree structures.

Includes the following components:

- Assign Paths

- Graft by Data

- Match Paths (this is pretty much the same as GH's native "Unflatten" - but it came first so I'm leaving it in :D )

- Path Description

See the images and reference files for a detailed explanation of the function of these components.

I'd also like to acknowledge the creators of Horster Reference, the
first Grasshopper add-on to expose advanced reference functionality.
These components definitely build on the work they have done, although
they take a slightly different approach.

To install:

- In Grasshopper, choose File > Special Folders > Components
  folder. Make sure you delete all earlier versions of HDTReference.gha,
  TreeFrog.gha, and Human.gha if there are any. Save the gha file to that
  directory.

- Right-click the file > Properties > make sure there is no "blocked" text

- Restart Rhino and Grasshopper

Lunchbox
💡
https://www.food4rhino.com/en/app/lunchbox

LunchBox is a plug-in for
Grasshopper for exploring mathematical shapes, paneling, structures, and
workflow. We have also introduced new components for general machine
learning implementations such as regression analysis, clustering, and
networks. The plug-in includes tools for:

The latest release of LunchBox is built against

- Grasshopper and Rhino 7

Available components include....

- Data: Components for dataset management, XML, and JSON formats

- Machine Learning: LunchBoxML components for regression, clustering, and neural networks.

- Generate: Components for cool generative geometry.

- Math: Create parametric surfaces and forms such as the Mobius, Klein, or 3D Supershape

- Panels: Create paneling systems such as quad grids, diamonds, or triangles.

- Structure: Create wire structures such as diagrids or space trusses.

- Utility: Geometry utiltiies, sorters, R-tree searches

- Workflow: Read and write Excel files, layer management, and automate baking and saving.

I hope the tool is as helpful to you as it is to me in the design process!

To install:

- The new installer uses a 'ClickOnce' deployment method.

- Click the primary download link below and install the tool.

- Launch Rhino and Grasshopper

- An additional ZIP download with the plugins is also provided.

Requirements:

- Rhinoceros 7.0

- The latest Microsoft .NET Framework (4.5+)

- Windows (LunchBox has not been officially tested on the Mac)

Pufferfish
💡
https://www.food4rhino.com/en/app/pufferfish

This plugin is a set of 330 components which focuses
on Tweens, Blends, Morphs, Averages, Transformations, &
Interpolations - essentially Shape Changing. Pufferfish mainly uses
parameters and factors for inputs for more custom control over
operations like tweens and grids as opposed to grasshoppers usual
division count inputs. These components are accompanied by support
components which are useful methods for tween / blend / morph / lattice
operations such as making curves compatible, a custom curve graph
mapper, and a multi-threaded morph to twisted box. In addition, there
are extra components which simplify some common grasshopper operations
such as testing for equality within a tolerance and rounding to nearest
numbers. Please email me if you find any bugs. Works with Grasshopper
for Rhino 5, Rhino 6, Rhino 7, and Rhino Mac.
Make sure to read the credits below. Instagram: @ekimroyrp & @designmorphine

Join the Pufferfish Grasshopper forum group here: www.grasshopper3d.com/group/pufferfish

Credits:

I would like to make a special thanks to David Stasiuk and Mateusz Zwierzycki
for their continual support and input on the Pufferfish code and
letting me constantly bother them. Check out their plugins: Conduit,
Cocoon, Tree Sloth, Owl, Anemone, Starling, & Squid.

- David Rutten for aide in implementing his Twisted Box Library.

- Daniel Piker for his reference definition on Quaternion rotation.

- Daniel Abalde for his reference on optimized corner finding.

- Petras Vestartas for his reference on RTree mesh welding.

- Mahdiyar Esmailbeigi for his reference on mass transformations.

- Andrew Heumann for his reference definition on rectangles by area.

- Aldo Sollazzo for his reference definition on discrete variables.

I would also like to thank Pavlina Vardoulaki for introducing me to shape blending techniques in Autodesk Maya which inspired many of Pufferfish’s components.

- Michael Pryor

General notes

1. Grasshoppers native "Interpolate Data" component can "Tween" simple data types such as numbers, colors, vectors and points already.
   Pufferfish's Tweens of these types differ in 2 ways. The first being
   that Pufferfish has 3 types of tweens for each: Tween Two, Tween
   Consecutive, and Tween Through which perform the tweens in different
   ways with the input lists. The second difference is that Pufferfish uses interpolation types which match nurbs interpolation for simple data
   types. Those types are Linear, Chord, Square Root, and Uniform.
   Grasshopper's "Interpolate Data" component uses Block, Linear, Cubic,
   and Catmull. Pufferfish also adds the ability to tween Planes, Surfaces, Meshes, and Twisted Boxes as well as average them.

2. Grasshopper already has a native "Tween Curve" component however,
   it gets odd results sometimes, specifically when tweening polylines.
   Pufferfish corrects this with automatic internal polyline and curve
   compatibilization so that the results are similar to Rhino's tweens.
   Pufferfish tween curve components also have different interpolation
   types as well as optional refit and sample point methods.

3. Meshes must have the same topology to tween. Unlike surfaces,
   meshes which come from two different sources with different topologies
   are almost always impossible to rebuild (automatically) to have the same topology and point order for a meaningful looking tween. Please do not
   ask for this feature unless you can provide some information /
   documentation about how to do so. As recommended by Autodesk Maya for
   blending meshes "A common blend shape technique is to create duplicates
   of a base, deform the duplicates, then use them as targets. For example, you might make several copies of a face, and then alter the copies to
   create a smiling face, frowning face, a crying face, and so on."

4. Multi-Threaded components don't always mean it is faster,
   multi-threading speed will depend directly on how many cores your
   computer has and how good those cores are.

5. A few minor components may exist in some form elseware in
   other plugins (it's impossible to check them all). If they are in
   Pufferfish it is because I felt they are necessary to the workflow or
   that I required them to have different options and I cannot ensure the
   user has other plugins installed. For example, Pufferfish has a type of
   "Rebuild Surface" which varies from but exists also in Lunchbox and
   Peacock.