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 | Frame for visually grouping nodes in the editor. |
| 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 |
|
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 |
|
items |
The captured items: input is the field, output the |
layer |
|
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
point |
|
tree |
Methods
| Name | Description |
|---|---|
| add_item | Deprecated: use items.new(value, name, type=). |
| add_items | Deprecated: use items.new(value, name) per item. |
| capture | Deprecated: use items.new(value, name).output. |
add_item
add_item(name, value=None, *, type=None)Deprecated: use items.new(value, name, type=).
add_items
add_items(items)Deprecated: use items.new(value, name) per item.
capture
capture(value, *, name=None)Deprecated: use items.new(value, name).output.
ColorRamp
ColorRamp(
factor=0.5,
*,
items=_COLOR_RAMP_DEFAULT_ITEMS,
color_interpolation='LINEAR',
hue_interpolation='NEAR',
mode='RGB',
)Map values to colors with the use of a gradient
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| factor | InputFloat | Factor: Which is used to sample the ColorRamp for the output color. | 0.5 |
| items | Iterable[tuple[float, tuple[float, float, float float]] | tuple[float, 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. Items can also be flat (position, r, g, b, a), so an (N, 5) numpy array works. Defaults to black at 0.0 and white at 1.0. At least one item is required. |
_COLOR_RAMP_DEFAULT_ITEMS |
Attributes
| Name | Description |
|---|---|
color_interpolation |
|
elements |
|
hue_interpolation |
|
i |
|
mode |
|
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
tree |
The TreeBuilder instance this node belongs to and is being built within. |
Inputs
| Attribute | Type | Description |
|---|---|---|
i.factor |
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 factor. |
o.alpha |
FloatSocket |
Alpha: The mapped alpha of the color based on the input factor. |
Compare
Compare(operation='GREATER_THAN', data_type='FLOAT', **kwargs)Perform a comparison operation on the two given inputs
Attributes
| Name | Description |
|---|---|
collection |
|
color |
|
data_type |
|
float |
|
font |
|
i |
|
image |
|
integer |
|
material |
|
mode |
|
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
object |
|
operation |
|
sound |
|
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 |
|
inputs |
The values fed into the closure. |
items |
The node’s items; subclasses return their typed collection. |
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
outputs |
The results read from the closure. |
tree |
Methods
| Name | Description |
|---|---|
| add_item | Deprecated: use items.new(value, name, type=). |
| add_items | Deprecated: use items.new(value, name) per item. |
| capture | Deprecated: use items.new(value, name).output. |
| sync_signature |
add_item
add_item(name, value=None, *, type=None)Deprecated: use items.new(value, name, type=).
add_items
add_items(items)Deprecated: use items.new(value, name) per item.
capture
capture(value, *, name=None)Deprecated: use items.new(value, name).output.
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 |
|
items |
The evaluated items: input is the field, output the grid. |
name |
The name of the node being wrapped by this instance. |
node |
|
o |
Output socket accessor. Subclasses narrow the return type via TYPE_CHECKING. |
tree |
Methods
| Name | Description |
|---|---|
| add_item | Deprecated: use items.new(value, name, type=). |
| add_items | Deprecated: use items.new(value, name) per item. |
| boolean | Data type for the topology grid |
| capture | Deprecated: use items.new(value, name).output. |
| 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)Deprecated: use items.new(value, name, type=).
add_items
add_items(items)Deprecated: use items.new(value, name) per item.
boolean
boolean(topology=None, items=None)Data type for the topology grid
capture
capture(value, *, name=None)Deprecated: use items.new(value, name).output.
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 |
|
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=_FLOAT_CURVE_DEFAULT_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. Defaults to a straight line from (0, 0) to (1, 1). At least two items are required. |
_FLOAT_CURVE_DEFAULT_ITEMS |
Attributes
| Name | Description |
|---|---|
i |
|
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
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)Frame for visually grouping nodes in the editor.
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. |
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 |
|
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=None)Node builder for the Index Switch node
Attributes
| Name | Description |
|---|---|
data_type |
Input socket: Data Type |
i |
|
items |
The switch’s items, one input socket each. |
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
tree |
Methods
| Name | Description |
|---|---|
| add_item | Deprecated: use items.new(value, name, type=). |
| add_items | Deprecated: use items.new(value, name) per item. |
| boolean | |
| bundle | |
| capture | Deprecated: use items.new(value, name).output. |
| closure | |
| collection | |
| color | |
| float | |
| font | |
| geometry | |
| image | |
| integer | |
| material | |
| matrix | |
| menu | |
| object | |
| rotation | |
| sound | |
| string | |
| vector |
add_item
add_item(name, value=None, *, type=None)Deprecated: use items.new(value, name, type=).
add_items
add_items(items)Deprecated: use items.new(value, name) per item.
boolean
boolean(index=0, items=())bundle
bundle(index=0, items=())capture
capture(value, *, name=None)Deprecated: use items.new(value, name).output.
closure
closure(index=0, items=())collection
collection(index=0, items=())color
color(index=0, items=())float
float(index=0, items=())font
font(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=())sound
sound(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 |
|
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 |
|
tree |
The TreeBuilder instance this node belongs to and is being built within. |
MenuSwitch
MenuSwitch(menu=None, items=None, *, data_type=None)Node builder for the Menu Switch node
Attributes
| Name | Description |
|---|---|
data_type |
Input socket: Data Type |
i |
|
items |
The menu’s items, one input socket each. |
name |
The name of the node being wrapped by this instance. |
node |
|
o |
|
tree |
Methods
| Name | Description |
|---|---|
| add_item | Deprecated: use items.new(value, name, type=). |
| add_items | Deprecated: use items.new(value, name) per item. |
| boolean | |
| bundle | |
| capture | Deprecated: use items.new(value, name).output. |
| closure | |
| collection | |
| color | |
| float | |
| font | |
| geometry | |
| image | |
| integer | |
| is_selected | Gets the boolean output socket that is True when the named menu item is selected. |
| item | Deprecated: use items.new(value, name, description=). |
| material | |
| matrix | |
| menu | |
| object | |
| rotation | |
| sound | |
| string | |
| vector |
add_item
add_item(name, value=None, *, type=None)Deprecated: use items.new(value, name, type=).
add_items
add_items(items)Deprecated: use items.new(value, name) per item.
boolean
boolean(menu=None, items=None)bundle
bundle(menu=None, items=None)capture
capture(value, *, name=None)Deprecated: use items.new(value, name).output.
closure
closure(menu=None, items=None)collection
collection(menu=None, items=None)color
color(menu=None, items=None)float
float(menu=None, items=None)font
font(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. |
item
item(name, value=None, *, description=None)Deprecated: use items.new(value, name, description=).
material
material(menu=None, items=None)matrix
matrix(menu=None, items=None)object
object(menu=None, items=None)rotation
rotation(menu=None, items=None)sound
sound(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 |
|
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(grid_1=None, grid_2=(), *, 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 |
|
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 | Create SDF Grid Boolean with operation ‘Intersect’. |
| union | Create SDF Grid Boolean with operation ‘Union’. |
difference
difference(grid_1=None, grids=())Create SDF Grid Boolean with operation ‘Difference’.
intersect
intersect(grids=())Create SDF Grid Boolean with operation ‘Intersect’.
union
union(grids=())Create SDF Grid Boolean with operation ‘Union’.
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 |
|
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 |
|
tree |
The TreeBuilder instance this node belongs to and is being built within. |
value |
Input socket: Value |