Geometry

General geometry processing utilities

Centre on Selection

nodes.geometry.CentreOnSelection(atoms=None, selection=True, group_id=0)

GUI reference: Centre on Selection.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Selection within the groups to calculate the centroid for, which then affects all other points in the group True
group_id InputInteger Optionally centre the points separately for each group based on the Group ID input 0

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Selection within the groups to calculate the centroid for, which then affects all other points in the group
i.group_id IntegerSocket Optionally centre the points separately for each group based on the Group ID input

Outputs

Name Type Description
o.atoms GeometrySocket Atoms that have been moved to object origin based on their group’s calculated centroid
o.offset VectorSocket The calculated vector offset that was applied to the points

Check Geometry

nodes.geometry.CheckGeometry(
    geometry=None,
    message='Input contains no geometry, check your node connections.',
)

GUI reference: Check Geometry.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
message InputString Message 'Input contains no geometry, check your node connections.'

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.message StringSocket Message

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Clear Instance Transforms

nodes.geometry.ClearInstanceTransforms(
    geometry=None,
    selection=True,
    realize_all=False,
)

GUI reference: Clear Instance Transforms.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean Selection True
realize_all InputBoolean Realize all levels of nested instances for a top-level instances. Overrides the value of the Depth input False

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket Selection
i.realize_all BooleanSocket Realize all levels of nested instances for a top-level instances. Overrides the value of the Depth input

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Contains Geometry

nodes.geometry.ContainsGeometry(geometry=None)

GUI reference: Contains Geometry.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None

Inputs

Name Type Description
i.geometry GeometrySocket Geometry

Outputs

Name Type Description
o.not_empty BooleanSocket True when the input contains some geometry
o.empty BooleanSocket True when the input contains no geometry

Curve Visualize

nodes.geometry.CurveVisualize(
    curve=None,
    selection=True,
    position=None,
    normal=None,
    handles=False,
    value=3.0,
    arrow_size=2.0,
)

GUI reference: Curve Visualize.

Parameters

Name Type Description Default
curve InputGeometry Curve None
selection InputBoolean Selection True
position InputVector Position None
normal InputVector Normal None
handles InputBoolean Handles False
value InputFloat Value 3.0
arrow_size InputFloat Arrow Size 2.0

Inputs

Name Type Description
i.curve GeometrySocket Curve
i.selection BooleanSocket Selection
i.position VectorSocket Position
i.normal VectorSocket Normal
i.handles BooleanSocket Handles
i.value FloatSocket Value
i.arrow_size FloatSocket Arrow Size

Outputs

Name Type Description
o.instances GeometrySocket Instances

Evaluate on Instances

nodes.geometry.EvaluateOnInstances(geometry=None, closure=None)

GUI reference: Evaluate on Instances.

Parameters

Name Type Description Default
geometry InputGeometry Geometry to split into two parts None
closure InputClosure Closure None

Inputs

Name Type Description
i.geometry GeometrySocket Geometry to split into two parts
i.closure ClosureSocket Closure

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Evaluate Ordered Bundles

nodes.geometry.EvaluateOrderedBundles(geometry=None, bundles=None, prefix='MN*')

GUI reference: Evaluate Ordered Bundles.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
bundles InputBundle Bundles None
prefix InputString Prefix 'MN*'

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.bundles BundleSocket Bundles
i.prefix StringSocket Prefix

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Evluate While Planar

nodes.geometry.EvluateWhilePlanar(geometry=None, selection=True, closure=None)

GUI reference: Evluate While Planar.

Parameters

Name Type Description Default
geometry InputGeometry Geometry to transform None
selection InputBoolean The parts of the geometry that contibute to the planar calculation True
closure InputClosure Closure None

Inputs

Name Type Description
i.geometry GeometrySocket Geometry to transform
i.selection BooleanSocket The parts of the geometry that contibute to the planar calculation
i.closure ClosureSocket Closure

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Fallback Geometry

nodes.geometry.FallbackGeometry(geometry=None, fallback=None)

GUI reference: Fallback Geometry.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
fallback InputGeometry Fallback None

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.fallback GeometrySocket Fallback

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Geoemtry to Planar

nodes.geometry.GeoemtryToPlanar(geometry=None, selection=True)

GUI reference: Geoemtry to Planar.

Parameters

Name Type Description Default
geometry InputGeometry Geometry to transform None
selection InputBoolean The parts of the geometry that contibute to the planar calculation True

Inputs

Name Type Description
i.geometry GeometrySocket Geometry to transform
i.selection BooleanSocket The parts of the geometry that contibute to the planar calculation

Outputs

Name Type Description
o.geometry GeometrySocket Geometry
o.transform MatrixSocket Transform

Lag Geometry

nodes.geometry.LagGeometry(
    input=None,
    selection=True,
    count=5,
    realize_all=True,
)

GUI reference: Lag Geometry.

Parameters

Name Type Description Default
input InputGeometry Input None
selection InputBoolean The parts of the geometry that go into the first output True
count InputInteger Number of frames to lag. 5
realize_all InputBoolean Realize all levels of nested instances for a top-level instances. Overrides the value of the Depth input True

Inputs

Name Type Description
i.input GeometrySocket Input
i.selection BooleanSocket The parts of the geometry that go into the first output
i.count IntegerSocket Number of frames to lag.
i.realize_all BooleanSocket Realize all levels of nested instances for a top-level instances. Overrides the value of the Depth input

Outputs

Name Type Description
o.geometry GeometrySocket Geometry
o.lag_index IntegerSocket Lag Index
o.index IntegerSocket Index

Offset Curve

nodes.geometry.OffsetCurve(curve=None, points=0.0)

GUI reference: Offset Curve.

Parameters

Name Type Description Default
curve InputGeometry Curve None
points InputFloat Number of points to offset and sample position and normal by. Fractions sample between the points along the curve. 0.0

Inputs

Name Type Description
i.curve GeometrySocket Curve
i.points FloatSocket Number of points to offset and sample position and normal by. Fractions sample between the points along the curve.

Outputs

Name Type Description
o.curve GeometrySocket Curve
o.factor FloatSocket The pre-offset factor for the curve’s point

Plexus

nodes.geometry.Plexus(points=None, sort=True, distance=0.5, radius=1.0)

GUI reference: Plexus.

Parameters

Name Type Description Default
points InputGeometry Points None
sort InputBoolean Sort the resulting points so their Index matches the input geometry True
distance InputFloat Distance 0.5
radius InputFloat Radius 1.0

Inputs

Name Type Description
i.points GeometrySocket Points
i.sort BooleanSocket Sort the resulting points so their Index matches the input geometry
i.distance FloatSocket Distance
i.radius FloatSocket Radius

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Primitive Arrow

nodes.geometry.PrimitiveArrow(
    vertices=6,
    height=1.0,
    ratio=0.7,
    value=None,
    material=None,
)

GUI reference: Primitive Arrow.

Parameters

Name Type Description Default
vertices InputInteger Vertices 6
height InputFloat Height 1.0
ratio InputFloat Ratio 0.7
value InputColor Value None
material InputMaterial Material to apply to the resulting geometry None

Inputs

Name Type Description
i.vertices IntegerSocket Vertices
i.height FloatSocket Height
i.ratio FloatSocket Ratio
i.value ColorSocket Value
i.material MaterialSocket Material to apply to the resulting geometry

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Primitive Gimbal

nodes.geometry.PrimitiveGimbal(
    vertices=6,
    x=None,
    y=None,
    z=None,
    material=None,
    height=1.0,
)

GUI reference: Primitive Gimbal.

Parameters

Name Type Description Default
vertices InputInteger Vertices 6
x InputColor X None
y InputColor Y None
z InputColor Z None
material InputMaterial Material to apply to the resulting geometry None
height InputFloat Height 1.0

Inputs

Name Type Description
i.vertices IntegerSocket Vertices
i.x ColorSocket X
i.y ColorSocket Y
i.z ColorSocket Z
i.material MaterialSocket Material to apply to the resulting geometry
i.height FloatSocket Height

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Separate First Point

nodes.geometry.SeparateFirstPoint(geometry=None, sort=True, group_id=0)

Separate the first point for each Group ID and return only those points. Optionally sort by the Group ID as well

GUI reference: Separate First Point.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
sort InputBoolean Sort by Group ID after separating True
group_id InputInteger Group ID 0

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.sort BooleanSocket Sort by Group ID after separating
i.group_id IntegerSocket Group ID

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Slice Edge Instances

nodes.geometry.SliceEdgeInstances(instances=None, selection=True)

GUI reference: Slice Edge Instances.

Parameters

Name Type Description Default
instances InputGeometry Instances None
selection InputBoolean Selection True

Inputs

Name Type Description
i.instances GeometrySocket Instances
i.selection BooleanSocket Selection

Outputs

Name Type Description
o.instances GeometrySocket Instances
o.realized_points GeometrySocket Realized Points

Split to Centred Instances

nodes.geometry.SplitToCentredInstances(
    geometry=None,
    selection=True,
    group_id=0,
)

GUI reference: Split to Centred Instances.

Parameters

Name Type Description Default
geometry InputGeometry The input geometry containing points None
selection InputBoolean Selected points will be used to calculate centre point for Instance True
group_id InputInteger The Group ID which will determine how the points are split into their different instances 0

Inputs

Name Type Description
i.geometry GeometrySocket The input geometry containing points
i.selection BooleanSocket Selected points will be used to calculate centre point for Instance
i.group_id IntegerSocket The Group ID which will determine how the points are split into their different instances

Outputs

Name Type Description
o.instances GeometrySocket The points that have been split into their instances

Visualize Angle

nodes.geometry.VisualizeAngle(
    points=None,
    selection=True,
    position=None,
    angle=0.5,
    length=0.005,
    up=None,
    axis=None,
    radius=0.2,
)

GUI reference: Visualize Angle.

Parameters

Name Type Description Default
points InputGeometry Points None
selection InputBoolean Selection True
position InputVector Position None
angle InputFloat Angle 0.5
length InputFloat Length 0.005
up InputVector Up None
axis InputVector Axis None
radius InputFloat Radius 0.2

Inputs

Name Type Description
i.points GeometrySocket Points
i.selection BooleanSocket Selection
i.position VectorSocket Position
i.angle FloatSocket Angle
i.length FloatSocket Length
i.up VectorSocket Up
i.axis VectorSocket Axis
i.radius FloatSocket Radius

Outputs

Name Type Description
o.mesh GeometrySocket Mesh
o.curve GeometrySocket Curve

Visualize Points

nodes.geometry.VisualizePoints(
    points=None,
    selection=True,
    target=None,
    position=None,
)

GUI reference: Visualize Points.

Parameters

Name Type Description Default
points InputGeometry Points None
selection InputBoolean Selection True
target InputVector Vector that is the target None
position InputVector Position of the current point None

Inputs

Name Type Description
i.points GeometrySocket Points
i.selection BooleanSocket Selection
i.target VectorSocket Vector that is the target
i.position VectorSocket Position of the current point

Outputs

Name Type Description
o.instances GeometrySocket Instances