Grasshopper2namespace

Types

Grasshopper2.Arithmetic
This static class collects and maintains all arithmetic operators.
Grasshopper2.Arithmetic.Binary
List of standard binary arithmetic functions.
Grasshopper2.Arithmetic.Details
Exposes geeky details about the arithmetic class.
Grasshopper2.Arithmetic.FunctionAttribute
Any function method inside an ArithmeticRepository must be decorated with this attribute to identify it as such. The method signature must follow: TResult Method(TA a, TB b)
Grasshopper2.Arithmetic.Operation
Enumerates the defined arithmetic operators.
Grasshopper2.Arithmetic.OperatorAttribute
Any operator method inside an ArithmeticRepository must be decorated with this attribute to identify it as such. The method signature must follow: TResult Method(TA a, TB b)
Grasshopper2.Arithmetic.Ternary
List of standard ternary arithmetic functions.
Grasshopper2.Arithmetic.Unary
List of standard unary arithmetic functions.
Grasshopper2.ArithmeticRepository
Derive from this class to provide custom arithmetic operator methods. Add any number of public, *static* methods which represent either binary operator logic, or unary/binary/ternary arithmetic function logic and decorate them with the appropriate Arithmetic.OperatorAttribute or Arithmetic.FunctionAttribute respectively.
Grasshopper2.AuthorAttribute
Any final component, parameter or other canvas object must be attributed to a specific author, so the resident proofreader knows who to turn to for questions and comments.
Grasshopper2.BeforeAfterEventArgs<TOwner, TData>
Utility event arguments for events that provide both before and after values.
Grasshopper2.Folders
Provides static properties for files and folders relevant to the Grasshopper process.
Grasshopper2.InlineTest
Grasshopper2.Instances
Access to various primary instances of classes in the Grasshopper plugin.
Grasshopper2.MaassField
Grasshopper2.Maths
Mathematical trig functions.
Grasshopper2.Maths.AbstractSearch<T>
Utility class for performing extreme searches.
Grasshopper2.Maths.AiryKind
Enumerates the defined Airy implementations.
Grasshopper2.Maths.BarChart2D
Grasshopper2.Maths.BesselKind
Enumerates the defined Bessel implementations.
Grasshopper2.Maths.Boundary
Methods for finding various kinds of boundaries.
Grasshopper2.Maths.Boundary.ConvexHull2D
Encapsulates the indices (in anti-clockwise order) of all the points in a 2D point set which lie on the convex hull polygon.
Grasshopper2.Maths.Boundary.SpanningSphere
Encapsulates all the fields used in a bounding (or 'spanning') sphere.
Grasshopper2.Maths.ColourMetric
Enumerates the defined colour difference metrics used in the Maths.Distance(Maths.ColourMetric, Color, Color)> like functions.
Grasshopper2.Maths.Constant
A constant, named value registered with the centralised Maths.Constants repo.
Grasshopper2.Maths.Constants
Central collection of all constant values known to Grasshopper. Plugins may add constant values on load. Note that is primarily a User-Interface collection, the Maths.Constants class contains a lot of the numeric constants directly usable in code.
Grasshopper2.Maths.CorrelationMethod
Enumerates the defined correlation algorithms.
Grasshopper2.Maths.DistanceMetric
Enumerates the available distance metrics used in the Maths.Distance(Maths.DistanceMetric, double[], double[]) like functions.
Grasshopper2.Maths.EllipseFitting
Static ellipse fitting methods.
Grasshopper2.Maths.Engine
Enumerates the available random number generators.
Grasshopper2.Maths.FlatTriangleTrigonometry
A class for finding unknown triangle properties based on known properties. This class solves for triangles in flat Euclidean space where the sum of the angles is known to equal pi radians.
Grasshopper2.Maths.Flow
Grasshopper2.Maths.Flow.EdgeDirection
Grasshopper2.Maths.Flow.EdgeStatus
Grasshopper2.Maths.Flow.EffectiveEdgeType
Grasshopper2.Maths.Flow.NakedEdgeType
Grasshopper2.Maths.Flow.VertexStatus
Grasshopper2.Maths.Histogram
A complete historgram for a data set.
Grasshopper2.Maths.Histogram2d
Static class for creating 2D mesh histograms.
Grasshopper2.Maths.HistogramBucket
Represents a single bucket in a histogram.
Grasshopper2.Maths.HowManyBuckets
Bucket resolver delegate.
Grasshopper2.Maths.IndexMap
An integer array of length N containing all the integers from 0 to N-1. This map encodes a specific (re)ordering of items in an array. Grasshopper uses index mapping instead of in-place sorting so that a specific ordering can be cheaply applied to more than one collection.
Grasshopper2.Maths.Maps
Utility class for mapping coordinates between various spaces.
Grasshopper2.Maths.Maps.DiscMapping
Enumerates the various kinds of disc → square mapping algorithms.
Grasshopper2.Maths.Maps.PlaneMapping
Enumerates the possible mappings between planar coordinates.
Grasshopper2.Maths.Maps.SphereProjection
Enumerates the possible mapping mappings for spheres.
Grasshopper2.Maths.MaximumSearch<T>
Utility class for performing far searches.
Grasshopper2.Maths.MaximumSearchMultiple<T>
Utility class for performing multiple far searches.
Grasshopper2.Maths.MeanKind
Enumerates the defined types of average.
Grasshopper2.Maths.MeshHeight
Vertical "how high is the mesh over this spot" queries, answered in bulk.
Grasshopper2.Maths.MinimumSearch<T>
Utility class for performing near searches.
Grasshopper2.Maths.MinimumSearchMultiple<T>
Utility class for performing multiple near searches.
Grasshopper2.Maths.MultipleMethod
Enumerates the different ways in which the Maths.Multiple(double, double, Maths.MultipleMethod) return can be computed.
Grasshopper2.Maths.PseudoRandom
Central utilities for creating random engines and random collections.
Grasshopper2.Maths.PseudoRandom.PoissonSetup
Describes the initial setup for a two-dimensional Poisson sampling.
Grasshopper2.Maths.PseudoRandom.RandomWithAvoidance
A class for generating random values which are never too close to previously generated values.
Grasshopper2.Maths.Sampling
Confidence intervals for quantities estimated from a single sample. The bounds agree with those of the equivalent commands in R, i.e. t.test and binom.test.
Grasshopper2.Maths.SmoothEdge
Enumerates the ways smoothing can treat values beyond the ends of a sequence.
Grasshopper2.Maths.SmoothKind
Enumerates the way a number can be smoothed based on its neighbours.
Grasshopper2.Maths.SmoothLimit
Enumerates the possible smoothing function for Maths.SmoothMin(double, double, Maths.SmoothLimit, double) and Maths.SmoothMax(double, double, Maths.SmoothLimit, double) functions. In every mode except Maths.SmoothLimit.None the k parameter represents the width of the blend zone, measured in the same units as a and b.
Grasshopper2.Maths.Spirals
Spiral utility methods. Very much unfinished.
Grasshopper2.Maths.Tesselation
Grasshopper2.Maths.ThinPlate2D
A two-dimensional thin-plate implementation for interpolating unstructured samples.
Grasshopper2.Maths.ThinPlate3D
A three-dimensional thin-plate implementation for interpolating unstructured samples.
Grasshopper2.Maths.Voronoi2d
Planar Voronoi diagrams of weighted point sites (RH-79405), through RHC_GH2_WeightedVoronoi2d. The weighted distance from site i is (t*A_i + 1 - t) * |x - r_i| + (1 - t) * B_i: t = 0 is purely additive (hyperbolic arcs), t = 1 purely multiplicative (circular arcs).
Grasshopper2.Maths.Voronoi2d.Result
The clipped diagram.
Grasshopper2.NumericRange
A single numeric sequence. This wraps either a double[], an int[] or a BigInteger[].
Grasshopper2.Prose
Utility class for various textual and linguistic operations.
Grasshopper2.Prose.ByteSize
Provides utility methods for converting and formatting bits and bytes. Code copied from: https://github.com/omar/ByteSize
Grasshopper2.Prose.CaretDeparture
The ways a key press can ask to leave a single-line text context: a plain movement or deletion which cannot be absorbed because the caret already sits at the boundary it points past, or a vertical step which a single line can never absorb. Whoever hosts the text decides whether a neighbouring context exists and what landing there means.
Grasshopper2.Prose.CharIndexer
CharIndexer which always return the null char if the index is out of bounds. It's a good class for getting string characters without having to worry about out-of-bounds indices.
Grasshopper2.Prose.GrammarArticle
Enumerates the possible articles that can be prefixed to a term.
Grasshopper2.Prose.GrammarCasing
Enumerates the possible casings for a word group.
Grasshopper2.Prose.GrammarNumber
Enumerates the grammatical numbers in which terms can occur.
Grasshopper2.Prose.Graphemes
A string made up of complete graphemes. That is, instead of an array of char values, it consists of an array of string symbols which consists of base chars and their combining chars.
Grasshopper2.Prose.KeyValueFragment
Grasshopper2.Prose.Mask
Represents a boolean mask for each character in a string.
Grasshopper2.Prose.MaskPattern
Defines a masking pattern.
Grasshopper2.Prose.SequenceSymbols
Symbols used for composing string sequences.
Grasshopper2.Prose.SequenceTrimming
Enumerates the possible trimming types when composing sequence strings.
Grasshopper2.Prose.StringMetric
Enumerates the possible string distance metrics.
Grasshopper2.Prose.Text
Represents a string with alternating textual and numeric fragments. This makes mixed number/text comparisons much faster and more reliable.
Grasshopper2.Prose.TextWithCaret
Represents a string with caret location and block selection. This is useful for mimicking text area inputs that are not tied to specific controls.

All positions (Prose.TextWithCaret.Caret, Prose.TextWithCaret.Block and the block bounds) are measured in grapheme clusters, not char code units. The text is segmented into complete grapheme runs (base character plus any combining marks, and whole surrogate pairs) via Prose.Graphemes, so the caret can never land inside a cluster and no edit can split one into invalid UTF-16.

Grasshopper2.RangeNotation
Utility methods for creating numeric ranges.
Grasshopper2.ResourceFolder
Enumerates the pre-defined Grasshopper2 resources sub-folders.
Grasshopper2.Settings
Provides static properties and events for central Grasshopper settings.
Grasshopper2.Settings.Setting<T>
A single setting in Grasshopper settings collections.
Grasshopper2.SettingsFile
A class for caching settings which are stored in a file.
Grasshopper2.SettingsFolder
Wrapper class for accessing various settings files in a single folder.
Grasshopper2.Turing
A 2D Turing state machine.
Grasshopper2.Turing.Instruction
Represents a single instruction in a two-dimensional Turing machine.
Grasshopper2.Turing.Sheet
A Turing sheet, or two dimensional Turing tape.