Curve/Curve (Intersect _Physical_Curve/Curve) finds the intersections between Curve A and Curve B. To find the intersections of each of the three curves individually, use a Graft Tree (Sets_Tree_Graft Tree) to add a data item and group each curve separately. Use Shatter (Curve_division_shatter) to divide the curves based on the intersection points … C curves to shatter, T points used to shatter. Containment (Curve_Analysis_Containment) test points for curve region containment. Evaluate an expression with a flexible number of variables. Dispatch splits the two groups based on true or false
info via Digitaltoolbox Splitting Curve
wilcox modulation with condition.gh
Tiled surface with two modules … line (curve) indicating the direction of the sun … tile placement determined by the angle of the sun direction and the surface normal’s of the tiles.
Info Via Professor Glenn Wilcox, Rhino + Grasshopper: Modulation
Dispatch allows you to make binary choices, input (L) list, if true (A) if false (B)
Modulus is the remainder that you are left with when you divide two numbers.
Examples: 0/0 = modulus 0, 2/2=modulus 0, 3/2= modulus 1, 4/2 = modulus 0, 5/2 = modulus 1
Creates A B rhythm.
Examples : 0/0 = modulus 0, 6/6 = modulus 0, 12/6 = modulus 0, 18/6 = modulus 0
Creates A B B rhythm.
Containment test a point (P) for curve (C)region containment … returns point/region relationship (0 = outside, 1 = coincident, 2 = inside)
Info via Professor Nick Senske – Conditional Logic-Computational Methods, Fall 2012
Solid Difference, found under Intersect-Shape tab
Info Via Guilherme Gomes – grasshopper 3d – 02
Surface Split– split a surface with a bunch of curves, (F) returns two trimmed surfaces; so you can use a List Item to retrieve a specific item (surface) from the list. Component found under Intersect-Physical tab.
Info via Rhino3DTV Team – Grasshopper Split_Surface Component
random pipe tower.gh
Random Pipe Tower using Random number generator and Jitter tool. Also, Join Curve to close pipes.
Info Via Professor Glenn Wilcox – Random Pipe Generator
Begin by dividing surface using Divide Domain Sq and Isotrim …locate center points using Area … Orient objects to surface normal’s using Surface CP, Evaluate Surface,and Plane Normal … place object.
surface paneling and distribution.gh
Info via Professor Nick Senske Lecture 3 – Part 2: Surface Paneling and Distribution
Using a Range or Series to send a list of numbers into an object component will replicate the object. Useful for establishing a pattern.
When transforming objects created from a Series individually it is important to match the number of inputs … easy way to do this is to use another Series component.
transform rotation top and bottom.gh
Again it’s important to match the number of outputs with the number of inputs. Range starts at zero … output list is (N) + 1 … To make the Range output match the input value of the component you can set the expression n-1 for (N)
The default center of scaling is set at 0,0,0 … add Area component to position center of each object. Scaling factor is a multiplier
transform scale with graph mapper.gh
One way to make the transformation less linear is to use the Graph Mapper component. In this example the Graph Mapper is added to change the Scale factor (F). Since the domain of the Range component is between 0 and 1 the numbers coming out of the Graph Mapper are small … the Multiplication component was added to increase the scale factor (F) values.
transform scale and move with graph mapper.gh
To dynamically control the cross section of the object a Graph Mapper can be added to change the Z Vector values of the Move component. This combined with the variable Scale factor can result in some interesting forms.
distribute along curve with graph mappers.gh
Any number input can be controlled with a Graph Mapper.
Change orientation of objects by using an XZ Plane.
Info via Professor Nick Senske Lecture 3 – Part 1: Transform loops, Graph Editor, Random
Series … Series of numbers starting with (S) then the increment or step size (N) and finally the count (C) … out put is numbers.
In Grasshopper when you give a component a list you create multiple outputs.
Range is useful for dividing between to fixed points … Requires domain component (D) to establish beginning and end numbers … then divides by number of steps (N).
Domain … Start number (A) and end number (B)
Info via Professor Nick Senske Lecture 2, Part 4 – Explicit Point Generation
Divide curves and surfaces into points for geometry distribution.
Divide Length … number of points with a given distance (L) in between.
Divide Curve … number of equal segments (N) between points along curve. If you want points at each of the corners in a closed curve, set kinks boolean to true.
Divide Surface … creates a grid of points along the local ( U and V) coordinate system of the object.
Orient … to re-orient the geometry … reference plane (A) and target plane (B)
Divide Surface out puts points … distribute planes on each of the points by using Plane Normal. Points (P) are the origin and the normal vectors (N) plug into the z-axis of (Z) of the Plane Normal
Cones take planes of input so you can plug Plane Normal directly into Cone base (B).
Geometry that doesn’t take planes for input … can use point as reference plane so you can define an explicit point to use as reference. Create Geometry container Geometry … create a point container Point which becomes reference plane (A) in Orient
Info via Professor Nick Senske Lecture 2, Part 3 – Dividing Geometry
Points can be used as planes …
To distribute custom curve geometry … use orient to establish plane to distribute.
Info via Professor Nick Senske Grasshopper Lecture 2, Part 2 – Distributing Geometry
Basic introduction to transforms: move, rotate, and scale in Grasshopper
Move … most basic transformation … creates a new state of the original object … similar to copy … requires vector input
Scale … reset center of scale by using centroid of area … scaling factor is a percentage
Rotation … rotation angle in radians … convert to degrees convert radians to degrees using expression (Rad a)
Info via Professor Nick Senske Grasshopper Lecture 2, Part 1 – Transformations
Digital Design + Fabrication
Ball State University
Grasshopper: Parametric Curves