Grasshopper Docs

Community documentation for Grasshopper add-ons & plugins

Heteroptera

ADDON. Version 0.7.2.8. Released on 2022-Jan-13. Provides 167 components. Created by Amin Bahrami (Helioripple Studio). Features 2 video tutorials.
Heteroptera is a plug-in for grasshopper comprised of a variety of tools in different categories that can be used as a toolbox, but it mostly focuses on Uncertainty and Generation.
Add Frame
Capture!
Fundamental
Geometric
Geometry
Heteroptera
Maths
Network
Probability
Random
Static
Streaming
Transform
Utilities
Vectors

Vectors

Display Tensor (Field@Point)
Display Field at point
Attractor
Magnetic attractor with normalized value. It is a quick multi-type multi-attractor returning a congestive always-normal value between 0~1
Bio Attractor (Biottractor)
Advanced multi-attraction system for finding a Congestive value
Bulge
Bulge set of points by some Bulger points
Transforming Vectors are generated in 3-dimensional space by default, but you can Right click on the component and choose "Planar" mode to generate them in XY plane
Radar Vectors (Radar)
Generate circular antenna distributed vectors from input vectors
Effective Vectors (Exponential) (FXV.E)
Calculates the exponential effective attraction vectors
Effective Vectors (Gaussian) (FXV.G)
Calculates the Gaussian effective attraction vectors
Field Contour (Contour)
Create MetaBall-Like contours out of a field
Display Field
Display Field
Field Boost (FBooster)
Boost a field's tensors by another field.
Project Field (FProjector)
Project a field on a datum.
A datum can be [Plane, MetaVector, Field, Mesh, Surface]
Rotate Field (FRotate)
Rotate a field's tensors by other fields
Transform by Field (FXform)
Transform a geometry recursively through a field
Field Traveler (Traveler)
Creates the traverse path on a field from a source point
Field Wiper (FWiper)
Wipe out a field locally ba a geometric element as attractor elements.
The proximity of these geometric elements with the field’s tensors can weaken or enervate the tensors.
Curve Along Field (AlongF)
Create a field which is aligned to the tangent of a curve
Curvature Field (CurvatureF)
Create a field based on a curve's curvature'
Curve Field (CurF)
Create a curve Gaussian attractor field
Drag Field (DragF)
Create a drag field, 'Drag Field' represents the Gaussian effect of a single vector in an area with a certain distance.
Gaussian Point Field (GPF)
Create an point attractor field, with Gaussian decay within a certain distance
Noise Field (NoiseF)
Generate a Simplex-Noise Field
Double-Click in order to add the available items.
Radio Field (RadioF)
Create Radio field out of a meta-vector's' elements
Surface Curvature Field (SCF)
Create a field influenced by a surface's curvature'
Trap Field (TrapF)
Create 'Trap Field' by a Point, Curve, Plane, Surface or a mesh
Monotone Field (MonoF)
Create a simple monotone field out of a vector
Similar Vactor (Similar Vector)
Select the most similar vector from MetaVector elements.
Construct MetaVector (MetaVector)
Construct a MetaVector out of set of vector elements
Plane By Line (LinePlane)
Create a plane by a line az its axis
Transpose Plane (TransPlane)
Move a plane along its axises
Project Vector (PVector)
Project a vector on another vector(direction).

Network

Construct HyperIndex (HyperIndex)
Constructs a hyperIndex
Inter Topology (InterTopologyComponent)
Topology of connected nodes of different branches
Network From Geometry (Geo2Net)
Create a network topology from Mesh or Brep
Object Enumerator (Enumerator)
Enumerate geometric objects
Flatten InterTopo (FlattenTopo)
Breaks down inter-topology to flat topology
InterProxy Network (N-Net)
Create a Inter-Network between adjacent points from multiple sets
InterTopDraw
Draw inter-topology along curves
Unflatten Topology (Unflatten)
Create Inter-Topology from flat topology by partitioning the nodes
Match Container (MatchRegion)
Region Match with the points inside
Match Boundries
Region Match with the points proximity
MST
Creates Minimum Spanning Tree, a network which its all nodes are connected together without any cycle, with the minimum possible total edge weight.
MST By Connections Weights (MST)
Creates 'Minimum Spanning Tree' based on a pre-existed network including connection weights.
MST By Network (MST)
Creates 'Minimum Spanning Tree' based on a pre-existed network.
Network Embody (Embody)
Create Lines or Closed Polylines from topology
Reconstruct Network (ReConstNet)
Recreate Line from topology or convert different type of network topology
Region Topology (R-Topo)
Extract all region topology features
Space Syntax (SpaceSyntax)
Generate Space-Syntax out of a network
Proximity Network (Network)
Extract Proximity Network out of a list of points.
Region (Perceptive) (NetRegion)
Create Regions from network topology
Region (Topologic) (TopoRegion)
Create Regions from network topology
Network Path Finder (PathFinder)
Find the closest path in network related to the given curved
Network Editor (NetworkEditor)
Edit the topology of a network or create a network by topology
Topology Graph Display (TopoDisp)
Display a network connection topology
Rebuild Network (R-Net)
Recreate Line from topology or convert different type of network topology
Incestuous Network (Network)
Create a simple Incestuous Network between adjacent points by giving preference to closest proximity
Point Enumerator (PEnum)
Enumerate lists of points
Topologic Region (TopoRegion)
Create Regions from network topology
Network Region (NetRegion)
Create Regions from network topology
Non-incestuous Network (N-Net)
Create a Non-incestuous-Network between adjacent points

Probability

Biased Distributer (Distributer)
Distributing a set of input points to different branches
Careless Range (CRange)
Divide a domain into careless equivalent parts and return the numbers
Cheater Dice (CheaterDice)
Dice with unequal chances for items
Double-Click in order to add the available items.
Noise Oscillator (Noise)
Noise Oscillator(streaming noise)
Right Click on the component's icon to choose internal timer (with three options), or turn-off the self-engine and use a grasshopper timer instead.
Point Emitter (Emitter)
Emit a bunch of points from each source point (You can also use F5 key or Grasshopper Timer to refresh the component)
You can Right click on Point Emitter icon and use "Planar" mode to generate points in xy Plane, instead of 3dimensional space
Gaussian Random (GaussiRandom)
Generates Gaussian random numbers
Random Plane (RandomPlane)
Create a random plane on a point
Simplex Noise (SimplexNoise)
Generates a Simplex-Noise number set
Double-Click in order to add the available items.
Simplex-Noise Vectors (SimplexVector)
Generates a Simplex-Noise Vector set
Double-Click in order to add the available items.
Weighted Allocator (Chance)
Randomly Allocates Items to different branches by defining the chance of each branch. so each item tends to belong to the branch with a higher chance
Curve Emitter (C-Emitter)
Emit a bunch of point from each curve source (Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
Dice
Rolling a Dice containing possible Data, for N times and extract N random items (Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
Normally, there's a chance of having repeated data, but you can Right click on Dice icon and choose "Just Once" option to select each item just once
Double-Click in order to add the available items
Random Direction (RND Direction)
Create random unit vectors(Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
Random Position (RND POS)
Generate Random positions bounded by a rectangle, Z value Defines Maximum possible distance for positions along rectangle's normal direction
Spacial-Possibility (Possib^A)
Calculates the possibility of existing points by their adjacency to set of attractors
Spacial-Possibility (Possib^V)
Calculates the possibility of existing points by assigning a value to each point
Randomize Numbers (Randomize)
Randomize Numbers by percentage
Random Vector (RND Vector)
Create random vectors in random directions with diverse lengths in a specific domain (You can also use F5 key or Grasshopper Timer to refresh the component)
To create Random Vectors in xy plane instead of 3dimensional space, you can Right click on component's icon and choose "Planar" mode
Double-Click in order to add the available items
Random (RND)
Generates random numbers
(Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
Random numbers are generated in a range of [0 to 1] in case of using 'Normal Mode' otherwise the range would be [-1 to 1] in 'Standard' or 'Gaussian' modes
Seed Generator (Seed)
Generate a unique seed number each time it's recalled (Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
Slingshot Allocator (Slingshot)
Allocate each item of one list to random branches, it can make it by three different algorithm for distribution items
Wandering Vector (Wandering)
Generating multiple live wandering vectors
Right Click on the component's icon to choose internal timer (with three options), or turn-off the self-engine and use a grasshopper timer instead

Utilities

Allocate By Keys (Key-Allocator)
Allocate each item to a specific string for each branch
Right click on branch allocator icon and choose "Preserve Structure" if you want to maintain data's structure and just add Sub Branches to the main Branches
Allocate by Index (i-Allocator)
Allocate each item to specific index of branches
Choose "Preserve Structure" by right-click to maintain data's structure and just add Sub Branches to the main Branches
Empty Structure (O-Tree)
Create an empty tree structure out of a list of paths
Extend Path (ExtendPath)
Add an extra element at the beginning (Prepend) or end (Append) of a path
Pool Controller (GNC)
Controlling Interval ,Decimal-Number and the number of sliders in a GenePool
Double-Click in order to add the available items.
Encryption/Decryption (CodeMachine)
Encrypt and Decrypt a string with a password (key string)
Right click on component's icon to choose either "Encryption" or "Decryption" options
Dispatch / Unweave (Dispatch)
Dispatch the items in a list into multiple target lists based on a pattern of indexes
Unicode
Generating Unicode Character
Allocate By Domain (Domain-Allocator)
Allocate each item to specific branches by the position of its value within the range
Right click on branch allocator icon and choose "Preserve Structure" if you want to maintain data's structure and just add Sub Branches to the main Branches
Replace Objects (Replace)
Click on Replace Button to Replace a Rhino-object with another geometry
and aslo it's able to use double click on component in order to call Reset
Android UDP listener (Androlistener)
Android UDP Listener via 'Grasshopper Controller :
https://play
Ovulate
Bake separate items ordered in a grid ,you can use a button to ovulate new ones (You can also use F5 key or Grasshopper Timer to refresh the component)
You can Right click on the Ovulate icon and choose "Grouping" mode to group baked geometries in each step, or choose both "Grouping" & "Layer" modes to group baked objects having the same layer
and aslo it's able to use double click on component in order to call Reset
Domain Allocator (Domain-Allocator)
Allocate each item to specific branches by the position of its value within the range
Right click on branch allocator icon and choose "Preserve Structure" if you want to maintain data's structure and just add Sub Branches to the main Branches
Item Picker (PickItem)
Select Items in Data-Tree a checklist by a checklist form
Index Allocator (i-Allocator)
Allocate each item to specific index of branches
Right click on branch allocator icon and choose "Preserve Structure" if you want to maintain data's structure and just add Sub Branches to the main Branches
GenePool Controller (GNC)
Controlling Interval ,Decimal-Number and the number of sliders in a GenePool
Group
Group reference geometries in rhino scene
Either click on component's group button to activate it for once, or set (A)Constant Activation True to group all geometries immediately when they're defined as (G) inputs
and aslo it's able to use double click on component in order to call Reset
Quick Baker (QB)
Just Bake it!
and aslo it's able to use double click on component in order to call Reset
Text Baker (Textbaker)
Bake a String
You can Right click on Text Baker icon and choose to bake the string as a "3D Text" or as a "Text Dot"
Key Allocator (Key-Allocator)
Allocate each item to a specific string for each branch
Right click on branch allocator icon and choose "Preserve Structure" if you want to maintain data's structure and just add Sub Branches to the main Branches

Streaming

Agent Display (AgentDisplay)
Generate a set of lines from each point of current list to their peers from previous list of points
(if N>1 output is represented in Tree-Structure)
Ease
Changes numbers smoothly during the lapses
Event Gate (e-Gate)
It responds as new discrete data receives (data with different value with the previous one)
Hold
Prevents affecting NULL item on output. It replaces inputing NULL items with the latest valid data in its history
Event Toggle (e-Toggle)
Boolean toggle responding to the first True value after a False. It can prevent downstream kicks by the menu option.
Capacitor
Multi-Step Buffer
Double-Click in order to add the available items.
Stream Freeze/Gate (Freeze/Gate)
Decides whether allow the streaming data or not using the 'Gate' switch
Mass Additive Numbers Buffer (NBMA)
Once recalled, it adds the input number to the previous stack of inputted numbers
Double-Click in order to add the available items.
Oil.Can (Can)
Create a List-Tap, each time you call the component it will drop next item of the list (Use either F5 key(in Windows) or Ctrl+R (in MacOs), Grasshopper Timer to refresh the component or double-clicking on component )
You can Right click on "Drop Mode"(M) and choose desired Mode among four possible options
TapBuffer (Tap)
Return an increasing number, each time that the component is called (You can also use Internal timer , trigger button , F5 key or Grasshopper Timer to refresh the component)
Double-Click in order to add the available items
TimeShifter (TimeShift)
shift a list of changing data to n step before in its history
Agent Trailer (Trailer)
Generate a set of lines from each point of the current list to their peers from the previous list of points
Mass Additive Vectors Buffer (VBMA)
Once recalled, it adds the input vector to the previous stack of inputted vectors
Double-Click in order to add the available items.
GlitchReduction
De-Glitching/Smoothing streaming numbers (replacing the irrelevant numbers with the earlier relevant ones)
Mesh Traveler (MeshTraveler)
Mass additive Vector buffer, considering a mesh as a constraint
Double-Click in order to add the available items.
Event Switch (EventToggle)
Boolean toggle responding to the first True value after a False. It can prevent downstream kicks by the menu option.

Fundamental

Closest Numbers (CN)
Find a set of closest Numbers to a specific number (The closest numbers in set D to number S)
InCommon Numbers (LCM/GMD)
Retrieve 'Greatest common divisor' and 'Least common multiple' from a set of integers
Numbers Bias (Bias)
Bias a set of numbers by conic function
Right click on the component's icon and use "Bipolar" mode to bias numbers based on Bipolar Conic Function instead of Conic Function.
GraphMapper+ (Mapper+)
External Graph mapper
You can Right click on the Heteromapper's icon and choose "AutoDomain" mode to define Output domain based on input domain interval; otherwise it'll be set to 0-1 in "Normalized" mode
Min/Max (Extremums)
Extract the minimum and the maximum value of a list of numbers
Intervals Intersect (Dom^)
Calculate an interval by intersecting two intervals
Domain Expand (DExpand)
Expand or shrink a domain
Interpolate + (Interp+)
Interpolate a collection of almost every interpolatable data
Number Digitizer (Digitizer)
modularize(digitize) a number by specific Scope size
List Normalizer (Edge)
Normalize a list of numbers
Weighted Average + (Wav+)
Solve the arithmetic weighted average for a set of items
The items could be:
{Number, Complex, Color, Vector, Point, Line, Domain 1D&2D, Plane, Box, TwistedBox, Rectangle, Circle, Arc, Transform, Curve, Surface and Mesh}
Number Limiter (Boundary)
Limit a number within a specific domain
Intervals Subtract (Dom-)
Calculate the result of subtraction from a set of domains by another set of domains
Domain (Symmetric) (DomSym)
Generate the symmetrical domain based on 'O' and length of 'X'
Domain Expand (Symmetric) (DExpSym)
BiExtend or shrink a domain with symmetrical value
Intervals Union (Dom+)
Merge and union a set of domains

Geometric

Curve Planarizer (CPL)
Planarizing a curve
Once working with multiple Curves: you can Right click on the component's icon and choose "ForAll" option to Planarize all curves Based on the same Plane
Directional Curve (DireCurve)
Convert a line to a directional curve based on a plane
Overlay
Overlay shapes in order
Projector
create a 2d drawing on a plan put of a set of object
Double-Click in order to add the available items.
Center
Returns the center of a geometry and the Diameter of it's bounding box as the Dimention
You can Right Click on the component's icon and choose "ForAll" option to have center point of a group of geometries
Evaluate Rect (EvalRect)
Evaluate a rectangle at normalized{uv} parameter
Rectangle Grid (Grid)
Create a grid of points using a rectangle
If you're not satisfied using Exact Size of the cells, you can Right click on the component and choose "FitSize" to Fit the grid in the Base Rectangle
Modular Points (Modular)
Modularize(digitize) a point by specific Scope size
Right click on ModularPoints icon to choose Which Directions (X/Y/Z) are affected by Modularpoints
Shell From Grid (Shell)
Create Surface, Mesh or net from a Tree of points
Number Grid (Gridizer)
Put number in a grid with a specified max column number and return the row number and the column number

Heteroptera

Camera Crane (Camera)
Adjusting the active or the specified viewport camera
Construct (Construct a)
out of set of vector elements
Geometric Region (GeoRegion)
Create Regions from a list of curves
Sweep (Quick) (SweepQ)
Quick single section sweepYou can Right click on the component's icon and either impose "RoadLike" mode, or use "Horizontal" balancing
Sweep (Anchor) (SweepA)
Quick section sweep with anchorYou can Right click on the component's icon and either impose "RoadLike" mode, or use "Horizontal" balancing
Network From Lines (L-Net)
Create a network from a set of crossing lines
Capture Baked (Baking-capture)
{This component is no longer exists}Bake objects and capture auto-naming shots from them, it's useful for creating animation, using viewport's graphical-style

Maths

Symmetrical Extend (Nickname)
BiExtend or shrink a domain with symmetrical value
Hetero Mapper (CurveMapper)
External Graph mapper
You can Right click on the Heteromapper's icon and choose "AutoDomain" mode to define Output domain based on input domain interval; otherwise it'll be set to 0-1 in "Normalized" mode
Intersect Domain (IntersectDomains)
Calculate an interval by intersecting two intervals
Numbers Biaser (Biaser)
Bias a set of numbers by conic function
Right click on the component's icon and use "Bipolar" mode to bias numbers based on Bipolar Conic Function instead of Conic Function.
Interval Expand (ExpandDomains)
Expand or shrink a domain
Symmetrical Domain (SymDom)
Generate the symmetrical domain based on 'O' and length of 'X'

Geometry

Fast Sweep (FastSweep)
Quick single section sweep
You can Right click on the component's icon and either impose "RoadLike" mode, or use "Horizontal" balancing
Modularpoints (Modular)
Modularize(digitize) a point by specific Scope size
Right click on ModularPoints icon to choose Which Directions (X/Y/Z) are affected by Modularpoints
Hetrosweep
Quick single section sweep
You can Right click on the component's icon and either impose "RoadLike" mode, or use "Horizontal" balancing
Bulger
Bulge set of points by some Bulger points
Transforming Vectors are generated in 3 dimensional space by default, but you can Right click on the component and choose "Planar" mode to generate them in xy plane

Random

Chancy Allocator (Chance)
Randomly Allocates Items to different branches by defining the chance of each branch. so each item tends to belong to the branch with higher chance
Geometrical Possibility (Possibility)
Calculates the possibility of existing points by assigning a value to each point
Attractor Geometrical Possibility (AttraPossibility)
Calculates the possibility of existing points by their adjacency to set of attractors

Add Frame

Camera Story (Cam Story)
Create a storyline for cameraRight click on the component's icon to choose proper 'Interpolation mode' among five possible options (CatmullRom/ Cosine Smooth/ cubic Smooth/ LinearChange/ NearestNeighbour) and set 'Value Mode' to Normalized if needed

Capture!

Capture
Auto-naming Viewport Capture (You can also use F5 key or Grasshopper Timer to refresh the component)You can Right click on Capture's icon and choose CounterOff option to turn auto-naming off.

Static

Pick Selection (Selection)
Pick selected objects in rhino

Transform

Transform (Xform)
Click on Xform Button to Transform a geometry in rhino by a transform information

Video Tutorials

Site design © Robin Rodricks.   Heteroptera and associated data © 2022 Amin Bahrami (Helioripple Studio).  
Rhinoceros and Grasshopper are registered trademarks of Robert McNeel & Associates.  Hosted by GitHub

Report an Issue  |  Terms of Service