nodes.geometry.manual

manual

Classes

Name Description
AttributeStatistic Calculate statistics about a data set from a field evaluated on a geometry
CaptureAttribute Store the result of a field on a geometry and output the data as a node socket.
ColorRamp Map values to colors with the use of a gradient
Compare Perform a comparison operation on the two given inputs
EvaluateClosure Execute a given closure
FieldToGrid Create new grids by evaluating new values on an existing volume grid topology
Float Input numerical values to other nodes in the tree. A ‘type-hinted’ wrapper of the Value node.
FloatCurve Map an input float to a curve and outputs a float value
Frame
GeometryToInstance Convert each input geometry into an instance, which can be much faster
IndexSwitch Node builder for the Index Switch node
JoinGeometry Merge separately generated geometries into a single one
JoinStrings Combine any number of input strings
MenuSwitch Node builder for the Menu Switch node
MeshBoolean Cut, subtract, or join multiple mesh inputs
SDFGridBoolean Cut, subtract, or join multiple SDF volume grid inputs
StoreNamedAttribute Store the result of a field on a geometry as an attribute with the specified name
Value Input numerical values to other nodes in the tree

AttributeStatistic

AttributeStatistic(
    geometry=None,
    selection=True,
    attribute=None,
    *,
    data_type='FLOAT',
    domain='POINT',
    **kwargs,
)

Calculate statistics about a data set from a field evaluated on a geometry

Attributes

Name Description
corner
data_type
domain
edge
face
i
instance
layer
name The name of the node being wrapped by this instance.
node
o
outputs
point
spline
tree The TreeBuilder instance this node belongs to and is being built within.

CaptureAttribute

CaptureAttribute(geometry=None, selection=True, items=None, *, domain='POINT')

Store the result of a field on a geometry and output the data as a node socket. Allows remembering or interpolating data as the geometry changes, such as positions before deformation

Attributes

Name Description
corner
curve
domain
edge
face
i
instance
layer
name The name of the node being wrapped by this instance.
node
o
outputs
point
tree

Methods

Name Description
add_item Add a single item and return its handle.
add_items Add an item per mapping entry and return their handles by name.
capture Add an item linked from value and return its output socket.
add_item
add_item(name, value=None, *, type=None)

Add a single item and return its handle.

value may be a linkable (linked to the item’s input) or a plain default value; otherwise type (a socket-type string such as "FLOAT") declares the item unlinked.

add_items
add_items(items)

Add an item per mapping entry and return their handles by name.

Values may be linkables (linked to the new item’s input) or socket-type strings such as "FLOAT" (declare an unlinked item).

capture
capture(value, *, name=None)

Add an item linked from value and return its output socket.

The item is auto-named after the source socket unless name is given.

ColorRamp

ColorRamp(
    fac=0.5,
    *,
    items=(),
    color_interpolation='EASE',
    hue_interpolation='NEAR',
    mode='RGB',
)

Map values to colors with the use of a gradient

Parameters

Name Type Description Default
fac InputFloat Factor: Which is used to sample the ColorRamp for the output color. 0.5
items Iterable[tuple[float, tuple[float, float, float float]]] Iterable of items which contain (position, color) which position being a 4-component float for values RGBA. Position is a value betwen 0..1. ()

Attributes

Name Description
color_interpolation
elements
hue_interpolation
i
mode
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

Inputs

Attribute Type Description
i.fac FloatSocket Factor: The input value between 0..1 which maps to the final color value.

Outputs

Attribute Type Description
o.color ColorSocket Color: The mapped color value based in the input fac.
o.alpha FloatSocket Alpha: The mapped alpha of the color based on the input fac.

Compare

Compare(operation='GREATER_THAN', data_type='FLOAT', **kwargs)

Perform a comparison operation on the two given inputs

Attributes

Name Description
color
data_type
float
i
integer
mode
name The name of the node being wrapped by this instance.
node
o
operation
outputs
string
tree The TreeBuilder instance this node belongs to and is being built within.
vector

EvaluateClosure

EvaluateClosure(
    closure=None,
    input_items=None,
    output_items=None,
    *,
    active_input_index=0,
    active_output_index=0,
    define_signature=False,
)

Execute a given closure

Parameters

Name Type Description Default
closure InputClosure Closure None

Attributes

Name Description
active_input_index
active_output_index
define_signature
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

Methods

Name Description
sync_signature
sync_signature
sync_signature(node)

Inputs

Attribute Type Description
i.closure ClosureSocket Closure

FieldToGrid

FieldToGrid(topology=None, items=None, *, data_type='FLOAT')

Create new grids by evaluating new values on an existing volume grid topology

Data types are inferred automatically from the closest compatible data type.

Inputs:

topology: InputLinkable The grid which contains the topology to evaluate the different fields on. items: dict[str, InputAny] The key-value pairs of the fields to evaluate on the grid. Keys will be used as the name of the socket. data_type: _GridDataTypes = “FLOAT” The data type of the grid to evaluate on. Possible values are “FLOAT”, “INT”, “VECTOR”, “BOOLEAN”.

Attributes

Name Description
data_type
i
name The name of the node being wrapped by this instance.
node
o Output socket accessor. Subclasses narrow the return type via TYPE_CHECKING.
outputs
tree

Methods

Name Description
add_item Add a single item and return its handle.
add_items Add an item per mapping entry and return their handles by name.
boolean Data type for the topology grid
capture Add an item linked from value and return its output socket.
capture_boolean
capture_float
capture_integer
capture_vector
float Data type for the topology grid
integer Data type for the topology grid
vector Data type for the topology grid
add_item
add_item(name, value=None, *, type=None)

Add a single item and return its handle.

value may be a linkable (linked to the item’s input) or a plain default value; otherwise type (a socket-type string such as "FLOAT") declares the item unlinked.

add_items
add_items(items)

Add an item per mapping entry and return their handles by name.

Values may be linkables (linked to the new item’s input) or socket-type strings such as "FLOAT" (declare an unlinked item).

boolean
boolean(topology=None, items=None)

Data type for the topology grid

capture
capture(value, *, name=None)

Add an item linked from value and return its output socket.

The item is auto-named after the source socket unless name is given.

capture_boolean
capture_boolean(field=None, name=None)
capture_float
capture_float(field=None, name=None)
capture_integer
capture_integer(field=None, name=None)
capture_vector
capture_vector(field=None, name=None)
float
float(topology=None, items=None)

Data type for the topology grid

integer
integer(topology=None, items=None)

Data type for the topology grid

vector
vector(topology=None, items=None)

Data type for the topology grid

Float

Float(value=0.0)

Input numerical values to other nodes in the tree. A ‘type-hinted’ wrapper of the Value node.

Attributes

Name Description
i Input socket accessor. Subclasses narrow the return type via TYPE_CHECKING.
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.
value Input socket: Value

FloatCurve

FloatCurve(factor=1.0, value=1.0, *, items=())

Map an input float to a curve and outputs a float value

Parameters

Name Type Description Default
factor InputFloat Factor 1.0
value InputFloat Value 1.0
items Iterable[tuple[float, float] | tuple[float, float, Literal['AUTO', 'AUTO_CLAMPED', 'VECTOR']]] An iterable which contains items (x, y, Optional[handle_type]). The position values are between 0..1 and map the input value to the output value from the resulting curve interpolation. ()

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
outputs
points
tree The TreeBuilder instance this node belongs to and is being built within.

Inputs

Attribute Type Description
i.factor FloatSocket Factor
i.value FloatSocket Value

Outputs

Attribute Type Description
o.value FloatSocket Value

Frame

Frame(label=None, shrink=True, text=None)

Attributes

Name Description
i Input socket accessor. Subclasses narrow the return type via TYPE_CHECKING.
label
name The name of the node being wrapped by this instance.
node
o Output socket accessor. Subclasses narrow the return type via TYPE_CHECKING.
outputs
shrink
text
tree The TreeBuilder instance this node belongs to and is being built within.

GeometryToInstance

GeometryToInstance(*args)

Convert each input geometry into an instance, which can be much faster than the Join Geometry node when the inputs are large

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

Inputs

Attribute Type Description
geometry GeometrySocket Multi-input socket; geometry that will be converted into an instance

Outputs

Attribute Type Description
instances GeometrySocket Single geometry output with each input linked geometry as a separate instance

IndexSwitch

IndexSwitch(index=0, items=(), data_type='FLOAT')

Node builder for the Index Switch node

Attributes

Name Description
data_type Input socket: Data Type
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree

Methods

Name Description
add_item Add a single item and return its handle.
add_items Add an item per mapping entry and return their handles by name.
boolean
bundle
capture Add an item linked from value and return its output socket.
closure
collection
color
float
geometry
image
integer
material
matrix
menu
object
rotation
string
vector
add_item
add_item(name, value=None, *, type=None)

Add a single item and return its handle.

value may be a linkable (linked to the item’s input) or a plain default value; otherwise type (a socket-type string such as "FLOAT") declares the item unlinked.

add_items
add_items(items)

Add an item per mapping entry and return their handles by name.

Values may be linkables (linked to the new item’s input) or socket-type strings such as "FLOAT" (declare an unlinked item).

boolean
boolean(index=0, items=())
bundle
bundle(index=0, items=())
capture
capture(value, *, name=None)

Add an item linked from value and return its output socket.

The item is auto-named after the source socket unless name is given.

closure
closure(index=0, items=())
collection
collection(index=0, items=())
color
color(index=0, items=())
float
float(index=0, items=())
geometry
geometry(index=0, items=())
image
image(index=0, items=())
integer
integer(index=0, items=())
material
material(index=0, items=())
matrix
matrix(index=0, items=())
menu
menu(index=0, items=())
object
object(index=0, items=())
rotation
rotation(index=0, items=())
string
string(index=0, items=())
vector
vector(index=0, items=())

JoinGeometry

JoinGeometry(geometry=())

Merge separately generated geometries into a single one

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

JoinStrings

JoinStrings(strings=(), delimiter='')

Combine any number of input strings

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

MenuSwitch

MenuSwitch(menu=None, items=None, *, data_type='FLOAT')

Node builder for the Menu Switch node

Attributes

Name Description
data_type Input socket: Data Type
i
name The name of the node being wrapped by this instance.
node
o
outputs
tree

Methods

Name Description
add_item Add a single item and return its handle.
add_items Add an item per mapping entry and return their handles by name.
boolean
bundle
capture Add an item linked from value and return its output socket.
closure
collection
color
float
geometry
image
integer
is_selected Gets the boolean output socket that is True when the named menu item is selected.
material
matrix
menu
object
rotation
string
vector
add_item
add_item(name, value=None, *, type=None)

Add a single item and return its handle.

value may be a linkable (linked to the item’s input) or a plain default value; otherwise type (a socket-type string such as "FLOAT") declares the item unlinked.

add_items
add_items(items)

Add an item per mapping entry and return their handles by name.

Values may be linkables (linked to the new item’s input) or socket-type strings such as "FLOAT" (declare an unlinked item).

boolean
boolean(menu=None, items=None)
bundle
bundle(menu=None, items=None)
capture
capture(value, *, name=None)

Add an item linked from value and return its output socket.

The item is auto-named after the source socket unless name is given.

closure
closure(menu=None, items=None)
collection
collection(menu=None, items=None)
color
color(menu=None, items=None)
float
float(menu=None, items=None)
geometry
geometry(menu=None, items=None)
image
image(menu=None, items=None)
integer
integer(menu=None, items=None)
is_selected
is_selected(name)

Gets the boolean output socket that is True when the named menu item is selected.

Cannot be used with the “Output” name as this refers to the output socket itself.

Parameters
Name Type Description Default
name str The name of the menu item to get the selected socket for. required
Returns
Name Type Description
BooleanSocket The boolean output socket that is True when the named menu item is selected.
material
material(menu=None, items=None)
matrix
matrix(menu=None, items=None)
menu
menu(menu=None, items=None)
object
object(menu=None, items=None)
rotation
rotation(menu=None, items=None)
string
string(menu=None, items=None)
vector
vector(menu=None, items=None)

MeshBoolean

MeshBoolean(
    mesh_1=None,
    mesh_2=(),
    *,
    self_intersection=False,
    hole_tolerant=False,
    operation='DIFFERENCE',
    solver='FLOAT',
)

Cut, subtract, or join multiple mesh inputs

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
operation
outputs
solver
tree The TreeBuilder instance this node belongs to and is being built within.

Methods

Name Description
difference
intersect
union
difference
difference(
    mesh_1=None,
    items=(),
    self_intersection=False,
    hole_tolerant=False,
    *,
    solver='FLOAT',
)
intersect
intersect(
    items=(),
    self_intersection=False,
    hole_tolerant=False,
    *,
    solver='FLOAT',
)
union
union(items=(), self_intersection=False, hole_tolerant=False, *, solver='FLOAT')

SDFGridBoolean

SDFGridBoolean(operation='DIFFERENCE')

Cut, subtract, or join multiple SDF volume grid inputs

Attributes

Name Description
i
name The name of the node being wrapped by this instance.
node
o
operation
outputs
tree The TreeBuilder instance this node belongs to and is being built within.

Methods

Name Description
difference Create SDF Grid Boolean with operation ‘Difference’.
intersect
union
difference
difference(grid_1=None, grids=())

Create SDF Grid Boolean with operation ‘Difference’.

intersect
intersect(grids=())
union
union(grids=())

StoreNamedAttribute

StoreNamedAttribute(
    geometry=None,
    selection=True,
    name='',
    value=0.0,
    *,
    data_type='FLOAT',
    domain='POINT',
)

Store the result of a field on a geometry as an attribute with the specified name

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean Selection True
name InputString Name ''
value InputFloat Value 0.0

Attributes

Name Description
corner
data_type
domain
edge
face
i
instance
layer
name The name of the node being wrapped by this instance.
node
o
outputs
point
spline
tree The TreeBuilder instance this node belongs to and is being built within.

Inputs

Attribute Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket Selection
i.name StringSocket Name
i.value FloatSocket Value

Outputs

Attribute Type Description
o.geometry GeometrySocket Geometry

Value

Value(value=0.0)

Input numerical values to other nodes in the tree

Attributes

Name Description
i Input socket accessor. Subclasses narrow the return type via TYPE_CHECKING.
name The name of the node being wrapped by this instance.
node
o
outputs
tree The TreeBuilder instance this node belongs to and is being built within.
value Input socket: Value