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=())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)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 |