β€‹β€‹β€‹πŸ“—β€‹ PLNT101: Plant Kit Basics
​​CAMPUS > PLNT101: Plant Kit Basics
​​
​​Legacy Tutorial: Some scripts may produce some warnings or errors with newer versions.

​
​Why Plant Kit?

​​Plant Kit makes computational planting design more accessible. It allows users to build design workflows to coordinate plant placement with multiple species and with multiple constraintsβ€”all within Grasshopper's parametric scripting environment. Plant Kit works well in combination with other parametric design strategies, providing a robust and powerful framework for parametric planting design.
​​
​​In this course, we will begin to look at how to create digital instances of plants, environments, and planting areas. We will look at the characteristics of plant instances and the rules for layout within planting areas. We will begin to understand how environmental layers will affect where a plant is placed.
​​
​​
​
​Requirements
​​
  • ​​Rhino 6 or 7
  • ​​Land Kit Grasshopper Plug-in
  • ​​elefront Grasshopper Plug-in
​​
​​You can get help with Land Kit and elefront here.
​​
​
​Formatting
​​In the text below, Land Kit components are bold like this: Create Plants.
​​Other Grasshopper components are wrapped in quotes like this: β€œDuplicate Data”.
​​

​
​Course Modules

​​
​​Module 0: Plant Kit Basic Setup
  • ​​Tour of the basic setup file
  • ​​Plants, Environments & Areas
  • ​​Create Plants
  • ​​Place Plants
  • ​​Get Placed Plant Info
  • ​​Generate new combinations
​​
​​Module 1: Placing Plants
  • ​​Add Plants Constrained
  • ​​Fill Area with Plants Constrained
​​
​​Module 2: Constrained Plants
  • ​​Create Niche
  • ​​Pseudo Niche Parameters
  • ​​Fill Area with Plants Constrained
​​
​​Module 3: Plants Defined Manually
  • ​​Create your own plants one by one
​​

​
​Download PLNT101 Course Files

​​
​​Click on the little download arrow…
​​
​​
​​

​
​PLNT101 Module 0: Plant Kit Basic Setup

​​
​​Before you get started, be sure to follow the installation instructions.
​​Here is the Grasshopper file no Rhino file required for this one.
​​
​​So, how do you fill areas with plants?
​​Here, we show you how to create β€œpseudo” plants and add them to your areas.
​​
​​
​​To launch the example file, double click on the example grasshopper (.gh) file to open Rhino 6 and Plant Kit demo.
​​
​​The first rule of Plant Kit is to create plants. For the purposes of this example file, we’re using the Pseudo Plant Parameters component to generate a list of hypothetical plant data, which feeds into the Create Plants component. The Create Plant component will take the data from the Pseudo Plant Parameters component and generate a list of plants to use throughout your planting design. To change the number of species in this list, adjust the number sliders of max_sp and min_sp feeding into the Pseudo Plant Parameters component.
​​
​​To randomly generate a new list of hypothetical plants, Toggle the True/False button connected to activate in the Pseudo Plant Parameters.
​​
​​The Fill Plants component will accept the plants generated through the Pseudo Plant Parameter and the Create Plants components and join it with your site information and planting regions. To space plants tightly throughout your design, set the packing ratio of the Fill Area with Plants Constrained component around 1. A value less than 1 will result in a more loosely spaced planting design. The weights input of the Fill Plants component will determine the proportions of each species to be represented throughout planting iterations. You can keep this blank and the plants will fill equal amounts of area (more plants if they are smaller). If you provide weights, be sure to provide a weight for every plant (example of a list of numbers for weights 2.5, 6, 2, 1). In this example, the weights for plant species are randomly generated from the Pseudo Plant Parameters.
​​
​​To change or assign new planting areas, right click the curve container component labeled β€œArea Boundaries” and select one, or multiple, closed, planar curves. Add or change topography by assigning a mesh to the mesh container component labeled β€œtopo”. This information from your site’s topography and boundaries will inform the Create Environment component. In future videos, we will show you how to add layers of analysis to your environment instance to shape your planting designs.
​​
​​Plants distributed through Fill Area component will have their placements and density adjusted slightly in the Pack Plants component by changing the step input value. Sometimes packing only really needs 10 steps but sometimes it may look better with 100. Packing plants will ensure that plants are not placed on top of each other but instead placed in a way that respects the diameters of their plant neighbors.
​​
​​The next step is to use the Get Area Plants component which pull plants from the area for visualization or export.
​​
​​Get Plant Info will generate a list of plants with their defining attributes broken out and ready for visualization.
​​
​​If you would like to refresh your planting design with a new distribution of randomly generated hypothetical plants from Pseudo Plant Parameters just hit F5 on your keyboard.
​​
​​
​​

​
​PLNT101 Module 1: Placing Plants

​​
​​In this module, we learn how to place plants in specific locations. Then how other plants can be generatively filled-in around them.
​​
​​Double click the file, no Rhino file required.
​​
​​In this section, we are going to show you how to directly place a plant. The information covered in this section is particularly helpful if you have existing vegetation on your site that you would like to integrate into your planting design, or if you’d like to introduce manual patterns or geometries into your planting mixes. 
​​
​​This section will also teach you how to randomly place a specific number of a plant species into a planting mix and show you how to define the characteristics of your desired plant.
​​
​​To place a plant in a specific location, use the Create Plant component. You can name your introduced plant species, define a height and radius of the plant, give it a color for visualization purposes, and determine if this plant should be distributed singularly or in clusters. To distribute the plant singularly, set the group_radius input of the Create Plant to 0, or leave it without an input. To distribute this species as a cluster throughout your planting designs, set the group_radius input to an integer greater than 1.
​​
​​Once you’ve defined the traits of your plant, use the output from the Create Plant component to feed into the native grasshopper component β€œDuplicate Data.” Change the number input of the β€œDuplicate Data” to number of times you’d like this species to be repeated throughout your planting areas.
​​
​​To place your new plant throughout the planting areas, use the β€œboundary surface” component to generate a surface from the β€œcurves” component labeled β€œarea boundaries” as input. The surfaces generated from β€œBoundary Surface” will be the input geometry used for the grasshopper native component, β€œPopulate Geometry.” The number of custom-placed plants you define as your n input will be placed in each area.
​​
​​Alternatively, instead of using β€œPopulate Geometry” to generate random points within your area, you can set locations for plants by assigning points as the input for locs in the Add Plants Constrained component. If you are assigning points, be sure to connect your points to a β€œList Length” component to get the number of points and assign the result to the n input for β€œDuplicate Data” to ensure that you have enough plants available to distribute throughout the number of points you’ve set.
​​
​​Use the β€œboolean toggle” component to set the fixed input to True for Add Plant.
​​
​​The Create Planting Area component will generate the input for <A> in the Add Plant component. This input will need to be grafted, either using the β€œgraft tree” component” or by right clicking the <A> output label and checking β€˜graft’ in the context menu. By grafting this input, the two areas collected from the Create Planting Areas that exist in one list will be separated into two data trees that each have one area.
​​
​​Add the output from Add Plant to the <A> input for the Fill Area with Plants Constrained component. This will integrate your placed plants within a planting mix.  
​​
​​

​
​PLNT101 Module 2: Constrained Plants

​​Double click the file, no Rhino file required.
​​
​​We can also constrain the plants you are adding and filling by adding analysis layers to an β€œEnvironment” instance and setting up rules or β€œniches” for the plants. They can be constrained to an area based on how their preferences for slope, elevation, and sun exposure align with site conditions.
​​
​​
​​
​​The first step to constraining plants is to create an Environment instance using the Create Environment component. We then need to add analysis layers like slope or sun exposure to the Environment instance . You should use analysis layers that are the most relevant for your project.
​​
​​When you Create Planting Area from your Environment with your analysis layers, you will set up Plant Kit to later restrict what is planted, where, based on specific environmental conditions.
​​
​​Similar to how we generated Pseudo Plant Parameters in Example 00, for the purposes of this example, we’re going to generate Pseudo Niche Parameters.  A niche describes a specific environmental condition that is the ideal habitat for plant species. In Plant Kit, a niche is defined as the minimum and maximum value of an environmental condition where a plant can occur in a given planting design.
​​
​​Pseudo Niche Parameters will pull data from both the Environment and the Pseudo Plant Parameters to generate hypothetical niches within your site given the existing conditions. From here, use the Create Niche component to gather this data as the <N> input for the Create Plant component. This sequence of components will create a list of species with environmental preferences that can be placed as the <P> input for Fill Area With Plants Constrained.
​​
​​To place plants like we did in Example 01, add niche information to the plant you defined by adding the Pseudo Niche Parameters and Create Niche to the N input for Create Plant. If you do not see the plant you defined and placed in your planting mix, the random niches generated in Pseudo Niche Parameters are not matching with the niche preferences for your plant. Simply hit F5 to generate a new random list of plants and niche data.
​​
​​
​​

​
​PLNT101 Module 3: Plants Defined Manually

​​Define your own plant attributes to build plants with the characteristics that are particular to your project. This requires a bit of work on your part but ensures you understand your plants and their constraints.
​​Double click the file, no Rhino file required.
​​
​​
​​
​​
​​Land Kit - copyright 2020 
​​
​​
​​