Root
Documentation of the root components.
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 (2D)
This component computes a soil map for 2D root drawing. It does not generate a diagram, but generates a generic class that can be connected to the components such as planar root, sectional root, and tree root (2D).
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
Plane | P | Yes | The base plane where the soil and roots exist, using Top as the default value. | |
Soil Geometry | soilGeo | No | Geometric representation of the soil. For sectional soil, only triangles are considered; for planar soil, any tessellation or points are allowed. | |
SoilMap2d | sMap2d | The soil map class to build 2D root upon. |
Soil Map for Root (3D)
This component computes a soil map for 3D tree root drawing. It generates a generic class that can be connected to the component tree root (3D).
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
Surface Plane | surP | Yes | A plane representing the soil surface. | |
Soil Volume | soilVol | No | Geometry volume that representing the soil. | |
Particle Number | parN | Yes | The number of particles to simulate the soil volume. | |
SoilMap3d | sMap3d | The 3D soil map class to build 3D root on. | ||
Map Points | mapPt | Spatial points that the 3D soil map builds upon. |
Soil volume / Map points
The soil volume
parameter defines the three-dimensional boundary for tree root growth. For instance, if the soil is confined to a pipe, the roots will be restricted to that space. Root growth also depends on tree size and phase—given an infinitely large soil environment, roots will not grow without limit. We illustrate examples of different growing environments in the tree root (3D) growth example section.
The map points
parameter on the output side represent points within the soil volume that guide how tree roots develop. For larger soil volumes, a higher number of points —- controlled by the particle number
parameter -— is typically expected to capture root distribution more reasonably.
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 Branching Multi Level
Topological Branching Single Level
Topological Branching None
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
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 corresponding diagram.
Param. | Abbr. | I/O | Options | Description |
---|---|---|---|---|
Topological Branching | Topological Branching | None/Level 1/Level 2 | The number of branching levels for roots off of the primary roots. |
Sectional Root
component to create sectional root drawings.

Natural Root Growth
The tree growth is guided by the points defined by the Soil Map
component. By adjusting the grid points or adding additional points to the soil grid, the sectional root growth can be modified to deviate from the original grid. This adjustment allows the simulated roots to appear more natural and dynamic, as shown below.

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
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
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. |
Planar Root
component to create planar root drawings.

Tree Root (2D)
This component is used to generate sectional diagrams of 2D 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
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
TreeInfo | tInfo | No | The tree info output from the 2d 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. |
For the .gh
example of the tree root generation, please refer to the Forest 2D section.
Tree Root (3D)
This component is used to generate diagrams of 3D tree root systems based on the tree information and the soil volume. The component requires inputs from soil map 3d and tree renderer to compute the diagrams.
Param. | Abbr. | I/O | Optional | Description |
---|---|---|---|---|
TreeInfo | tInfo | No | Information about the tree. | |
SoilMap3d | sMap3d | No | The output generic soil map, used as one of the inputs of the root drawing components. | |
Root3dTap | root3dT | Tap roots in 3D. | ||
Root3dMaster | root3dM | Master horizontal roots in 3D. | ||
Root3dExplorer | root3dE | Explorer horizontal roots in 3D. | ||
Root3dDead | root3dD | Dead roots in various phases of a tree's life in 3D. |
Root category
The output roots are categorized in a simplified manner, based on the classification system presented in the report Racines et systèmes racinaires des arbres : structure et développement2, which distinguishes five levels of root types, as shown in the diagram below. In our system:
- Tap roots (
root3dT
) correspond to Level 1 - Master roots (
root3dM
) correspond to Levels 2 and 3 - Explorer roots (
root3dE
) correspond to Level 4 - Level 5 roots are not generated due to their large quantity and fine scale
- Dead roots (
root3dD
) refer to roots that have died during earlier phases of the tree's life cycle
Root growth examples
Here we present examples of 3D tree roots in different soil volumes and tree phases. As discussed above, the soil volume
parameter in the Soil Map for Root 3D component defines the growth boundary. In Figure A, for instance, the tree roots are confined to the interior of a pipe-shaped soil volume. When the soil volume is much larger, root growth does not expand infinitely—it remains limited by the size of the tree (Figure B). Additionally, root development varies with different tree phases (Figure C).