02::Root
Introduction
The Root cluster provides a series of components that draw parametric diagrams of multi-phased root systems, in both sectional and planar approaches, based on the given soil conditions.
The growing roots will also respond to different environmental conditions that are either benign or malignant. These conditions will accordingly either encourage or discourage the growth.
Similar to the reality, a root needs some soil to grow upon. To grow roots, the components require a soil map that utilize the information extracted from the Soil cluster.
Component Usage
Please refer to the following sections for each component from this cluster.
Soil Map for Root
This component computes a soil map for root drawing. It does not generate a diagram, but generates a generic class that can be connected to the components.
Parameter | Abbreviation | I/O | Optional | Explanation |
---|---|---|---|---|
Plane |
P |
Yes | The base plane where the soil and roots exist, using Top as the default value. For soil that is not aligned with the world coordinate system, the soil boundary should be used. | |
Soil Geometry |
soilGeo |
No | Geometric representation of the soil. For sectional soil, only triangles are considered; for planar soil, users can use any tessellation (triangle, square, hexagon, etc.) or point collection. | |
SoilMap |
sMap |
The output generic soil map, used as one of the inputs of the root drawing components. |
- Context Menu: This component provides an additional option in the context menu to choose between sectional soil map or planar soil map. The selection will trigger different algorithm inside the component for computing the soil map for different purposes.
Sectional Root
This component generates a sectional root diagram based on the given soil map, anchor point and root radius. Users can also specify the specific root topology. Due to the various stages of root growth this allows the user to control the number of levels roots will branch off of the primary or initial roots. For example the figure, from An Architectural Approach to the Comparative Ecology of Plant Root Systems1, below demonstrates both single level branching and multi level branching.
In addition to topological adjustments, users can adjust various variables to simulate the root's growing process with enabled environmental affectors, including both attracting factors (water, resource, etc.) and repelling factors (dryness, poison, etc.). If the environmental affectors are turned off, the root will branch out uniformly based on the given soil conditions.
Topological Brancing Multi Level
Topological Brancing Single Level
Topological Brancing None
Parameter | Abbreviation | I/O | Optional | Explanation |
---|---|---|---|---|
SoilMap |
sMap |
No | The generic soil map that contains the geometric information a root can grow on. | |
Anchor |
A |
No | The location near which a root start growing. The component will find the nearest on-map point to this anchor point. | |
Steps |
S |
No | The growing steps of the root. This is used to control the depth of root growth incrementally. | |
BranchN |
n |
Yes | Root branching number. Initial number of roots that branch from the anchor (n >= 2). | |
seed |
s |
Yes | Int seed to randomize the generated root pattern. | |
Env Attractor |
envA |
Yes | A curve or list of curves that represent environmental attracting area. (water, resources, etc.) | |
Env Reppeller |
envR |
Yes | A curve or list of curves that represent environmental repelling area. (dryness, poison, etc.) | |
Env DetectionRange |
envD |
Yes | The range (to unit length of the grid) that a root can detect surrounding environment. | |
RootSec-Primary |
root-main |
The sectional root drawing for primary branches of the roots. | ||
RootSec-Secondary |
root-rest |
The sectional root drawing for secondary elements, or elements that brach off the main roots. |
- Context Menu: This component provides an additional option in the context menu choose between Topological Root: Level 2, Topological Root: Level 1, or Topological Root: None. The selection will trigger different algorithm inside the component for drawing the corrosponding diagram.
Parameter | Abbreviation | I/O | Options | Explanation |
---|---|---|---|---|
Topological Branching |
Topological Branching |
None/Level 1/Level 2 | The number of branching levels for roots off of the primary roots. |
Planar Root
This component generates a phased planar root diagram based on a given soil base. Users can adjust various variables to simulate the root's growing process with enabled environmental affectors, including both attracting factors (water, resource, etc.) and repelling factors (dryness, poison, etc.).
If the environmental affectors are turned off, the root will branch out uniformly to all directions.
Root Growth Phases Diagram
Parameter | Abbreviation | I/O | Optional | Explanation |
---|---|---|---|---|
SoilMap |
sMap |
No | The generic soil map that contains the geometric information a root can grow on. | |
Anchor |
A |
No | The location near which a root start growing. | |
Scale |
S |
No | Root scaling to match the root size with the soil size. | |
Phase |
P |
No | The growth phase ( [1, 5] ) of the root, allowing adjustment of the maturity of the root. | |
Division Num |
divN |
No | The number of branches grown from the root centre. | |
Env Attractor |
envA |
Yes | Environmental attracting area (water, resource, etc.). | |
Env Repeller |
envR |
Yes | Environmental repelling area (dryness, poison, etc.). | |
Env DetectionRange |
envD |
Yes | The range (to unit length of the grid) that a root can detect surrounding environment. | |
"EnvAffector Toggle" |
envToggle |
Yes | Toggle the affects caused by environmental factors. Default value false . |
|
RootPlanar |
rootALl |
The planar root drawing, collection of all level branches. | ||
RootPlanarLevel-1 |
rootLv1 |
Level 1 root components. | ||
RootPlanarLevel-2 |
rootLv2 |
Level 2 root components. | ||
RootPlanarLevel-3 |
rootLv3 |
Level 3 root components. | ||
RootPlanarLevel-4 |
rootLv4 |
Level 4 root components. | ||
RootPlanarLevel-5 |
rootLv5 |
Level 5 root components. | ||
RootPlanarAbsorb |
rootAbsorb |
Absorbent roots. |
Tree Root
This component is used to generate sectional diagrams of tree root systems based on their height and phase. The component requires inputs from a soil map and tree component to compute the diagrams.
Tree Root Growth Phases Diagram
Parameter | Abbreviation | I/O | Optional | Explanation |
---|---|---|---|---|
TreeInfo |
tInfo |
No | The tree info output from the tree component, used to generate the roots diagram | |
SoilMap |
sMap |
No | The output generic soil map, used as one of the inputs of the root drawing components. | |
All Roots |
rootAll |
The sectional root drawing, collection of all level branches. | ||
RootMain |
rootM |
Primary root components of roots grown in previous the phase. | ||
RootNew |
rootN |
Secondary root components and new roots grown in current phase. | ||
Dead Roots |
rootD |
Dead roots in later phases of a tree's life. |
Demo File
The Root Demo (.gh
file) is a grasshopper file that contains example definitions for Sectional Root and Planar Root diagram generation. For Tree Root diagram generation, see Tree demo file.
Note: By adding additional points to the soil grid, the sectional root growth can be adjusted to deviate from the soil grid. This allows the simulated root to appear more natural or dynamic as depicted above in figure 2. For example review Natural Root Demo (.gh
file).
-
Fitter, A. H. "An architectural approach to the comparative ecology of plant root systems." New phytologist 106 (1987): 61-77. ↩