﻿ Heteroptera - Addon for Grasshopper | Grasshopper Docs

Community documentation for Grasshopper add-ons & plugins

# Heteroptera

##### 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.
 Capture!
 Fundamental
 Geometric
 Geometry
 Heteroptera
 Maths
 Network
 Probability
 Random
 Static
 Streaming
 Transform
 Utilities
 Vectors

### Vectors

 Display Tensor (Field@Point)Display Field at point AttractorMagnetic 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 BulgeBulge set of points by some Bulger pointsTransforming 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 FieldDisplay 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 InterTopDrawDraw 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 BoundriesRegion Match with the points proximity MSTCreates 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 ) DiceRolling 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 vectorsRight 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 branchRight 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 branchesChoose "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 UnicodeGenerating Unicode Character Allocate By Domain (Domain-Allocator)Allocate each item to specific branches by the position of its value within the rangeRight 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 geometryand 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 OvulateBake 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 layerand 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 rangeRight 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 branchesRight 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 GroupGroup reference geometries in rhino sceneEither 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) inputsand 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 StringYou 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 branchRight 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

### 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 functionRight 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 mapperYou 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 itemsThe 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 curveOnce 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 OverlayOverlay shapes in order Projectorcreate a 2d drawing on a plan put of a set of object Double-Click in order to add the available items. CenterReturns 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 rectangleIf 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 sizeRight 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 mapperYou 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 functionRight 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 sweepYou 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 sizeRight click on ModularPoints icon to choose Which Directions (X/Y/Z) are affected by Modularpoints HetrosweepQuick single section sweepYou can Right click on the component's icon and either impose "RoadLike" mode, or use "Horizontal" balancing BulgerBulge set of points by some Bulger pointsTransforming 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

 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!

 CaptureAuto-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 © 2023 Amin Bahrami (Helioripple Studio).
Rhinoceros and Grasshopper are registered trademarks of Robert McNeel & Associates.  Hosted by GitHub