Grasshopper 2

Recap Exercise: Referencing Simple Curves

  1. Geometry:

    Reference curves from Rhino to Grasshopper.

    • Set Multiple Geometry

    • Add Panel to connect to Geometry to see referenced curves

  2. Divide Curve:

    to segment a curve into a defined number of points. This allows users to break down complex curves into smaller, manageable segments, enabling further manipulation and the creation of connections between those points for visual or structural applications.

    Steps:

    • Connect Geometry to Curve

    • Add Number Slider to Count to determine the number of segments you want. It allows adjustments, and clearly see how changes in the count affect the segmentation of the curve.

    • Points to Param Viewer to visualize the points created along the curve, providing a clear representation of the segment divisions.

    • Points to Vertices/ Polyline to create a visual representation of the segmented curve.

  3. Line:

    Draw Lines to connect the divided points to visualise relationships between the points.

  4. Param Viewer:

    Tree: Lists that refers to a data structure that organises data in a hierarchical format.

    Branch: data is arranged in branches, with each branch potentially containing one or more items.

    e.g. Branch: (0;0), (0;1),(0;2),(0;3) Item: 0123

  5. (Display) Draw Fancy Wires:

    • Single Wire: one information

    • Double Wire: one branch, there's multiple items being transmitted along this wire

    • Dashed Wire: Multiple Branches

    Press Shift when connecting two wires at the same time.

    Control and drag it back or right click on the inputs to disconnect wire.

  6. Polyline:

    a line made up of multiple connected segments (or points), emphasising its utility in visualising relationships between points and creating complex shapes

    Steps:

    • Add Param Viewer to display the properties of the polylines and their control points, allowing for better manipulation and understanding of the geometry.

    • Add Panel to display the values of the segments, making it easier to understand the connections and relationships within the geometry.

  7. Flip Matrix:

    flipping a data tree structure to enable better operations with branches, facilitating better management of complex data structures.

    Steps:

    • Connect Points from Divide Curve to Data( front) in order to create a series of points that can be manipulated further later.

    • Add Param Viewer to Data( back) to visualize the data structure and ensure that the connections are correctly established.

  8. Internalise Geometry:

    right click on geometry to access the menu and select 'Internalise Data' to ensure the curves are embedded within the Grasshopper definition.

Tunnel

  1. Geometry:

    • Draw a rectangle in Rhino

    • Set Geometry

    Always hide the geometry in Rhino after referencing it in Grasshopper.

  2. Move:

    move the instance, e.g. move 100 times to create 100 slabs.

  3. Unit Z

    • Add Number Slider to Factor/ Unit Z

    • Connect Unit Vector to Motion/ Move

  4. Series:

    used to generate sequences of numbers, which can help define parameters such as the height of floors within the twisting tower project.

    Step size is the height

    Count is how many slabs

    • Add Number Slider to Step

    • Add Number Slider to Count

    • Add Panel to visualise

  5. Rotate:

    • Connect Geometry/ Move to Geometry/ Rotate

    • Right click on Angle to change the radians to degrees

  6. Area:

    • Connect Geometry/ Move to Geometry/ Area

    • Connect Centroid/ Area to Origin/ XY Plane

Series VS Range

  • Series: A sequence of numbers or geometric shapes that are connected in a specific way, often used to analyse patterns and relationships.

  • Range: The difference between the maximum and minimum values in a set, which can also refer to the extent of the values in a specific context.

  1. XY Plane:

    • Connect Plane/ XY Plane to Plane/ Rotate

    • Add Param Viewer to Plane/ XY Plane

    Series:

    Allows you to control step size, but not minimum and maximum.

    • Add Number Slider to Step/ Series

    • Connect Count/ Series to Original Number Slider for Unit

    • Connect Series/ Series to Angle/ Rotate

  2. Construct Domain:

    • Add Number Slider to Domain Start

    • Add Number Slider to Domain End

    • Connect Domain/ Construct Domain to Domain/ Range

    Range:

    Does not allow you to control step size but allows you to control minimum and maximum.

    • Connect Number Slider - Count/ Series to Steps/ Range, Right click Expression: X-1

    • Add Panel to Range/ Range

    • Connect Range/ Range to Angle/ Rotate

Exercise: Scale the tower

Scale first slab = 1.0

Scale last slab = 0.5

  1. Construction Domain:

  2. Range:

  3. Scale:

    • Connect Geometry/ Rotate to Geometry/ Scale

    • Connect Centroid/ Area to Center/ ScaleRange

Twisting Tower Project: Creating a Twisting Tower
  1. Create Floor Slabs: Initially establish the base components that will represent the floor slabs.

  2. Define Heights: Use the Series component to create a sequence for defining the height of each floor.

  3. Scale and Rotate Slabs: Adjust the scaling properties and apply rotation to each floor slab for visual dynamics.

  4. Numbering Components: Introduce Text components to label each floor slab for easier identification during fabrication processes.

Overview of Components Used in Grasshopper Sessions

  1. Geometry Parameter: Allows the input of multiple geometries through the 'set multiple geometries' functionality, enhancing efficiency and reducing redundant geometry parameters.

  2. Parameter Viewer: Essential for debugging, this component helps in understanding the structure of lists and branches. It aids in identifying errors by showing how data is organized in the tree format.

  3. Flip Matrix: Introduces the concept of flipping a data tree structure to enable more effective operations with branches, facilitating better management of complex data structures.

  4. Series: This native Grasshopper component is used to generate sequences of numbers, which can help define parameters such as the height of floors within the twisting tower project.

  5. Text Components: Used to automate the numbering of components such as floor slabs for real-world applications (e.g., laser cutting). These components dynamically update based on design specifications.