pf.nodes
Submodules
pf.nodes.compositor —
procfunc.nodes.compositorpf.nodes.func —
procfunc.nodes.funcpf.nodes.geo —
procfunc.nodes.geopf.nodes.math —
procfunc.nodes.mathpf.nodes.shader —
procfunc.nodes.shader
Members
- class procfunc.nodes.ProcNode[source]
Bases:
Generic[T]Result datatype for all functions that return shader nodes, geometry nodes or compositor nodes.
ProcNode stores the data necessary to construct a blender nodegroup upon later execution.
ProcNode defines dunders to allow concise construction of nodegraphs e.g. __getattr__ and __add__, which map to appropriate blender nodes.
- astype(dtype)[source]
Marks a node as having been converted to a different internal data type, similarly to np.astype
Currently this just adds runtime NodeType data to help subsequent type-inferred functions/operators make a correct choice of data_type.
e.g noise.color + (0.5, 0.5, 0.5) fails but noise.color.astype(t.Vector) + (0.5, 0.5, 0.5) works, because + is defined for Vector but not Color
Supported special methods:
__add__,__mod__,__mul__,__pow__,__radd__,__req__,__rge__,__rgt__,__rle__,__rlt__,__rmod__,__rmul__,__rne__,__rpow__,__rsub__,__rtruediv__,__sub__,__truediv__
- class procfunc.nodes.Shader[source]
Bases:
objectUsed only for type-annotating nodes as returning a shader.
Anythnig that would be a green socket in a SHADER nodegraph should be ProcNode[Shader]
- class procfunc.nodes.NodeDataType[source]
Bases:
Enum- INT = 'INT'
- FLOAT = 'FLOAT'
- RGBA = 'RGBA'
- FLOAT_VECTOR = 'FLOAT_VECTOR'
- FLOAT_VECTOR_2D = 'FLOAT2'
- ROTATION = 'ROTATION'
- STRING = 'STRING'
- BOOLEAN = 'BOOLEAN'
- FLOAT_MATRIX = 'FLOAT_MATRIX'
- OBJECT = 'OBJECT'
- GEOMETRY = 'GEOMETRY'
- SHADER = 'SHADER'
- COLLECTION = 'COLLECTION'
- MATERIAL = 'MATERIAL'
Supported special methods:
__contains__,__getitem__,__iter__,__len__
- class procfunc.nodes.NodeGroupType[source]
Bases:
Enum- GEOMETRY = 'GeometryNodeTree'
- SHADER = 'ShaderNodeTree'
- COMPOSITOR = 'CompositorNodeTree'
- TEXTURE = 'TextureNodeTree'
Supported special methods:
__contains__,__getitem__,__iter__,__len__
- class procfunc.nodes.SocketType[source]
Bases:
Enum- FLOAT = 'NodeSocketFloat'
- INT = 'NodeSocketInt'
- VECTOR = 'NodeSocketVector'
- ROTATION = 'NodeSocketRotation'
- COLOR = 'NodeSocketColor'
- BOOLEAN = 'NodeSocketBool'
- STRING = 'NodeSocketString'
- GEOMETRY = 'NodeSocketGeometry'
- SHADER = 'NodeSocketShader'
- OBJECT = 'NodeSocketObject'
- COLLECTION = 'NodeSocketCollection'
- TEXTURE = 'NodeSocketTexture'
- MATERIAL = 'NodeSocketMaterial'
Supported special methods:
__contains__,__getitem__,__iter__,__len__
- procfunc.nodes.as_nodegroup(graph, node_tree_type)[source]
- Parameters:
graph (ComputeGraph)
node_tree_type (NodeGroupType)
- Return type:
- procfunc.nodes.to_aliases(geometry)[source]
Convert instanced geometry into aliases - separate objects sharing the same mesh data.
Uses depsgraph to extract instance transforms and creates one bpy.data.object per instance. All aliases point directly to the original mesh data from the scene - no copying occurs. Each alias has its own transform (position, rotation, scale) but shares mesh data.
Note: Requires geometry nodes that use actual bpy.data.collections with real objects (via collection_info node), not just joined geometry. The instances must be visible in the viewport (show_viewport=True) to be detected by the depsgraph.
- Parameters:
geometry (ProcNode[MeshObject]) – node producing instanced geometry (e.g., from instance_on_points)
- Returns:
list of MeshObject, one per instance, with each instance pointing to the original mesh data from the scene
- Return type:
- procfunc.nodes.to_curve_object(geometry)[source]
WARNING: currently discards any bezier config or knots, only extracts the points.Any
TODO: Need a better geonodes -> curve op from blender, or need to engineer this in via attribute extraction.
- Parameters:
geometry (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.to_light(light, surface)[source]
Apply a shader node graph to a light’s internal node tree.
- Parameters:
light (LightObject)
- Return type:
- procfunc.nodes.to_mesh_object(geometry, _skip_apply=False)[source]
- Parameters:
geometry (ProcNode[MeshObject])
_skip_apply (bool)
- Return type:
- procfunc.nodes.to_objects_multi(geometries, attributes=None)[source]
Convert a nodegroup which has multiple output geometries into multiple realized objects.
If the objects should have any attributes, provide node definitions for them in the ‘attributes’ argument.
- Parameters:
geometries (dict[str, ProcNode[MeshObject]]) – named output geometry nodes to be converted into objects
attributes (dict[str, dict[str, ProcNode[Vector | Color | float | int | str | bool | Matrix | Quaternion]]] | None) – named data attributes which should be annotated on those objects. keys must be a subset of the keys of ‘geometries’
input_obj – optional input object to use for the geometry nodegroups
- Returns:
dict of {output_key: object}. output keys are the same as the keys of ‘geometries’
- Return type:
result_objects
pf.nodes.compositor
Auto-generated Compositor Node bindings for Blender
- class procfunc.nodes.compositor.RenderLayersResult[source]
Bases:
objectSupported special methods:
__getattr__
- procfunc.nodes.compositor.render_layers()[source]
Uses a RenderLayers Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/scene/render_layers.html
- Return type:
- procfunc.nodes.compositor.alpha_over(fac=1.0, image_0=(1, 1, 1, 1), image_1=(1, 1, 1, 1), premul=0.0, use_premultiply=False)[source]
Uses a AlphaOver Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/alpha_over.html
- procfunc.nodes.compositor.anti_aliasing(image=(1, 1, 1, 1), contrast_limit=0.2, corner_rounding=0.25, threshold=1.0)[source]
Uses a AntiAliasing Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/anti_aliasing.html
- procfunc.nodes.compositor.bilateralblur(image=(1, 1, 1, 1), determinator=(1, 1, 1, 1), iterations=1, sigma_color=0.3, sigma_space=5.0)[source]
Uses a Bilateralblur Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/bilateral_blur.html
- procfunc.nodes.compositor.blur(image=(1, 1, 1, 1), size=1.0, aspect_correction='NONE', factor=0.0, factor_x=0.0, factor_y=0.0, filter_type='GAUSS', size_x=0, size_y=0, use_bokeh=False, use_extended_bounds=False, use_gamma_correction=False, use_relative=False, use_variable_size=False)[source]
Uses a Blur Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/blur.html
- Parameters:
image (ProcNode[Color] | Color)
aspect_correction (Literal['NONE', 'Y', 'X'])
factor (float)
factor_x (float)
factor_y (float)
filter_type (Literal['FLAT', 'TENT', 'QUAD', 'CUBIC', 'GAUSS', 'FAST_GAUSS', 'CATROM', 'MITCH'])
size_x (int)
size_y (int)
use_bokeh (bool)
use_extended_bounds (bool)
use_gamma_correction (bool)
use_relative (bool)
use_variable_size (bool)
- Return type:
- procfunc.nodes.compositor.bokeh_blur(image=(0.8, 0.8, 0.8, 1), bokeh=(1, 1, 1, 1), size=1.0, bounding_box=1.0, blur_max=16.0, use_extended_bounds=False, use_variable_size=False)[source]
Uses a BokehBlur Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/bokeh_blur.html
- procfunc.nodes.compositor.bokeh_image(angle=0.0, catadioptric=0.0, flaps=5, rounding=0.0, shift=0.0)[source]
Uses a BokehImage Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/bokeh_image.html
- procfunc.nodes.compositor.box_mask(mask=0.0, value=1.0, mask_height=0.1, mask_type='ADD', mask_width=0.2, rotation=0.0, x=0.5, y=0.5)[source]
Uses a BoxMask Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/mask/box_mask.html
- procfunc.nodes.compositor.bright_contrast(image=(1, 1, 1, 1), bright=0.0, contrast=0.0, use_premultiply=True)[source]
Uses a BrightContrast Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/bright_contrast.html
- procfunc.nodes.compositor.channel_matte(image=(1, 1, 1, 1), color_space='RGB', limit_channel='R', limit_max=1.0, limit_method='MAX', limit_min=0.0, matte_channel='G')[source]
Uses a ChannelMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/channel_key.html
- procfunc.nodes.compositor.chroma_matte(image=(1, 1, 1, 1), key_color=(1, 1, 1, 1), gain=1.0, lift=0.0, shadow_adjust=0.0, threshold=0.174533, tolerance=0.523599)[source]
Uses a ChromaMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/chroma_key.html
- procfunc.nodes.compositor.color_balance(fac=1.0, image=(1, 1, 1, 1), correction_method='LIFT_GAMMA_GAIN', gain=(1.0, 1.0, 1.0), gamma=(1.0, 1.0, 1.0), lift=(1.0, 1.0, 1.0), offset=(0.0, 0.0, 0.0), offset_basis=0.0, power=(1.0, 1.0, 1.0), slope=(1.0, 1.0, 1.0))[source]
Uses a ColorBalance Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/color_balance.html
- procfunc.nodes.compositor.color_correction(image=(1, 1, 1, 1), mask=1.0, blue=True, green=True, highlights_contrast=1.0, highlights_gain=1.0, highlights_gamma=1.0, highlights_lift=0.0, highlights_saturation=1.0, master_contrast=1.0, master_gain=1.0, master_gamma=1.0, master_lift=0.0, master_saturation=1.0, midtones_contrast=1.0, midtones_end=0.7, midtones_gain=1.0, midtones_gamma=1.0, midtones_lift=0.0, midtones_saturation=1.0, midtones_start=0.2, red=True, shadows_contrast=1.0, shadows_gain=1.0, shadows_gamma=1.0, shadows_lift=0.0, shadows_saturation=1.0)[source]
Uses a ColorCorrection Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/color_correction.html
- Parameters:
image (ProcNode[Color] | Color)
blue (bool)
green (bool)
highlights_contrast (float)
highlights_gain (float)
highlights_gamma (float)
highlights_lift (float)
highlights_saturation (float)
master_contrast (float)
master_gain (float)
master_gamma (float)
master_lift (float)
master_saturation (float)
midtones_contrast (float)
midtones_end (float)
midtones_gain (float)
midtones_gamma (float)
midtones_lift (float)
midtones_saturation (float)
midtones_start (float)
red (bool)
shadows_contrast (float)
shadows_gain (float)
shadows_gamma (float)
shadows_lift (float)
shadows_saturation (float)
- Return type:
- procfunc.nodes.compositor.color_matte(image=(1, 1, 1, 1), key_color=(1, 1, 1, 1), color_hue=0.01, color_saturation=0.1, color_value=0.1)[source]
Uses a ColorMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/color_key.html
- procfunc.nodes.compositor.color_spill(image=(1, 1, 1, 1), fac=1.0, channel='G', limit_channel='R', limit_method='SIMPLE', ratio=1.0, unspill_blue=0.0, unspill_green=0.0, unspill_red=0.0, use_unspill=False)[source]
Uses a ColorSpill Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/color_spill.html
- Parameters:
- Return type:
- procfunc.nodes.compositor.comb_hsva(h=0.0, s=0.0, v=0.0, a=1.0)[source]
Uses a CombHSVA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/combine_color.html
- procfunc.nodes.compositor.comb_rgba(r=0.0, g=0.0, b=0.0, a=1.0)[source]
Uses a CombRGBA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/combine_color.html
- procfunc.nodes.compositor.comb_ycca(y=0.0, cb=0.5, cr=0.5, a=1.0, mode='ITUBT709')[source]
Uses a CombYCCA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/combine_color.html
- procfunc.nodes.compositor.comb_yuva(y=0.0, u=0.0, v=0.0, a=1.0)[source]
Uses a CombYUVA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/combine_color.html
- procfunc.nodes.compositor.combine_color(red=0.0, green=0.0, blue=0.0, alpha=1.0, mode='RGB', ycc_mode='ITUBT709')[source]
Uses a CombineColor Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/combine_color.html
- procfunc.nodes.compositor.combine_xyz(x=0.0, y=0.0, z=0.0)[source]
Uses a CombineXYZ Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/vector/combine_xyz.html
- procfunc.nodes.compositor.composite(image=(0, 0, 0, 1), alpha=1.0, use_alpha=True)[source]
Uses a Composite Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/output/composite.html
- procfunc.nodes.compositor.convert_color_space(image=(1, 1, 1, 1), from_color_space='Linear Rec.709', to_color_space='Linear Rec.709')[source]
Uses a ConvertColorSpace Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/convert_colorspace.html
- Parameters:
image (ProcNode[Color] | Color)
from_color_space (Literal['ACES2065-1', 'ACEScg', 'AgX Base Display P3', 'AgX Base Rec.1886', 'AgX Base Rec.2020', 'AgX Base sRGB', 'AgX Log', 'Display P3', 'Filmic Log', 'Filmic sRGB', 'Khronos PBR Neutral sRGB', 'Linear CIE-XYZ D65', 'Linear CIE-XYZ E', 'Linear DCI-P3 D65', 'Linear FilmLight E-Gamut', 'Linear Rec.2020', 'Linear Rec.709', 'Non-Color', 'Rec.1886', 'Rec.2020', 'sRGB'])
to_color_space (Literal['ACES2065-1', 'ACEScg', 'AgX Base Display P3', 'AgX Base Rec.1886', 'AgX Base Rec.2020', 'AgX Base sRGB', 'AgX Log', 'Display P3', 'Filmic Log', 'Filmic sRGB', 'Khronos PBR Neutral sRGB', 'Linear CIE-XYZ D65', 'Linear CIE-XYZ E', 'Linear DCI-P3 D65', 'Linear FilmLight E-Gamut', 'Linear Rec.2020', 'Linear Rec.709', 'Non-Color', 'Rec.1886', 'Rec.2020', 'sRGB'])
- Return type:
- procfunc.nodes.compositor.corner_pin(image=(1, 1, 1, 1), upper_left=(0, 1, 0), upper_right=(1, 1, 0), lower_left=(0, 0, 0), lower_right=(1, 0, 0))[source]
Uses a CornerPin Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/corner_pin.html
- procfunc.nodes.compositor.crop(image=(1, 1, 1, 1), max_x=0, max_y=0, min_x=0, min_y=0, rel_max_x=0.0, rel_max_y=0.0, rel_min_x=0.0, rel_min_y=0.0, relative=False, use_crop_size=False)[source]
Uses a Crop Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/crop.html
- procfunc.nodes.compositor.cryptomatte(image=(0, 0, 0, 1), crypto_00=(0, 0, 0, 1), crypto_01=(0, 0, 0, 1), crypto_02=(0, 0, 0, 1), add=(0.0, 0.0, 0.0), matte_id='', remove=(0.0, 0.0, 0.0))[source]
Uses a Cryptomatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/mask/cryptomatte.html
- procfunc.nodes.compositor.curve_rgb(fac=1.0, image=(1, 1, 1, 1), black_level=(0, 0, 0, 1), white_level=(1, 1, 1, 1))[source]
Uses a CurveRGB Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/rgb_curves.html
- procfunc.nodes.compositor.curve_vec(vector=(0, 0, 0))[source]
Uses a CurveVec Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/rgb_curves.html
- procfunc.nodes.compositor.d_blur(image=(1, 1, 1, 1), angle=0.0, center_x=0.5, center_y=0.5, distance=0.0, iterations=1, spin=0.0, zoom=0.0)[source]
Uses a DBlur Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/directional_blur.html
- procfunc.nodes.compositor.defocus(image=(1, 1, 1, 1), z=1.0, angle=0.0, blur_max=16.0, bokeh='CIRCLE', f_stop=128.0, scene=None, threshold=1.0, use_gamma_correction=False, use_preview=True, use_zbuffer=False, z_scale=1.0)[source]
Uses a Defocus Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/defocus.html
- Parameters:
- Return type:
- procfunc.nodes.compositor.denoise(image=(1, 1, 1, 1), normal=(0, 0, 0), albedo=(1, 1, 1, 1), prefilter='ACCURATE', use_hdr=True)[source]
Uses a Denoise Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/denoise.html
- procfunc.nodes.compositor.despeckle(fac=1.0, image=(1, 1, 1, 1), threshold=0.5, threshold_neighbor=0.5)[source]
Uses a Despeckle Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/despeckle.html
- procfunc.nodes.compositor.diff_matte(image_1=(1, 1, 1, 1), image_2=(1, 1, 1, 1), falloff=0.1, tolerance=0.1)[source]
Uses a DiffMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/difference_key.html
- procfunc.nodes.compositor.dilate_erode(mask=0.0, distance=0, edge=0.0, falloff='SMOOTH', mode='STEP')[source]
Uses a DilateErode Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/dilate_erode.html
- procfunc.nodes.compositor.displace(image=(1, 1, 1, 1), vector=(1, 1, 1), x_scale=0.0, y_scale=0.0)[source]
Uses a Displace Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/displace.html
- procfunc.nodes.compositor.distance_matte(image=(1, 1, 1, 1), key_color=(1, 1, 1, 1), channel='RGB', falloff=0.1, tolerance=0.1)[source]
Uses a DistanceMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/distance_key.html
- procfunc.nodes.compositor.double_edge_mask(inner_mask=0.8, outer_mask=0.8, edge_mode='BLEED_OUT', inner_mode='ALL')[source]
Uses a DoubleEdgeMask Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/mask/double_edge_mask.html
- procfunc.nodes.compositor.ellipse_mask(mask=0.0, value=1.0, mask_height=0.1, mask_type='ADD', mask_width=0.2, rotation=0.0, x=0.5, y=0.5)[source]
Uses a EllipseMask Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/mask/ellipse_mask.html
- procfunc.nodes.compositor.exposure(image=(1, 1, 1, 1), exposure=0.0)[source]
Uses a Exposure Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/exposure.html
- procfunc.nodes.compositor.filter(fac=1.0, image=(1, 1, 1, 1), filter_type='SOFTEN')[source]
Uses a Filter Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/filter.html
- procfunc.nodes.compositor.flip(image=(1, 1, 1, 1), axis='X')[source]
Uses a Flip Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/flip.html
- procfunc.nodes.compositor.gamma(image=(1, 1, 1, 1), gamma=1.0)[source]
Uses a Gamma Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/gamma.html
- procfunc.nodes.compositor.glare(image=(1, 1, 1, 1), angle_offset=0.0, color_modulation=0.25, fade=0.9, glare_type='STREAKS', iterations=3, mix=0.0, quality='MEDIUM', size=8, streaks=4, threshold=1.0, use_rotate_45=True)[source]
Uses a Glare Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/glare.html
- Parameters:
image (ProcNode[Color] | Color)
angle_offset (float)
color_modulation (float)
fade (float)
glare_type (Literal['BLOOM', 'GHOSTS', 'STREAKS', 'FOG_GLOW', 'SIMPLE_STAR'])
iterations (int)
mix (float)
quality (Literal['HIGH', 'MEDIUM', 'LOW'])
size (int)
streaks (int)
threshold (float)
use_rotate_45 (bool)
- Return type:
- procfunc.nodes.compositor.group(node_tree=None)[source]
Uses a Group Compositor Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/group.html
- procfunc.nodes.compositor.hue_correct(fac=1.0, image=(1, 1, 1, 1))[source]
Uses a HueCorrect Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/hue_correct.html
- procfunc.nodes.compositor.hue_sat(image=(1, 1, 1, 1), hue=0.5, saturation=1.0, value=1.0, fac=1.0)[source]
Uses a HueSat Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/hue_saturation.html
- procfunc.nodes.compositor.id_mask(id_value=1.0, index=0, use_antialiasing=False)[source]
Uses a IDMask Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/mask/id_mask.html
- procfunc.nodes.compositor.image(frame_duration=1, frame_offset=0, frame_start=1, image=None, layer=None, view=None, use_auto_refresh=True, use_cyclic=False, use_straight_alpha_output=False)[source]
Uses a Image Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/image.html
- procfunc.nodes.compositor.inpaint(image=(1, 1, 1, 1), distance=0)[source]
Uses a Inpaint Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/inpaint.html
- procfunc.nodes.compositor.invert(fac=1.0, color=(1, 1, 1, 1), invert_alpha=False, invert_rgb=True)[source]
Uses a Invert Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/invert_color.html
- procfunc.nodes.compositor.keying(image=(0.8, 0.8, 0.8, 1), key_color=(1, 1, 1, 1), garbage_matte=0.0, core_matte=0.0, blur_post=0, blur_pre=0, clip_black=0.0, clip_white=1.0, despill_balance=0.5, despill_factor=1.0, dilate_distance=0, edge_kernel_radius=3, edge_kernel_tolerance=0.1, feather_distance=0, feather_falloff='SMOOTH', screen_balance=0.5)[source]
Uses a Keying Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/keying.html
- Parameters:
image (ProcNode[Color] | Color)
key_color (ProcNode[Color] | Color)
blur_post (int)
blur_pre (int)
clip_black (float)
clip_white (float)
despill_balance (float)
despill_factor (float)
dilate_distance (int)
edge_kernel_radius (int)
edge_kernel_tolerance (float)
feather_distance (int)
feather_falloff (Literal['SMOOTH', 'SPHERE', 'ROOT', 'INVERSE_SQUARE', 'SHARP', 'LINEAR'])
screen_balance (float)
- Return type:
- procfunc.nodes.compositor.keying_screen(clip=None, smoothness=0.0, tracking_object='')[source]
Uses a KeyingScreen Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/keying_screen.html
- procfunc.nodes.compositor.kuwahara(image=(1, 1, 1, 1), size=6.0, eccentricity=1.0, sharpness=0.5, uniformity=4, use_high_precision=False, variation='CLASSIC')[source]
Uses a Kuwahara Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/kuwahara.html
- procfunc.nodes.compositor.lensdist(image=(1, 1, 1, 1), distortion=0.0, dispersion=0.0, use_fit=False, use_jitter=False, use_projector=False)[source]
Uses a Lensdist Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/lens_distortion.html
- procfunc.nodes.compositor.levels(image=(0, 0, 0, 1), channel='COMBINED_RGB')[source]
Uses a Levels Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/levels.html
- procfunc.nodes.compositor.luma_matte(image=(1, 1, 1, 1), limit_max=1.0, limit_min=0.0)[source]
Uses a LumaMatte Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/keying/luminance_key.html
- procfunc.nodes.compositor.map_range(value=1.0, from_min=0.0, from_max=1.0, to_min=0.0, to_max=1.0)[source]
Uses a MapRange Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/map_range.html
- procfunc.nodes.compositor.map_uv(image=(1, 1, 1, 1), uv=(1, 0, 0), alpha=0, filter_type='ANISOTROPIC')[source]
Uses a MapUV Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/map_uv.html
- procfunc.nodes.compositor.map_value(value=1.0, max=(1.0,), min=(0.0,), offset=(0.0,), size=(1.0,), use_max=False, use_min=False)[source]
Uses a MapValue Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/map_value.html
- procfunc.nodes.compositor.mask(mask=None, motion_blur_samples=16, motion_blur_shutter=0.5, size_source='SCENE', size_x=256, size_y=256, use_feather=True, use_motion_blur=False)[source]
Uses a Mask Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/mask.html
- procfunc.nodes.compositor.math(value_0=0.5, value_1=0.5)[source]
Uses a Math Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/math.html
- procfunc.nodes.compositor.mix_rgb(fac=1.0, image_0=(1, 1, 1, 1), image_1=(1, 1, 1, 1), blend_type='MIX', use_alpha=False)[source]
Uses a MixRGB Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/mix_color.html
- Parameters:
image_0 (ProcNode[Color] | Color)
image_1 (ProcNode[Color] | Color)
blend_type (Literal['MIX', 'DARKEN', 'MULTIPLY', 'BURN', 'LIGHTEN', 'SCREEN', 'DODGE', 'ADD', 'OVERLAY', 'SOFT_LIGHT', 'LINEAR_LIGHT', 'DIFFERENCE', 'EXCLUSION', 'SUBTRACT', 'DIVIDE', 'HUE', 'SATURATION', 'COLOR', 'VALUE'])
use_alpha (bool)
- Return type:
- class procfunc.nodes.compositor.MovieClipResult[source]
Bases:
NamedTupleMovieClipResult(image, alpha, offset_x, offset_y, scale, angle)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.movie_clip(clip=None)[source]
Uses a MovieClip Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/movie_clip.html
- Parameters:
clip (Any)
- Return type:
- procfunc.nodes.compositor.movie_distortion(image=(0.8, 0.8, 0.8, 1), clip=None, distortion_type='UNDISTORT')[source]
Uses a MovieDistortion Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/movie_distortion.html
- procfunc.nodes.compositor.normal(normal=(0, 0, 1))[source]
Uses a Normal Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/vector/normal.html
- procfunc.nodes.compositor.normalize(value=1.0)[source]
Uses a Normalize Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/normalize.html
- procfunc.nodes.compositor.output_file(active_input_index=0, base_path='/tmp/', slot_paths=None, format=None, **kwargs)[source]
Uses a OutputFile Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/output/file_output.html
- procfunc.nodes.compositor.pixelate(color=(0.8, 0.8, 0.8, 1), pixel_size=1)[source]
Uses a Pixelate Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/pixelate.html
- procfunc.nodes.compositor.plane_track_deform(image=(0.8, 0.8, 0.8, 1), clip=None, motion_blur_samples=16, motion_blur_shutter=0.5, plane_track_name='', tracking_object='', use_motion_blur=False)[source]
Uses a PlaneTrackDeform Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/tracking/plane_track_deform.html
- procfunc.nodes.compositor.posterize(image=(1, 1, 1, 1), steps=8.0)[source]
Uses a Posterize Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/posterize.html
- procfunc.nodes.compositor.premul_key(image=(1, 1, 1, 1), mapping='STRAIGHT_TO_PREMUL')[source]
Uses a PremulKey Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/alpha_convert.html
- procfunc.nodes.compositor.rgb()[source]
Uses a RGB Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/constant/rgb.html
- Return type:
- procfunc.nodes.compositor.rgb_to_bw(image=(0.8, 0.8, 0.8, 1))[source]
Uses a RGBToBW Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/rgb_to_bw.html
- procfunc.nodes.compositor.rotate(image=(1, 1, 1, 1), degr=0.0, filter_type='BILINEAR')[source]
Uses a Rotate Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/rotate.html
- procfunc.nodes.compositor.scale(image=(1, 1, 1, 1), x=1.0, y=1.0, frame_method='STRETCH', offset_x=0.0, offset_y=0.0, space='RELATIVE')[source]
Uses a Scale Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/scale.html
- class procfunc.nodes.compositor.SceneTimeResult[source]
Bases:
NamedTupleSceneTimeResult(seconds, frame)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.scene_time()[source]
Uses a SceneTime Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/scene/scene_time.html
- Return type:
- class procfunc.nodes.compositor.SepHsvaResult[source]
Bases:
NamedTupleSepHsvaResult(h, s, v, a)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.sep_hsva(image=(1, 1, 1, 1))[source]
Uses a SepHSVA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/separate_color.html
- Parameters:
image (ProcNode[Color] | Color)
- Return type:
- class procfunc.nodes.compositor.SepRgbaResult[source]
Bases:
NamedTupleSepRgbaResult(r, g, b, a)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.sep_rgba(image=(1, 1, 1, 1))[source]
Uses a SepRGBA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/separate_color.html
- Parameters:
image (ProcNode[Color] | Color)
- Return type:
- class procfunc.nodes.compositor.SepYccaResult[source]
Bases:
NamedTupleSepYccaResult(y, cb, cr, a)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.sep_ycca(image=(1, 1, 1, 1), mode='ITUBT709')[source]
Uses a SepYCCA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/separate_color.html
- Parameters:
- Return type:
- class procfunc.nodes.compositor.SepYuvaResult[source]
Bases:
NamedTupleSepYuvaResult(y, u, v, a)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.compositor.sep_yuva(image=(1, 1, 1, 1))[source]
Uses a SepYUVA Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/separate_color.html
- Parameters:
image (ProcNode[Color] | Color)
- Return type:
- procfunc.nodes.compositor.set_alpha(image=(1, 1, 1, 1), alpha=1.0, mode='APPLY')[source]
Uses a SetAlpha Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/set_alpha.html
- procfunc.nodes.compositor.split(image_0=(0.8, 0.8, 0.8, 1), image_1=(0.8, 0.8, 0.8, 1), axis='X', factor=50)[source]
Uses a Split Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/split.html
- procfunc.nodes.compositor.stabilize(image=(0.8, 0.8, 0.8, 1), clip=None, filter_type='BILINEAR', invert=False)[source]
Uses a Stabilize Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/tracking/stabilize_2d.html
- procfunc.nodes.compositor.sun_beams(image=(1, 1, 1, 1), ray_length=0.0, source=(0.5, 0.5))[source]
Uses a SunBeams Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/sun_beams.html
- procfunc.nodes.compositor.switch(off=(0.8, 0.8, 0.8, 1), on=(0.8, 0.8, 0.8, 1), check=False)[source]
Uses a Switch Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/switch.html
- procfunc.nodes.compositor.switch_view(left=(0, 0, 0, 1), right=(0, 0, 0, 1))[source]
Uses a SwitchView Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/utilities/switch.html
- procfunc.nodes.compositor.texture(offset=(0, 0, 0), scale=(1, 1, 1), node_output=0, texture=None)[source]
Uses a Texture Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/texture.html
- procfunc.nodes.compositor.time(frame_end=250, frame_start=1)[source]
Uses a Time Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/scene/scene_time.html
- procfunc.nodes.compositor.tonemap(image=(1, 1, 1, 1), adaptation=1.0, contrast=0.0, correction=0.0, gamma=1.0, intensity=0.0, key=0.18, offset=1.0, tonemap_type='RD_PHOTORECEPTOR')[source]
Uses a Tonemap Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/adjust/tone_map.html
- procfunc.nodes.compositor.track_pos(clip=None, frame_relative=0, position='ABSOLUTE', track_name='', tracking_object='')[source]
Uses a TrackPos Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/tracking/track_position.html
- procfunc.nodes.compositor.transform(image=(0.8, 0.8, 0.8, 1), x=0.0, y=0.0, angle=0.0, scale=1.0, filter_type='NEAREST')[source]
Uses a Transform Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/transform.html
- procfunc.nodes.compositor.translate(image=(1, 1, 1, 1), x=0.0, y=0.0, interpolation='Nearest', use_relative=False, wrap_axis='NONE')[source]
Uses a Translate Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/transform/translate.html
- procfunc.nodes.compositor.val_to_rgb(fac=0.5)[source]
Uses a ValToRGB Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/color_ramp.html
- procfunc.nodes.compositor.value()[source]
Uses a Value Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/input/constant/value.html
- Return type:
- procfunc.nodes.compositor.vec_blur(image=(1, 1, 1, 1), z=0.0, speed=(0, 0, 0), factor=0.25, samples=32, speed_max=0, speed_min=0, use_curved=False)[source]
Uses a VecBlur Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/filter/blur/vector_blur.html
- procfunc.nodes.compositor.viewer(image=(0, 0, 0, 1), alpha=1.0, use_alpha=True)[source]
Uses a Viewer Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/output/viewer.html
- procfunc.nodes.compositor.zcombine(image_0=(1, 1, 1, 1), z_0=1.0, image_1=(1, 1, 1, 1), z_1=1.0, use_alpha=False, use_antialias_z=True)[source]
Uses a Zcombine Compositor Node.
See: https://docs.blender.org/manual/en/4.2/compositing/types/color/mix/z_combine.html
pf.nodes.func
Auto-generated Function Node bindings for Blender
- procfunc.nodes.func.constant(value)[source]
Replaces all nodes which just store a constant e.g. ShaderNodeValue, ShaderNodeRGB, FunctionNodeInput*, etc
- Parameters:
value (TConstant)
- Return type:
ProcNode[TConstant]
- procfunc.nodes.func.align_euler_to_vector(rotation=(0, 0, 0), factor=1.0, vector=(0, 0, 1), axis='X', pivot_axis='AUTO')[source]
Uses a AlignEulerToVector Function Node.
- procfunc.nodes.func.align_rotation_to_vector(rotation=(0, 0, 0), factor=1.0, vector=(0, 0, 1), axis='Z', pivot_axis='AUTO')[source]
Uses a AlignRotationToVector Function Node.
- procfunc.nodes.func.axes_to_rotation(primary_axis_vector=(0, 0, 1), secondary_axis_vector=(1, 0, 0), primary_axis='X', secondary_axis='Y')[source]
Uses a AxesToRotation Function Node.
- procfunc.nodes.func.axis_angle_to_rotation(axis=(0, 0, 1), angle=0.0)[source]
Uses a AxisAngleToRotation Function Node.
- procfunc.nodes.func.boolean_not(a=False)[source]
Uses a BooleanNot Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/math/boolean_math.html
- procfunc.nodes.func.combine_matrix(column_1_row_1=1.0, column_1_row_2=0.0, column_1_row_3=0.0, column_1_row_4=0.0, column_2_row_1=0.0, column_2_row_2=1.0, column_2_row_3=0.0, column_2_row_4=0.0, column_3_row_1=0.0, column_3_row_2=0.0, column_3_row_3=1.0, column_3_row_4=0.0, column_4_row_1=0.0, column_4_row_2=0.0, column_4_row_3=0.0, column_4_row_4=1.0)[source]
Uses a CombineMatrix Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/matrix/combine_matrix.html
- Parameters:
- Return type:
ProcNode[Matrix]
- procfunc.nodes.func.combine_transform(translation=(0, 0, 0), rotation=(0, 0, 0), scale=(1, 1, 1))[source]
Uses a CombineTransform Function Node.
- procfunc.nodes.func.vector_compare_elementwise(a=(0, 0, 0), b=(0, 0, 0), epsilon=0.001, operation='EQUAL')[source]
- procfunc.nodes.func.euler_to_rotation(euler=(0, 0, 0))[source]
Uses a EulerToRotation Function Node.
- procfunc.nodes.func.float_to_int(float=0.0, rounding_mode='ROUND')[source]
Uses a FloatToInt Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/math/float_to_integer.html
- class procfunc.nodes.func.InputSpecialCharactersResult[source]
Bases:
NamedTupleInputSpecialCharactersResult(line_break, tab)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.input_special_characters()[source]
Uses a InputSpecialCharacters Function Node.
- Return type:
- procfunc.nodes.func.input_string(string='')[source]
Uses a InputString Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/constant/string.html
- procfunc.nodes.func.input_vector(vector=(0.0, 0.0, 0.0))[source]
Uses a InputVector Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/constant/vector.html
- class procfunc.nodes.func.InvertMatrixResult[source]
Bases:
NamedTupleInvertMatrixResult(matrix, invertible)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.invert_matrix(matrix=None)[source]
Uses a InvertMatrix Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/matrix/invert_matrix.html
- Parameters:
matrix (ProcNode[Matrix] | Matrix)
- Return type:
- procfunc.nodes.func.invert_rotation(rotation=(0, 0, 0))[source]
Uses a InvertRotation Function Node.
- procfunc.nodes.func.matrix_multiply(matrix_0=None, matrix_1=None)[source]
Uses a MatrixMultiply Function Node.
- procfunc.nodes.func.project_point(vector=(0, 0, 0), transform=None)[source]
Uses a ProjectPoint Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/matrix/project_point.html
- procfunc.nodes.func.quaternion_to_rotation(w=1.0, x=0.0, y=0.0, z=0.0)[source]
Uses a QuaternionToRotation Function Node.
- procfunc.nodes.func.random_value(min=0.0, max=1.0, id=0, seed=0, data_type=None)[source]
Uses a RandomValue Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/random_value.html
- procfunc.nodes.func.random_boolean(probability=0.5, id=0, seed=0)[source]
Uses a RandomBoolean Function Node.
- procfunc.nodes.func.replace_string(string='', find='', replace='')[source]
Uses a ReplaceString Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/replace_string.html
- procfunc.nodes.func.rotate_euler(rotation=(0, 0, 0), rotate_by=(0, 0, 0), rotation_type='EULER', space='OBJECT')[source]
Uses a RotateEuler Function Node.
See: http://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/rotation/rotate_euler.html
- procfunc.nodes.func.rotate_rotation(rotation=(0, 0, 0), rotate_by=(0, 0, 0), rotation_space='GLOBAL')[source]
Uses a RotateRotation Function Node.
- procfunc.nodes.func.rotate_vector(vector=(0, 0, 0), rotation=(0, 0, 0))[source]
Uses a RotateVector Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/rotation/rotate_vector.html
- class procfunc.nodes.func.RotationToAxisAngleResult[source]
Bases:
NamedTupleRotationToAxisAngleResult(axis, angle)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.rotation_to_axis_angle(rotation=(0, 0, 0))[source]
Uses a RotationToAxisAngle Function Node.
- Parameters:
rotation (ProcNode[Vector] | Vector)
- Return type:
- procfunc.nodes.func.rotation_to_euler(rotation=(0, 0, 0))[source]
Uses a RotationToEuler Function Node.
- class procfunc.nodes.func.RotationToQuaternionResult[source]
Bases:
NamedTupleRotationToQuaternionResult(w, x, y, z)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.rotation_to_quaternion(rotation=(0, 0, 0))[source]
Uses a RotationToQuaternion Function Node.
- Parameters:
rotation (ProcNode[Vector] | Vector)
- Return type:
- class procfunc.nodes.func.SeparateColorResult[source]
Bases:
NamedTupleSeparateColorResult(red, green, blue, alpha)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.separate_color(color=(1, 1, 1, 1), mode='RGB', ycc_mode='ITUBT709')[source]
Uses a SeparateColor Function Node.
Context mapping: - Shader: ShaderNodeSeparateColor (input: Color, outputs: red/green/blue, mode: RGB only) - Compositor: CompositorNodeSeparateColor (input: Image, outputs: red/green/blue/alpha, modes: RGB/HSV/HSL/YCC/YUV, ycc_mode param) - Texture: TextureNodeSeparateColor (input: Color, modes: RGB/HSV/HSL) - Function: FunctionNodeSeparateColor (input: Color, outputs: red/green/blue/alpha)
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/color/separate_color.html
- Parameters:
- Return type:
- class procfunc.nodes.func.SeparateTransformResult[source]
Bases:
NamedTupleSeparateTransformResult(translation, rotation, scale)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.separate_transform(transform=None)[source]
Uses a SeparateTransform Function Node.
- Parameters:
transform (ProcNode[Matrix] | Matrix)
- Return type:
- procfunc.nodes.func.slice_string(string='', position=0, length=10)[source]
Uses a SliceString Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/slice_string.html
- procfunc.nodes.func.string_length(string='')[source]
Uses a StringLength Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/string_length.html
- procfunc.nodes.func.transform_direction(direction=(0, 0, 0), transform=None)[source]
Uses a TransformDirection Function Node.
- procfunc.nodes.func.transform_point(vector=(0, 0, 0), transform=None)[source]
Uses a TransformPoint Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/matrix/transform_point.html
- procfunc.nodes.func.value_to_string(value=0.0, decimals=0)[source]
Uses a ValueToString Function Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/value_to_string.html
- procfunc.nodes.func.mix(a=None, b=None, factor=0.5, clamp_factor=True, factor_mode='UNIFORM', data_type=None)[source]
Uses MixNode to mix float or vector fields
NOTE: procfunc forces all colors to be mixed via mix_rgb, since setting this function to type Color adds extra args & exactly matches the interface of mix_rgb
- procfunc.nodes.func.mix_rgb(factor=0.5, a=(0.5, 0.5, 0.5, 1), b=(0.5, 0.5, 0.5, 1), blend_type='MIX', clamp_result=False, clamp_factor=True)[source]
Uses a Mix Node with datatype Color
NOTE: separated from float/vector mix() due to extra arguments
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/mix.html
- Parameters:
a (ProcNode[Color] | Color)
b (ProcNode[Color] | Color)
blend_type (Literal['MIX', 'DARKEN', 'MULTIPLY', 'BURN', 'LIGHTEN', 'SCREEN', 'DODGE', 'ADD', 'OVERLAY', 'SOFT_LIGHT', 'LINEAR_LIGHT', 'DIFFERENCE', 'EXCLUSION', 'SUBTRACT', 'DIVIDE', 'HUE', 'SATURATION', 'COLOR', 'VALUE'])
clamp_result (bool)
clamp_factor (bool)
- Return type:
ProcNode[Color]
- procfunc.nodes.func.rgb_curve(fac=1.0, color=(1, 1, 1, 1), curves=None)[source]
Uses a RGBCurve Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/rgb_curves.html
- procfunc.nodes.func.combine_color(red=0.0, green=0.0, blue=0.0, mode='RGB')[source]
Uses a CombineColor Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/combine_color.html
- procfunc.nodes.func.combine_rgb(red=0.0, green=0.0, blue=0.0, mode='RGB')[source]
Uses a CombineColor Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/combine_color.html
- procfunc.nodes.func.combine_hsv(hue=0.0, saturation=0.0, value=0.0)[source]
Uses a CombineColor Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/combine_color.html
- procfunc.nodes.func.combine_hsl(hue=0.0, saturation=0.0, lightness=0.0)[source]
Uses a CombineHSV Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/combine_color.html
- procfunc.nodes.func.combine_xyz(x=0.0, y=0.0, z=0.0)[source]
Uses a CombineXYZ Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/combine_xyz.html
- class procfunc.nodes.func.SeparateHsvResult[source]
Bases:
NamedTupleSeparateHsvResult(h, s, v)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.separate_hsv(color=(0.8, 0.8, 0.8, 1))[source]
Uses a SeparateHSV Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/separate_color.html
- Parameters:
color (ProcNode[Color] | Color)
- Return type:
- class procfunc.nodes.func.SeparateRgbResult[source]
Bases:
NamedTupleSeparateRgbResult(r, g, b)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.separate_rgb(image=(0.8, 0.8, 0.8, 1))[source]
Uses a SeparateRGB Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/separate_color.html
- Parameters:
image (ProcNode[Color] | Color)
- Return type:
- class procfunc.nodes.func.SeparateXyzResult[source]
Bases:
NamedTupleSeparateXyzResult(x, y, z)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.func.separate_xyz(vector=(0, 0, 0))[source]
Uses a SeparateXYZ Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/separate_xyz.html
- Parameters:
vector (ProcNode[Vector] | Vector)
- Return type:
- procfunc.nodes.func.map_range(value=1.0, from_max=1.0, from_min=0.0, to_max=1.0, to_min=0.0, clamp=True, interpolation_type='LINEAR', data_type=None)[source]
Uses a MapRange Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/map_range.html
- Parameters:
clamp (bool)
interpolation_type (Literal['LINEAR', 'STEPPED_LINEAR', 'SMOOTHSTEP', 'SMOOTHERSTEP'])
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
- procfunc.nodes.func.float_curve(factor=1.0, value=1.0, curve=None, handle_type='AUTO', use_clip=True)[source]
Uses a FloatCurve Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/float_curve.html
- procfunc.nodes.func.vector_curve(fac=1.0, vector=(0, 0, 0), curves=None)[source]
Uses a VectorCurve Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/curves.html
- procfunc.nodes.func.index_switch(val_0=0, val_1=0, index=0, data_type=None)[source]
Uses a IndexSwitch Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/index_switch.html
- Parameters:
val_0 (TIndexSwitch)
val_1 (TIndexSwitch)
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
- procfunc.nodes.func.switch(switch=False, a=None, b=None, data_type=None)[source]
Uses a Switch Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/switch.html
pf.nodes.geo
Auto-generated Geometry Node bindings for Blender
WARNING: These type annotations are not guaranteed to be exhaustive or precise.
places of particular concern: - What attribute nodes allow int/float/bool or also Color/Vector - What geometry operations should we allow to apply on mismatching inputs? e.g. realize instances on a Mesh with no instances
- class procfunc.nodes.geo.AccumulateFieldResult[source]
Bases:
NamedTuple,Generic[TAttribute]AccumulateFieldResult(leading, total, trailing)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.accumulate_field(value=None, group_id=0, domain='POINT', data_type=None)[source]
Uses a AccumulateField Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/field/accumulate_field.html
- Parameters:
- Return type:
AccumulateFieldResult[TAttribute]
- class procfunc.nodes.geo.AttributeDomainSizeResult[source]
Bases:
NamedTupleAttributeDomainSizeResult(point_count, edge_count, face_count, face_corner_count, spline_count, instance_count)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.attribute_domain_size(geometry, component='MESH')[source]
Uses a AttributeDomainSize Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/domain_size.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
component (Literal['MESH', 'POINTCLOUD', 'CURVE', 'INSTANCES'])
- Return type:
- class procfunc.nodes.geo.AttributeStatisticResult[source]
Bases:
NamedTuple,Generic[TAttribute]AttributeStatisticResult(max, mean, median, min, range, standard_deviation, sum, variance)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.attribute_statistic(geometry, attribute=None, selection=True, domain='POINT', data_type=None)[source]
Uses a AttributeStatistic Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/attribute_statistic.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
attribute (ProcNode[TAttribute] | None)
domain (Literal['POINT', 'EDGE', 'FACE', 'CORNER', 'CURVE', 'INSTANCE', 'LAYER'])
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
AttributeStatisticResult[TAttribute]
- procfunc.nodes.geo.blur_attribute(value=None, iterations=1, weight=1.0, data_type=None)[source]
Uses a BlurAttribute Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/blur_attribute.html
- class procfunc.nodes.geo.BoundBoxResult[source]
Bases:
NamedTupleBoundBoxResult(bounding_box, min, max)
- bounding_box: ProcNode[MeshObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.bound_box(geometry)[source]
Uses a BoundBox Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/operations/bounding_box.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- class procfunc.nodes.geo.CaptureAttributeResult[source]
Bases:
Generic[TAnyGeometry]CaptureAttributeResult(geometry: procfunc.nodes.types.ProcNode[~TAnyGeometry], attributes: dict[str, procfunc.nodes.types.ProcNode])
- __init__(geometry, attributes)
Supported special methods:
__getattr__
- procfunc.nodes.geo.capture_attribute(geometry, domain='POINT', **attributes)[source]
Uses a CaptureAttribute Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/capture_attribute.html
- Parameters:
- Return type:
CaptureAttributeResult[TAnyGeometry]
- procfunc.nodes.geo.collection_info(collection, separate_children=False, reset_children=False, transform_space='ORIGINAL')[source]
Uses a CollectionInfo Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/collection_info.html
- procfunc.nodes.geo.convex_hull(geometry)[source]
Uses a ConvexHull Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/operations/convex_hull.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- class procfunc.nodes.geo.CornerResult[source]
Bases:
NamedTupleCornerResult(corner_index, total)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.corners_of_edge(edge_index=0, weights=0.0, sort_index=0)[source]
Uses a CornersOfEdge Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/corners_of_edge.html
- procfunc.nodes.geo.corners_of_face(face_index=0, weights=0.0, sort_index=0)[source]
Uses a CornersOfFace Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/corners_of_face.html
- procfunc.nodes.geo.corners_of_vertex(vertex_index=0, weights=0.0, sort_index=0)[source]
Uses a CornersOfVertex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/corners_of_vertex.html
- procfunc.nodes.geo.curve_arc(resolution=16, radius=1.0, start_angle=0.0, sweep_angle=5.497787, connect_center=False, invert_arc=False, mode='RADIUS')[source]
Uses a CurveArc Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/arc.html
- procfunc.nodes.geo.curve_endpoint_selection(start_size=1, end_size=1)[source]
Uses a CurveEndpointSelection Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/endpoint_selection.html
- procfunc.nodes.geo.curve_length(curve)[source]
Uses a CurveLength Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/curve_length.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- class procfunc.nodes.geo.CurveOfPointResult[source]
Bases:
NamedTupleCurveOfPointResult(curve_index, index_in_curve)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.curve_of_point(point_index=0)[source]
Uses a CurveOfPoint Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/topology/curve_of_point.html
- Parameters:
- Return type:
- procfunc.nodes.geo.curve_bezier_segment(resolution=16, start=(-1, 0, 0), start_handle=(-0.5, 0.5, 0), end_handle=(0, 0, 0), end=(1, 0, 0), mode='POSITION')[source]
Uses a CurvePrimitiveBezierSegment Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/bezier_segment.html
- procfunc.nodes.geo.curve_circle(resolution=32, radius=1.0, mode='RADIUS')[source]
Uses a CurvePrimitiveCircle Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/curve_circle.html
- procfunc.nodes.geo.curve_line(start=(0, 0, 0), end=(0, 0, 1))[source]
Uses a CurvePrimitiveLine Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/curve_line.html
- Parameters:
- Return type:
- procfunc.nodes.geo.curve_line_from_direction(start=(0, 0, 0), direction=(0, 0, 1), length=1.0)[source]
Uses a CurveLineFromDirection Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/curve_line.html
- procfunc.nodes.geo.curve_quadrilateral(width=2.0, height=2.0, mode='RECTANGLE')[source]
Uses a CurvePrimitiveQuadrilateral Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/quadrilateral.html
- procfunc.nodes.geo.curve_bezier(resolution=16, start=(-1, 0, 0), middle=(0, 2, 0), end=(1, 0, 0))[source]
Uses a CurveQuadraticBezier Geometry Node.
- procfunc.nodes.geo.curve_set_handles(curve, selection=True, handle_type='AUTO', mode='RIGHT')[source]
Uses a CurveSetHandles Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_handle_type.html
- Parameters:
- Return type:
- procfunc.nodes.geo.curve_spiral(resolution=32, rotations=2.0, start_radius=1.0, end_radius=2.0, height=2.0, reverse=False)[source]
Uses a CurveSpiral Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/curve_spiral.html
- procfunc.nodes.geo.curve_spline_type(curve, selection=True, spline_type='POLY')[source]
Uses a CurveSplineType Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_spline_type.html
- Parameters:
- Return type:
- class procfunc.nodes.geo.CurveStarResult[source]
Bases:
NamedTupleCurveStarResult(curve, outer_points)
- curve: ProcNode[CurveObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.curve_star(points=8, inner_radius=1.0, outer_radius=2.0, twist=0.0)[source]
Uses a CurveStar Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/primitives/star.html
- procfunc.nodes.geo.curve_to_mesh(curve, profile_curve=None, fill_caps=False)[source]
Uses a CurveToMesh Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/curve_to_mesh.html
- Parameters:
curve (ProcNode[CurveObject])
profile_curve (ProcNode[CurveObject] | None)
- Return type:
- class procfunc.nodes.geo.CurveToPointsResult[source]
Bases:
NamedTupleCurveToPointsResult(points, tangent, normal, rotation)
- points: ProcNode[MeshObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.curve_to_points(curve, count=10, length=1.0, mode='COUNT')[source]
Uses a CurveToPoints Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/curve_to_points.html
- Parameters:
- Return type:
- procfunc.nodes.geo.curve_to_points_evaluated(curve)[source]
Uses a CurveToPoints Geometry Node with mode=”EVALUATED”.
From Blender docs: Creates points based on how the curve is evaluated. See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/curve_to_points.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.curve_to_points_count(curve, count=10)[source]
Uses a CurveToPoints Geometry Node with mode=”COUNT”.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/curve_to_points.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.curve_to_points_length(curve, length=0.1)[source]
Uses a CurveToPoints Geometry Node with mode=”LENGTH”.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/curve_to_points.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.deform_curves_on_surface(curves)[source]
Uses a DeformCurvesOnSurface Geometry Node.
- Parameters:
curves (ProcNode[HairObject])
- Return type:
- procfunc.nodes.geo.delete_geometry(geometry, selection=True, domain='POINT', mode='ALL')[source]
Uses a DeleteGeometry Geometry Node.
- procfunc.nodes.geo.distribute_points_in_grid(grid=0.0, density=1.0, seed=0, mode='DENSITY_RANDOM')[source]
Uses a DistributePointsInGrid Geometry Node.
- procfunc.nodes.geo.distribute_points_in_volume(volume, density=1.0, seed=0, mode='DENSITY_RANDOM')[source]
Uses a DistributePointsInVolume Geometry Node.
- class procfunc.nodes.geo.DistributePointsOnFacesResult[source]
Bases:
NamedTupleDistributePointsOnFacesResult(points, normal, rotation)
- points: ProcNode[MeshObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.distribute_points_on_faces(mesh, selection=True, density=None, seed=0, use_legacy_normal=False)[source]
Uses a DistributePointsOnFaces Geometry Node with RANDOM distribution.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/distribute_points_on_faces.html
- procfunc.nodes.geo.distribute_points_on_faces_poisson(mesh, selection=True, distance_min=0.0, density_max=10.0, density_factor=1.0, seed=0, use_legacy_normal=False)[source]
Uses a DistributePointsOnFaces Geometry Node with POISSON distribution.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/distribute_points_on_faces.html
- procfunc.nodes.geo.dual_mesh(mesh, keep_boundaries=False)[source]
Uses a DualMesh Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/dual_mesh.html
- Parameters:
mesh (ProcNode[MeshObject])
- Return type:
- class procfunc.nodes.geo.DuplicateElementsResult[source]
Bases:
NamedTuple,Generic[TAnyGeometry]DuplicateElementsResult(geometry, duplicate_index)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.duplicate_elements(geometry, selection=True, amount=1, domain='POINT')[source]
Uses a DuplicateElements Geometry Node.
- procfunc.nodes.geo.edge_paths_to_curves(mesh, start_vertices=True, next_vertex_index=-1)[source]
Uses a EdgePathsToCurves Geometry Node.
- Parameters:
- Return type:
- procfunc.nodes.geo.edge_paths_to_selection(start_vertices=True, next_vertex_index=-1)[source]
Uses a EdgePathsToSelection Geometry Node.
- class procfunc.nodes.geo.EdgesOfCornerResult[source]
Bases:
NamedTupleEdgesOfCornerResult(next_edge_index, previous_edge_index)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.edges_of_corner(corner_index=0)[source]
Uses a EdgesOfCorner Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/edges_of_corner.html
- Parameters:
- Return type:
- class procfunc.nodes.geo.EdgesOfVertexResult[source]
Bases:
NamedTupleEdgesOfVertexResult(edge_index, total)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.edges_of_vertex(vertex_index=0, weights=0.0, sort_index=0)[source]
Uses a EdgesOfVertex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/edges_of_vertex.html
- procfunc.nodes.geo.edges_to_face_groups(boundary_edges=True)[source]
Uses a EdgesToFaceGroups Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/edges_to_face_groups.html
- class procfunc.nodes.geo.ExtrudeMeshResult[source]
Bases:
NamedTupleExtrudeMeshResult(mesh, top, side)
- mesh: ProcNode[MeshObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.extrude_mesh(mesh, selection=True, offset=(0, 0, 0), offset_scale=1.0, individual=True, mode='FACES')[source]
- class procfunc.nodes.geo.FaceOfCornerResult[source]
Bases:
NamedTupleFaceOfCornerResult(face_index, index_in_face)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.face_of_corner(corner_index=0)[source]
Uses a FaceOfCorner Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/face_of_corner.html
- Parameters:
- Return type:
- procfunc.nodes.geo.field_at_index(value=None, index=0, domain='POINT', data_type=None)[source]
Uses a FieldAtIndex Geometry Node.
- procfunc.nodes.geo.field_on_domain(value=0, domain='POINT', data_type=None)[source]
Uses a FieldOnDomain Geometry Node.
- Parameters:
value (TFieldOnDomain)
domain (Literal['POINT', 'EDGE', 'FACE', 'CORNER', 'CURVE', 'INSTANCE', 'LAYER'])
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
ProcNode[TFieldOnDomain]
- procfunc.nodes.geo.fill_curve(curve, group_id=0, mode='TRIANGLES')[source]
Uses a FillCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/fill_curve.html
- Parameters:
- Return type:
- procfunc.nodes.geo.fillet_curve(curve, radius=0.25, limit_radius=False, count=1, mode='BEZIER')[source]
Uses a FilletCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/fillet_curve.html
- procfunc.nodes.geo.flip_faces(mesh, selection=True)[source]
Uses a FlipFaces Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/flip_faces.html
- Parameters:
mesh (ProcNode[MeshObject])
- Return type:
- procfunc.nodes.geo.geometry_to_instance(geometry)[source]
Uses a GeometryToInstance Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/geometry_to_instance.html
- procfunc.nodes.geo.get_named_grid(volume, name='', remove=True)[source]
Uses a GetNamedGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/index.html
- Parameters:
volume (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- procfunc.nodes.geo.grid_to_mesh(grid=0.0, threshold=0.1, adaptivity=0.0)[source]
Uses a GridToMesh Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/operations/volume_to_mesh.html
- class procfunc.nodes.geo.ImageInfoResult[source]
Bases:
NamedTupleImageInfoResult(width, height, has_alpha, frame_count, fps)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.image_info(image, frame=0)[source]
Uses a ImageInfo Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/image_info.html
- procfunc.nodes.geo.image_texture(image, vector=(0, 0, 0), frame=0, extension='REPEAT', interpolation='Linear')[source]
Uses a ImageTexture Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/image_info.html
- procfunc.nodes.geo.index_of_nearest(position=(0, 0, 0), group_id=0)[source]
Uses a IndexOfNearest Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/sample/index_of_nearest.html
- procfunc.nodes.geo.input_active_camera()[source]
Uses a InputActiveCamera Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/active_camera.html
- class procfunc.nodes.geo.InputCurveHandlePositionsResult[source]
Bases:
NamedTupleInputCurveHandlePositionsResult(left, right)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_curve_handle_positions(relative=False)[source]
Uses a InputCurveHandlePositions Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/curve_handle_position.html
- Parameters:
- Return type:
- procfunc.nodes.geo.input_curve_tilt()[source]
Uses a InputCurveTilt Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/curve_tilt.html
- procfunc.nodes.geo.input_edge_smooth()[source]
Uses a InputEdgeSmooth Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/is_edge_smooth.html
- procfunc.nodes.geo.input_id()[source]
Uses a InputID Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/id.html
- procfunc.nodes.geo.input_image(image=None)[source]
Uses a InputImage Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/constant/image.html
- procfunc.nodes.geo.input_index()[source]
Uses a InputIndex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/input_index.html
- procfunc.nodes.geo.input_instance_rotation()[source]
Uses a InputInstanceRotation Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/constant/rotation.html
- Return type:
ProcNode[Vector]
- procfunc.nodes.geo.input_instance_scale()[source]
Uses a InputInstanceScale Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/instance_scale.html
- Return type:
ProcNode[Vector]
- procfunc.nodes.geo.input_material(material=None)[source]
Uses a InputMaterial Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/constant/material.html
- procfunc.nodes.geo.input_material_index()[source]
Uses a InputMaterialIndex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/material/material_index.html
- class procfunc.nodes.geo.InputMeshEdgeAngleResult[source]
Bases:
NamedTupleInputMeshEdgeAngleResult(unsigned_angle, signed_angle)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_mesh_edge_angle()[source]
Uses a InputMeshEdgeAngle Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/edge_angle.html
- Return type:
- procfunc.nodes.geo.input_mesh_edge_neighbors()[source]
Uses a InputMeshEdgeNeighbors Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/edge_neighbors.html
- class procfunc.nodes.geo.InputMeshEdgeVerticesResult[source]
Bases:
NamedTupleInputMeshEdgeVerticesResult(vertex_index_1, vertex_index_2, position_1, position_2)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_mesh_edge_vertices()[source]
Uses a InputMeshEdgeVertices Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/edge_vertices.html
- Return type:
- procfunc.nodes.geo.input_mesh_face_area()[source]
Uses a InputMeshFaceArea Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/face_area.html
- procfunc.nodes.geo.input_mesh_face_is_planar(threshold=0.01)[source]
Uses a InputMeshFaceIsPlanar Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/face_is_planar.html
- class procfunc.nodes.geo.InputMeshFaceNeighborsResult[source]
Bases:
NamedTupleInputMeshFaceNeighborsResult(vertex_count, face_count)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_mesh_face_neighbors()[source]
Uses a InputMeshFaceNeighbors Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/face_neighbors.html
- Return type:
- class procfunc.nodes.geo.InputMeshIslandResult[source]
Bases:
NamedTupleInputMeshIslandResult(island_index, island_count)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_mesh_island()[source]
Uses a InputMeshIsland Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/mesh_island.html
- Return type:
- class procfunc.nodes.geo.InputMeshVertexNeighborsResult[source]
Bases:
NamedTupleInputMeshVertexNeighborsResult(vertex_count, face_count)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_mesh_vertex_neighbors()[source]
Uses a InputMeshVertexNeighbors Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/vertex_neighbors.html
- Return type:
- class procfunc.nodes.geo.InputNamedAttributeResult[source]
Bases:
NamedTupleInputNamedAttributeResult(attribute, exists)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_named_attribute(name='', data_type=None)[source]
Uses a InputNamedAttribute Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/named_attribute.html
- Parameters:
data_type (NodeDataType | None)
- Return type:
- procfunc.nodes.geo.input_named_layer_selection(name='')[source]
Uses a InputNamedLayerSelection Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/selection.html
- procfunc.nodes.geo.input_normal()[source]
Uses a InputNormal Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/normal.html
- Return type:
ProcNode[Vector]
- procfunc.nodes.geo.input_position()[source]
Uses a InputPosition Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/position.html
- Return type:
ProcNode[Vector]
- procfunc.nodes.geo.input_radius()[source]
Uses a InputRadius Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/read/radius.html
- class procfunc.nodes.geo.InputSceneTimeResult[source]
Bases:
NamedTupleInputSceneTimeResult(seconds, frame)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_scene_time()[source]
Uses a InputSceneTime Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/scene_time.html
- Return type:
- procfunc.nodes.geo.input_shade_smooth()[source]
Uses a InputShadeSmooth Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/write/set_shade_smooth.html
- class procfunc.nodes.geo.InputShortestEdgePathsResult[source]
Bases:
NamedTupleInputShortestEdgePathsResult(next_vertex_index, total_cost)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.input_shortest_edge_paths(end_vertex=False, edge_cost=1.0)[source]
Uses a InputShortestEdgePaths Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/shortest_edge_paths.html
- procfunc.nodes.geo.input_spline_cyclic()[source]
Uses a InputSplineCyclic Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/is_spline_cyclic.html
- procfunc.nodes.geo.input_spline_resolution()[source]
Uses a InputSplineResolution Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/spline_resolution.html
- procfunc.nodes.geo.input_tangent()[source]
Uses a InputTangent Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/curve_tangent.html
- Return type:
ProcNode[Vector]
- procfunc.nodes.geo.instance_on_points(points=None, instance=None, selection=True, pick_instance=False, instance_index=0, rotation=(0, 0, 0), scale=(1, 1, 1))[source]
Uses a InstanceOnPoints Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/instance_on_points.html
- Parameters:
points (ProcNode[MeshObject | CurveObject | Instances | VolumeObject] | None)
instance (ProcNode[MeshObject | CurveObject | Instances | VolumeObject] | None)
rotation (ProcNode[Vector] | Vector)
scale (ProcNode[Vector] | Vector)
- Return type:
ProcNode[Instances]
- procfunc.nodes.geo.instance_transform()[source]
Uses a InstanceTransform Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/instance_transform.html
- Return type:
- procfunc.nodes.geo.instances_to_points(instances=None, selection=True, position=(0, 0, 0), radius=0.05)[source]
Uses a InstancesToPoints Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/instances_to_points.html
- class procfunc.nodes.geo.InterpolateCurvesResult[source]
Bases:
NamedTupleInterpolateCurvesResult(curves, closest_index, closest_weight)
- curves: ProcNode[HairObject]
Alias for field number 0
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.interpolate_curves(guide_curves, points, guide_up=(0, 0, 0), guide_group_id=0, point_up=(0, 0, 0), point_group_id=0, max_neighbors=4)[source]
Uses a InterpolateCurves Geometry Node.
- Parameters:
guide_curves (ProcNode[HairObject])
points (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
guide_up (ProcNode[Vector] | Vector)
point_up (ProcNode[Vector] | Vector)
- Return type:
- procfunc.nodes.geo.is_viewport()[source]
Uses a IsViewport Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/is_viewport.html
- procfunc.nodes.geo.join_geometry(geometries)[source]
Uses a JoinGeometry Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/join_geometry.html
- procfunc.nodes.geo.material_selection(material=None)[source]
Uses a MaterialSelection Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/material/material_selection.html
- procfunc.nodes.geo.merge_by_distance(geometry, selection=True, distance=0.001, mode='ALL')[source]
Uses a MergeByDistance Geometry Node.
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
mode (Literal['ALL', 'CONNECTED'])
- Return type:
ProcNode[MeshObject | CurveObject | Instances | VolumeObject]
- procfunc.nodes.geo.mesh_boolean(mesh_1=None, mesh_2=None, self_intersection=False, hole_tolerant=False, operation='DIFFERENCE', solver='FLOAT')[source]
Uses a MeshBoolean Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_boolean.html
- Parameters:
mesh_1 (ProcNode[MeshObject | CurveObject | Instances | VolumeObject] | None)
mesh_2 (ProcNode[MeshObject | CurveObject | Instances | VolumeObject] | None)
operation (Literal['INTERSECT', 'UNION', 'DIFFERENCE'])
solver (Literal['EXACT', 'FLOAT'])
- Return type:
- procfunc.nodes.geo.mesh_circle(vertices=32, radius=1.0, fill_type='NONE')[source]
Uses a MeshCircle Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/mesh_circle.html
- class procfunc.nodes.geo.MeshResult[source]
Bases:
NamedTupleMeshResult(mesh, uv_map)
- mesh: ProcNode[MeshObject]
Alias for field number 0
- uv_map: ProcNode[MeshObject]
Alias for field number 1
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- class procfunc.nodes.geo.MeshConeResult[source]
Bases:
NamedTupleMeshConeResult(mesh, uv_map, top, bottom, side)
- mesh: ProcNode[MeshObject]
Alias for field number 0
- uv_map: ProcNode[MeshObject]
Alias for field number 1
- top: ProcNode[MeshObject]
Alias for field number 2
- bottom: ProcNode[MeshObject]
Alias for field number 3
- side: ProcNode[MeshObject]
Alias for field number 4
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.mesh_cone(vertices=32, side_segments=1, fill_segments=1, radius_top=0.0, radius_bottom=1.0, depth=2.0, fill_type='NGON')[source]
Uses a MeshCone Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/cone.html
- Parameters:
- Return type:
- procfunc.nodes.geo.mesh_cube(size=(1, 1, 1), vertices_x=2, vertices_y=2, vertices_z=2)[source]
Uses a MeshCube Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/cube.html
- class procfunc.nodes.geo.MeshCylinderResult[source]
Bases:
NamedTupleMeshCylinderResult(mesh, top, side, bottom, uv_map)
- mesh: ProcNode[MeshObject]
Alias for field number 0
- top: ProcNode[MeshObject]
Alias for field number 1
- side: ProcNode[MeshObject]
Alias for field number 2
- bottom: ProcNode[MeshObject]
Alias for field number 3
- uv_map: ProcNode[MeshObject]
Alias for field number 4
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.mesh_cylinder(vertices=32, side_segments=1, fill_segments=1, radius=1.0, depth=2.0, fill_type='NGON')[source]
Uses a MeshCylinder Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/cylinder.html
- procfunc.nodes.geo.mesh_face_set_boundaries(face_group_id=0)[source]
Uses a MeshFaceSetBoundaries Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/read/face_group_boundaries.html
- procfunc.nodes.geo.mesh_grid(size_x=1.0, size_y=1.0, vertices_x=3, vertices_y=3)[source]
Uses a MeshGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/grid.html
- procfunc.nodes.geo.mesh_icosphere(radius=1.0, subdivisions=1)[source]
Uses a MeshIcoSphere Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/icosphere.html
- procfunc.nodes.geo.mesh_line(start_location=(0, 0, 0), offset=(0, 0, 1), count=10, count_mode='TOTAL')[source]
Uses a MeshLine Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/mesh_line.html
- procfunc.nodes.geo.mesh_line_from_endpoints(start_location, end_location, count=10, count_mode='TOTAL')[source]
- procfunc.nodes.geo.mesh_to_curve(mesh, selection=True)[source]
Uses a MeshToCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_to_curve.html
- Parameters:
mesh (ProcNode[MeshObject])
- Return type:
- procfunc.nodes.geo.mesh_to_density_grid(mesh, density=1.0, voxel_size=0.3, gradient_width=0.2)[source]
Uses a MeshToDensityGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_to_volume.html
- procfunc.nodes.geo.mesh_to_points(mesh, selection=True, position=(0, 0, 0), radius=0.05, mode='VERTICES')[source]
Uses a MeshToPoints Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_to_points.html
- Parameters:
- Return type:
- procfunc.nodes.geo.mesh_to_sdf_grid(mesh, voxel_size=0.3, band_width=3)[source]
Uses a MeshToSDFGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_to_volume.html
- procfunc.nodes.geo.mesh_to_volume(mesh, density=1.0, voxel_amount=64.0, interior_band_width=0.2, resolution_mode='VOXEL_AMOUNT')[source]
Uses a MeshToVolume Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/mesh_to_volume.html
- procfunc.nodes.geo.mesh_uv_sphere(segments=32, rings=16, radius=1.0)[source]
Uses a MeshUVSphere Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/primitives/uv_sphere.html
- class procfunc.nodes.geo.ObjectInfoResult[source]
Bases:
NamedTuple,Generic[TObjectInfo]ObjectInfoResult(geometry, transform, location, rotation, scale)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.object_info(object, as_instance=False, transform_space='ORIGINAL')[source]
Uses a ObjectInfo Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/object_info.html
- procfunc.nodes.geo.offset_corner_in_face(corner_index=0, offset=0)[source]
Uses a OffsetCornerInFace Geometry Node.
- class procfunc.nodes.geo.OffsetPointInCurveResult[source]
Bases:
NamedTupleOffsetPointInCurveResult(is_valid_offset, point_index)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.offset_point_in_curve(point_index=0, offset=0)[source]
Uses a OffsetPointInCurve Geometry Node.
- procfunc.nodes.geo.points(count=1, position=(0, 0, 0), radius=0.1)[source]
Uses a Points Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/points.html
- Parameters:
- Return type:
- class procfunc.nodes.geo.PointsOfCurveResult[source]
Bases:
NamedTuplePointsOfCurveResult(point_index, total)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.points_of_curve(curve_index=0, weights=0.0, sort_index=0)[source]
Uses a PointsOfCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/topology/points_of_curve.html
- procfunc.nodes.geo.points_to_curves(points, curve_group_id=0, weight=0.0)[source]
Uses a PointsToCurves Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/points_to_curves.html
- Parameters:
points (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- procfunc.nodes.geo.points_to_sdf_grid(points, radius=0.5, voxel_size=0.3)[source]
Uses a PointsToSDFGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/points_to_volume.html
- Parameters:
points (ProcNode[MeshObject | CurveObject])
- Return type:
- procfunc.nodes.geo.points_to_vertices(points, selection=True)[source]
Uses a PointsToVertices Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/points_to_vertices.html
- Parameters:
points (ProcNode[MeshObject | CurveObject])
- Return type:
- procfunc.nodes.geo.points_to_volume(points, density=1.0, voxel_amount=64.0, radius=0.5, resolution_mode='VOXEL_AMOUNT')[source]
Uses a PointsToVolume Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/points_to_volume.html
- Parameters:
- Return type:
- class procfunc.nodes.geo.ProximityResult[source]
Bases:
NamedTupleProximityResult(position, distance, is_valid)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.proximity(geometry, group_id=0, sample_position=(0, 0, 0), sample_group_id=0, target_element='FACES')[source]
Uses a Proximity Geometry Node.
- class procfunc.nodes.geo.RaycastResult[source]
Bases:
NamedTupleRaycastResult(attribute, hit_distance, hit_normal, hit_position, is_hit)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.raycast(geometry, attribute=0, ray_direction=(0, 0, -1), ray_length=100.0, source_position=(0, 0, 0), mapping='INTERPOLATED', data_type=None)[source]
Uses a Raycast Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/sample/raycast.html
- Parameters:
geometry (ProcNode[MeshObject])
attribute (TRaycast)
ray_direction (ProcNode[Vector] | Vector)
source_position (ProcNode[Vector] | Vector)
mapping (Literal['INTERPOLATED', 'NEAREST'])
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
- procfunc.nodes.geo.realize_instances(geometry, selection=True, realize_all=True, depth=0)[source]
Uses a RealizeInstances Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/realize_instances.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject] | ProcNode[Instances])
- Return type:
ProcNode[MeshObject | CurveObject | Instances | VolumeObject]
- procfunc.nodes.geo.remove_attribute(geometry, name='', pattern_mode='EXACT')[source]
Uses a RemoveAttribute Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/remove_named_attribute.html
- procfunc.nodes.geo.replace_material(geometry, old=None, new=None)[source]
Uses a ReplaceMaterial Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/material/replace_material.html
- Parameters:
- Return type:
- procfunc.nodes.geo.resample_curve_evaluated(curve, selection=True)[source]
Uses a ResampleCurve Geometry Node with mode=”EVALUATED”.
From Blender docs: Evaluate the spline’s points based on the resolution attribute for NURBS and Bézier splines. Changes nothing for poly splines. https://docs.blender.org/manual/en/latest/modeling/geometry_nodes/curve/operations/resample_curve.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.resample_curve_count(curve, selection=True, count=10)[source]
Uses a ResampleCurve Geometry Node with mode=”COUNT”. https://docs.blender.org/manual/en/latest/modeling/geometry_nodes/curve/operations/resample_curve.html
- Parameters:
- Return type:
- procfunc.nodes.geo.resample_curve_length(curve, selection=True, length=1.0)[source]
Uses a ResampleCurve Geometry Node with mode=”LENGTH”. https://docs.blender.org/manual/en/latest/modeling/geometry_nodes/curve/operations/resample_curve.html
- Parameters:
- Return type:
- procfunc.nodes.geo.reverse_curve(curve, selection=True)[source]
Uses a ReverseCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/reverse_curve.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.rotate_instances(instances, selection=True, rotation=(0, 0, 0), pivot_point=(0, 0, 0), local_space=True)[source]
Uses a RotateInstances Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/rotate_instances.html
- procfunc.nodes.geo.sdf_grid_boolean(grid_1=0.0, grid_2=0.0)[source]
Uses a SDFGridBoolean Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/index.html
- Parameters:
- Return type:
ProcNode[MeshObject | CurveObject | Instances | VolumeObject]
- class procfunc.nodes.geo.SampleCurveResult[source]
Bases:
NamedTupleSampleCurveResult(normal, position, tangent, value)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.sample_curve(curves, curve_index=0, factor=0.0, value=None, mode='FACTOR', use_all_curves=False, data_type=None)[source]
Uses a SampleCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/sample/sample_curve.html
- Parameters:
curves (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
value (ProcNode[TAttribute] | TAttribute | None)
mode (Literal['FACTOR', 'LENGTH'])
use_all_curves (bool)
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
- procfunc.nodes.geo.sample_curve_length(curves, length=0.0, curve_index=0, value=None, use_all_curves=False, data_type=None)[source]
Uses a SampleCurve Geometry Node with LENGTH mode.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/sample/sample_curve.html
- Parameters:
curves (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
value (ProcNode[TAttribute] | TAttribute | None)
use_all_curves (bool)
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
- procfunc.nodes.geo.sample_index(geometry, index=0, value=None, clamp=False, domain='POINT', data_type=None)[source]
Uses a SampleIndex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/sample/sample_index.html
- procfunc.nodes.geo.sample_nearest(geometry, sample_position=(0, 0, 0), domain='POINT')[source]
Uses a SampleNearest Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/sample/sample_nearest.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject])
sample_position (ProcNode[Vector] | Vector)
domain (Literal['POINT', 'EDGE', 'FACE', 'CORNER'])
- Return type:
- class procfunc.nodes.geo.SampleResult[source]
Bases:
NamedTuple,Generic[TAttribute]SampleResult(value, is_valid)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.sample_nearest_surface(mesh, value=None, group_id=0, sample_group_id=0, sample_position=(0, 0, 0), data_type=None)[source]
Uses a SampleNearestSurface Geometry Node.
- Parameters:
- Return type:
SampleResult[TAttribute]
- procfunc.nodes.geo.sample_uv_surface(mesh, value=None, sample_uv=(0, 0, 0), uv_map=(0, 0, 0), data_type=None)[source]
Uses a SampleUVSurface Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/sample/sample_uv_surface.html
- Parameters:
mesh (ProcNode[MeshObject])
value (ProcNode[TAttribute] | None)
sample_uv (ProcNode[Vector] | Vector)
uv_map (ProcNode[Vector] | Vector)
data_type (NodeDataType | RuntimeResolveDataType | None)
- Return type:
SampleResult[TAttribute]
- procfunc.nodes.geo.scale_elements(geometry, selection=True, scale=1.0, center=(0, 0, 0), axis=None, domain='FACE', scale_mode='UNIFORM')[source]
Uses a ScaleElements Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/scale_elements.html
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
center (ProcNode[Vector] | Vector)
axis (ProcNode[Vector] | Vector | None)
domain (Literal['FACE', 'EDGE'])
scale_mode (Literal['UNIFORM', 'SINGLE_AXIS'])
- Return type:
ProcNode[MeshObject | CurveObject | Instances | VolumeObject]
- procfunc.nodes.geo.scale_instances(instances, selection=True, scale=(1, 1, 1), center=(0, 0, 0), local_space=True)[source]
Uses a ScaleInstances Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/scale_instances.html
- procfunc.nodes.geo.self_object()[source]
Uses a SelfObject Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/self_object.html
- class procfunc.nodes.geo.SeparateComponentsResult[source]
Bases:
NamedTupleSeparateComponentsResult(mesh, curve, point_cloud, volume, instances)
- mesh: ProcNode[MeshObject]
Alias for field number 0
- curve: ProcNode[CurveObject]
Alias for field number 1
- point_cloud: ProcNode[MeshObject | CurveObject]
Alias for field number 2
- volume: ProcNode[VolumeObject]
Alias for field number 3
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.separate_components(geometry)[source]
Uses a SeparateComponents Geometry Node.
- Parameters:
geometry (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- class procfunc.nodes.geo.SeparateGeometryResult[source]
Bases:
NamedTuple,Generic[TMeshOrCurve]SeparateGeometryResult(selection, inverted)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.separate_geometry(geometry, selection=True, domain='POINT')[source]
Uses a SeparateGeometry Geometry Node.
- procfunc.nodes.geo.set_curve_handle_positions(curve, selection=True, position=(0, 0, 0), offset=(0, 0, 0), mode='LEFT')[source]
Uses a SetCurveHandlePositions Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_handle_positions.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_curve_normal(curve, selection=True, mode='MINIMUM_TWIST', normal=(0, 0, 1))[source]
Uses a SetCurveNormal Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_curve_normal.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_curve_radius(curve, selection=True, radius=0.005)[source]
Uses a SetCurveRadius Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_curve_radius.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_curve_tilt(curve, selection=True, tilt=0.0)[source]
Uses a SetCurveTilt Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_curve_tilt.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_id(geometry, selection=True, id=0)[source]
Uses a SetID Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/write/set_id.html
- procfunc.nodes.geo.set_instance_transform(instances, transform=None, selection=True)[source]
Uses a SetInstanceTransform Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/set_instance_transform.html
- procfunc.nodes.geo.set_material(geometry, material=None, selection=None)[source]
Uses a SetMaterial Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/material/set_material.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_material_index(geometry, selection=True, material_index=0)[source]
Uses a SetMaterialIndex Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/material/set_material_index.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_point_radius(points, selection=True, radius=0.05)[source]
Uses a SetPointRadius Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/point/set_point_radius.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_position(geometry, selection=True, position=(0, 0, 0), offset=(0, 0, 0))[source]
Uses a SetPosition Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/geometry/write/set_position.html
- procfunc.nodes.geo.set_shade_smooth(geometry, selection=True, shade_smooth=True, domain='FACE')[source]
Uses a SetShadeSmooth Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/write/set_shade_smooth.html
- procfunc.nodes.geo.set_spline_cyclic(curve, selection=True, cyclic=False)[source]
Uses a SetSplineCyclic Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/write/set_spline_cyclic.html
- Parameters:
- Return type:
- procfunc.nodes.geo.set_spline_resolution(curve, selection=True, resolution=12)[source]
Uses a SetSplineResolution Geometry Node.
- Parameters:
- Return type:
- procfunc.nodes.geo.sort_elements(geometry, selection=True, group_id=0, sort_weight=0.0, domain='POINT')[source]
Uses a SortElements Geometry Node.
- class procfunc.nodes.geo.SplineLengthResult[source]
Bases:
NamedTupleSplineLengthResult(length, point_count)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.spline_length()[source]
Uses a SplineLength Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/spline_length.html
- Return type:
- class procfunc.nodes.geo.SplineParameterResult[source]
Bases:
NamedTupleSplineParameterResult(factor, length, index)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.spline_parameter()[source]
Uses a SplineParameter Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/read/spline_parameter.html
- Return type:
- procfunc.nodes.geo.split_edges(mesh, selection=True)[source]
Uses a SplitEdges Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/split_edges.html
- Parameters:
mesh (ProcNode[MeshObject])
- Return type:
- class procfunc.nodes.geo.SplitToInstancesResult[source]
Bases:
NamedTupleSplitToInstancesResult(instances, group_id)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.split_to_instances(geometry, selection=True, group_id=0, domain='POINT')[source]
Uses a SplitToInstances Geometry Node.
- Parameters:
- Return type:
- procfunc.nodes.geo.store_named_attribute(geometry, name='', selection=True, value=None, domain='POINT', data_type=None)[source]
Uses a StoreNamedAttribute Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/attribute/store_named_attribute.html
- Parameters:
- Return type:
ProcNode[TMeshOrCurve]
- procfunc.nodes.geo.store_named_grid(volume, grid=0.0, name='')[source]
Uses a StoreNamedGrid Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/index.html
- Parameters:
volume (ProcNode[MeshObject | CurveObject | Instances | VolumeObject])
- Return type:
- procfunc.nodes.geo.string_join(strings, delimiter='')[source]
Uses a StringJoin Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/join_strings.html
- class procfunc.nodes.geo.StringToCurvesResult[source]
Bases:
NamedTupleStringToCurvesResult(curve_instances, line, pivot_point)
- line: ProcNode[CurveObject]
Alias for field number 1
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.string_to_curves(string, size=1.0, character_spacing=1.0, word_spacing=1.0, line_spacing=1.0, text_box_width=0.0, align_x='LEFT', align_y='TOP_BASELINE', overflow='OVERFLOW', pivot_mode='BOTTOM_LEFT')[source]
Uses a StringToCurves Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/utilities/text/string_to_curves.html
- Parameters:
align_x (Literal['LEFT', 'CENTER', 'RIGHT', 'JUSTIFY', 'FLUSH'])
align_y (Literal['TOP', 'TOP_BASELINE', 'MIDDLE', 'BOTTOM_BASELINE', 'BOTTOM'])
overflow (Literal['OVERFLOW', 'SCALE_TO_FIT', 'TRUNCATE'])
pivot_mode (Literal['MIDPOINT', 'TOP_LEFT', 'TOP_CENTER', 'TOP_RIGHT', 'BOTTOM_LEFT', 'BOTTOM_CENTER', 'BOTTOM_RIGHT'])
- Return type:
- procfunc.nodes.geo.subdivide_curve(curve, cuts=1)[source]
Uses a SubdivideCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/subdivide_curve.html
- Parameters:
curve (ProcNode[CurveObject])
- Return type:
- procfunc.nodes.geo.subdivide_mesh(mesh, level=1)[source]
Uses a SubdivideMesh Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/subdivide_mesh.html
- Parameters:
mesh (ProcNode[MeshObject])
- Return type:
- procfunc.nodes.geo.subdivision_surface(mesh, level=1, edge_crease=0.0, vertex_crease=0.0, boundary_smooth='ALL', uv_smooth='PRESERVE_BOUNDARIES')[source]
Uses a SubdivisionSurface Geometry Node.
- Parameters:
mesh (ProcNode[MeshObject])
boundary_smooth (Literal['PRESERVE_CORNERS', 'ALL'])
uv_smooth (Literal['NONE', 'PRESERVE_CORNERS', 'PRESERVE_CORNERS_AND_JUNCTIONS', 'PRESERVE_CORNERS_JUNCTIONS_AND_CONCAVE', 'PRESERVE_BOUNDARIES', 'SMOOTH_ALL'])
- Return type:
- procfunc.nodes.geo.transform(geometry, translation=(0, 0, 0), rotation=(0, 0, 0), scale=(1, 1, 1))[source]
Uses a Transform Geometry Node.
- procfunc.nodes.geo.translate_instances(instances, selection=True, translation=(0, 0, 0), local_space=True)[source]
Uses a TranslateInstances Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/instances/translate_instances.html
- procfunc.nodes.geo.triangulate(mesh, selection=True, minimum_vertices=4, ngon_method='BEAUTY', quad_method='SHORTEST_DIAGONAL')[source]
Uses a Triangulate Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/operations/triangulate.html
- procfunc.nodes.geo.trim_curve(curve, selection=True, start=0.0, end=1.0, mode='FACTOR')[source]
Uses a TrimCurve Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/curve/operations/trim_curve.html
- procfunc.nodes.geo.uv_pack_islands(uv=(0, 0, 0), selection=True, margin=0.001, rotate=True)[source]
Uses a UVPackIslands Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/uv/pack_uv_islands.html
- procfunc.nodes.geo.uv_unwrap(selection=True, seam=False, margin=0.001, fill_holes=True, method='ANGLE_BASED')[source]
Uses a UVUnwrap Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/uv/uv_unwrap.html
- procfunc.nodes.geo.vertex_of_corner(corner_index=0)[source]
Uses a VertexOfCorner Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/mesh/topology/vertex_of_corner.html
- class procfunc.nodes.geo.TViewer
- def viewer(
geometry: t.ProcNode[t.Geometry], value: TViewer = 0, domain: TDomain = “AUTO”, data_type: NodeDataType | RuntimeResolveDataType | None = None,
- ) -> t.ProcNode:
“”” Uses a Viewer Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/output/viewer.html “”” if data_type is None:
- data_type = RuntimeResolveDataType(
[NodeDataType.BOOLEAN, NodeDataType.INT, NodeDataType.FLOAT], [“Value”],
)
- return t.ProcNode.from_nodetype(
node_type=”GeometryNodeViewer”, inputs={“Geometry”: geometry, “Value”: value}, attrs={
“domain”: domain, “data_type”: data_type,
},
)
alias of TypeVar(‘TViewer’, ~procfunc.nodes.types.ProcNode[bool] | bool, ~procfunc.nodes.types.ProcNode[int] | int, ~procfunc.nodes.types.ProcNode[float] | float)
- class procfunc.nodes.geo.ViewportTransformResult[source]
Bases:
NamedTupleViewportTransformResult(projection, view, is_orthographic)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.geo.viewport_transform()[source]
Uses a ViewportTransform Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/input/scene/viewport_transform.html
- Return type:
- procfunc.nodes.geo.volume_cube(density=1.0, background=0.0, min=(-1, -1, -1), max=(1, 1, 1), resolution_x=32, resolution_y=32, resolution_z=32)[source]
Uses a VolumeCube Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/primitives/volume_cube.html
- procfunc.nodes.geo.volume_to_mesh(volume, threshold=0.1, adaptivity=0.0, resolution_mode='GRID')[source]
Uses a VolumeToMesh Geometry Node.
See: https://docs.blender.org/manual/en/4.2/modeling/geometry_nodes/volume/operations/volume_to_mesh.html
pf.nodes.math
Math and Vector Math Node bindings for Blender
- procfunc.nodes.math.clamp(value=1.0, min=0.0, max=1.0, clamp_type='MINMAX')[source]
Uses a Clamp Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/clamp.html
- procfunc.nodes.math.vector_faceforward(vector=(0, 0, 0), surface=(0, 0, 0), normal=(0, 0, 0))[source]
- procfunc.nodes.math.vector_rotate_axis_angle(vector=(0, 0, 0), center=(0, 0, 0), axis=(0, 0, 1), angle=0.0, invert=False)[source]
Uses a VectorRotate Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/vector_rotate.html
- procfunc.nodes.math.vector_rotate_euler(vector=(0, 0, 0), center=(0, 0, 0), rotation=(0, 0, 0), invert=False)[source]
- procfunc.nodes.math.vector_transform(vector=(0.5, 0.5, 0.5), convert_from='WORLD', convert_to='OBJECT', vector_type='VECTOR')[source]
Uses a VectorTransform Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/transform.html
pf.nodes.shader
Auto-generated Shader Node bindings for Blender
- procfunc.nodes.shader.add_shader(shader_0=None, shader_1=None)[source]
Uses a AddShader Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/add.html
- class procfunc.nodes.shader.AmbientOcclusionResult[source]
Bases:
NamedTupleAmbientOcclusionResult(color, ao)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.ambient_occlusion(color=(1, 1, 1, 1), distance=1.0, normal=None, inside=False, only_local=False, samples=16)[source]
Uses a AmbientOcclusion Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/ao.html
- class procfunc.nodes.shader.AttributeResult[source]
Bases:
NamedTupleAttributeResult(color, vector, fac, alpha)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.attribute(attribute_name='', attribute_type='GEOMETRY')[source]
Uses a Attribute Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/attribute.html
- Parameters:
- Return type:
- procfunc.nodes.shader.background(color=(0.8, 0.8, 0.8, 1), strength=1.0)[source]
Uses a Background Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/background.html
- procfunc.nodes.shader.bevel(radius=0.05, normal=None, samples=4)[source]
Uses a Bevel Shader Node.
- Parameters:
- Return type:
ProcNode[Vector]
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/bevel.html
- procfunc.nodes.shader.blackbody(temperature=1500.0)[source]
Uses a Blackbody Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/blackbody.html
- procfunc.nodes.shader.bright_contrast(color=(1, 1, 1, 1), bright=0.0, contrast=0.0)[source]
Uses a BrightContrast Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/bright_contrast.html
- procfunc.nodes.shader.anisotropic_bsdf(color=(0.8, 0.8, 0.8, 1), roughness=0.5, anisotropy=0.0, rotation=0.0, normal=None, tangent=(0, 0, 0), distribution='MULTI_GGX')[source]
Uses a BsdfAnisotropic Shader Node.
- Parameters:
normal (ProcNode[Vector] | Vector) – Avoid using this input. We recommend using the shader’s Displacement output instead, which supports bumpmapping OR real mesh render/export.
color (ProcNode[Color] | Color)
tangent (ProcNode[Vector] | Vector)
distribution (Literal['BECKMANN', 'GGX', 'ASHIKHMIN_SHIRLEY', 'MULTI_GGX'])
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/principled.html
- procfunc.nodes.shader.diffuse_bsdf(color=(0.8, 0.8, 0.8, 1), roughness=0.0, normal=None)[source]
Uses a BsdfDiffuse Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/diffuse.html
- procfunc.nodes.shader.glass_bsdf(color=(1, 1, 1, 1), roughness=0.0, ior=1.5, normal=None, distribution='MULTI_GGX')[source]
Uses a BsdfGlass Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/glass.html
- procfunc.nodes.shader.hair_bsdf(color=(0.8, 0.8, 0.8, 1), offset=0.0, roughness_u=0.1, roughness_v=1.0, tangent=(0, 0, 0), component='Reflection')[source]
Uses a BsdfHair Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/hair.html
- procfunc.nodes.shader.principled_hair_bsdf(color=(0.017513, 0.005763, 0.002059, 1), roughness=0.3, radial_roughness=0.3, coat=0.0, ior=1.55, offset=0.034907, random_roughness=0.0, random=0.0, model='CHIANG', parametrization='COLOR')[source]
Uses a BsdfHairPrincipled Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/hair_principled.html
- procfunc.nodes.shader.principled_bsdf(base_color=(0.8, 0.8, 0.8, 1), metallic=0.0, roughness=0.5, ior=1.5, alpha=1.0, normal=(0.0, 0.0, 0.0), subsurface_method='RANDOM_WALK', subsurface_weight=0.0, subsurface_radius=(1, 0.2, 0.1), subsurface_scale=0.05, subsurface_ior=None, subsurface_anisotropy=None, distribution='MULTI_GGX', specular_ior_level=0.5, specular_tint=(1, 1, 1, 1), anisotropic=0.0, anisotropic_rotation=0.0, tangent=(0, 0, 0), transmission_weight=0.0, coat_weight=0.0, coat_roughness=0.03, coat_ior=1.5, coat_tint=(1, 1, 1, 1), coat_normal=(0.0, 0.0, 0.0), sheen_weight=0.0, sheen_roughness=0.5, sheen_tint=(1, 1, 1, 1), emission_color=(1, 1, 1, 1), emission_strength=0.0, thin_film_thickness=0.0, thin_film_ior=1.33)[source]
Uses a BsdfPrincipled Shader Node.
- Parameters:
normal (ProcNode[Vector] | Vector) – Avoid using this input. We recommend using the shader’s Displacement output instead, which supports bumpmapping OR real mesh render/export.
subsurface_ior (ProcNode[float] | float | None) – Only supported if subsurface_method is RANDOM_WALK_SKIN.
distribution (Literal['GGX', 'MULTI_GGX']) – configurs specular shading
base_color (ProcNode[Color] | Color)
subsurface_method (Literal['BURLEY', 'RANDOM_WALK', 'RANDOM_WALK_SKIN'])
subsurface_radius (ProcNode[Vector] | Vector)
specular_tint (ProcNode[Color] | Color)
tangent (ProcNode[Vector] | Vector)
coat_tint (ProcNode[Color] | Color)
coat_normal (ProcNode[Vector] | Vector)
sheen_tint (ProcNode[Color] | Color)
emission_color (ProcNode[Color] | Color)
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/principled.html
- procfunc.nodes.shader.ray_portal_bsdf(color=(1, 1, 1, 1), position=(0, 0, 0), direction=(0, 0, 0))[source]
Uses a BsdfRayPortal Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/ray_portal.html
- procfunc.nodes.shader.refraction_bsdf(color=(1, 1, 1, 1), roughness=0.0, ior=1.45, normal=None, distribution='BECKMANN')[source]
Uses a BsdfRefraction Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/refraction.html
- procfunc.nodes.shader.sheen_bsdf(color=(0.8, 0.8, 0.8, 1), roughness=0.5, normal=None, distribution='MICROFIBER')[source]
Uses a BsdfSheen Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/sheen.html
- procfunc.nodes.shader.toon_bsdf(color=(0.8, 0.8, 0.8, 1), size=0.5, smooth=0.0, normal=None, component='DIFFUSE')[source]
Uses a BsdfToon Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/toon.html
- procfunc.nodes.shader.translucent_bsdf(color=(0.8, 0.8, 0.8, 1), normal=None)[source]
Uses a BsdfTranslucent Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/translucent.html
- procfunc.nodes.shader.transparent_bsdf(color=(1, 1, 1, 1))[source]
Uses a BsdfTransparent Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/transparent.html
- procfunc.nodes.shader.bump(strength=1.0, distance=1.0, height=1.0, normal=None, invert=False)[source]
Uses a Bump Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/bump.html
- class procfunc.nodes.shader.CameraDataResult[source]
Bases:
NamedTupleCameraDataResult(view_vector, view_z_depth, view_distance)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.camera_data()[source]
Uses a CameraData Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/camera_data.html
- Return type:
- procfunc.nodes.shader.displacement(height=0.0, midlevel=0.5, scale=1.0, normal=None, space='OBJECT')[source]
Uses a Displacement Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/displacement.html
- procfunc.nodes.shader.eevee_specular(base_color=(0.8, 0.8, 0.8, 1), specular=(0.03, 0.03, 0.03, 1), roughness=0.2, emissive_color=(0, 0, 0, 1), transparency=0.0, normal=None, clear_coat=0.0, clear_coat_roughness=0.0, clear_coat_normal=None)[source]
Uses a EeveeSpecular Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/specular_bsdf.html
- procfunc.nodes.shader.emission(color=(1, 1, 1, 1), strength=1.0)[source]
Uses a Emission Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/emission.html
- procfunc.nodes.shader.fresnel(ior=1.5, normal=None)[source]
Uses a Fresnel Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/fresnel.html
- procfunc.nodes.shader.gamma(color=(1, 1, 1, 1), gamma=1.0)[source]
Uses a Gamma Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/gamma.html
- class procfunc.nodes.shader.HairInfoResult[source]
Bases:
NamedTupleHairInfoResult(is_strand, intercept, length, thickness, tangent_normal, random)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.hair_info()[source]
Uses a HairInfo Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/hair_info.html
- Return type:
- procfunc.nodes.shader.holdout()[source]
Uses a Holdout Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/holdout.html
- procfunc.nodes.shader.hue_saturation(hue=0.5, saturation=1.0, value=1.0, fac=1.0, color=(0.8, 0.8, 0.8, 1))[source]
Uses a HueSaturation Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/hue_saturation.html
- procfunc.nodes.shader.invert(fac=1.0, color=(0, 0, 0, 1))[source]
Uses a Invert Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/invert_color.html
- class procfunc.nodes.shader.LayerWeightResult[source]
Bases:
NamedTupleLayerWeightResult(fresnel, facing)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.layer_weight(blend=0.5, normal=(0.0, 0.0, 0.0))[source]
Uses a LayerWeight Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/layer_weight.html
- class procfunc.nodes.shader.LightFalloffResult[source]
Bases:
NamedTupleLightFalloffResult(quadratic, linear, constant)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.light_falloff(strength=100.0, smooth=0.0)[source]
Uses a LightFalloff Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/color/light_falloff.html
- class procfunc.nodes.shader.LightPathResult[source]
Bases:
NamedTupleLightPathResult(is_camera_ray, is_shadow_ray, is_diffuse_ray, is_glossy_ray, is_singular_ray, is_reflection_ray, is_transmission_ray, ray_length, ray_depth, diffuse_depth, glossy_depth, transparent_depth, transmission_depth)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.light_path()[source]
Uses a LightPath Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/light_path.html
- Return type:
- procfunc.nodes.shader.mapping(vector=(0, 0, 0), location=(0, 0, 0), rotation=(0, 0, 0), scale=(1, 1, 1), vector_type='POINT')[source]
Uses a Mapping Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/mapping.html
- procfunc.nodes.shader.mix_shader(factor=0.5, a=None, b=None)[source]
Uses a MixShader Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/mix.html
- class procfunc.nodes.shader.NormalResult[source]
Bases:
NamedTupleNormalResult(normal, dot)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.normal(normal=(0, 0, 1))[source]
Uses a Normal Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/normal.html
- Parameters:
normal (ProcNode[Vector] | Vector)
- Return type:
- procfunc.nodes.shader.normal_map(strength=1.0, color=(0.5, 0.5, 1, 1), space='TANGENT', uv_map='')[source]
Uses a NormalMap Shader Node.
This node is discouraged. We recommend using the shader’s Displacement output instead, which supports bumpmapping OR real mesh render/export.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/normal_map.html
- class procfunc.nodes.shader.ObjectInfoResult[source]
Bases:
NamedTupleObjectInfoResult(location, color, alpha, object_index, material_index, random)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.object_info()[source]
Uses a ObjectInfo Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/object_info.html
- Return type:
- class procfunc.nodes.shader.ParticleInfoResult[source]
Bases:
NamedTupleParticleInfoResult(index, random, age, lifetime, location, size, velocity, angular_velocity)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.particle_info()[source]
Uses a ParticleInfo Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/particle_info.html
- Return type:
- class procfunc.nodes.shader.PointInfoResult[source]
Bases:
NamedTuplePointInfoResult(position, radius, random)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.point_info()[source]
Uses a PointInfo Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/point_info.html
- Return type:
- procfunc.nodes.shader.rgb()[source]
Uses a RGB Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/rgb.html
- Return type:
ProcNode[Color]
- procfunc.nodes.shader.rgb_to_bw(color=(0.5, 0.5, 0.5, 1))[source]
Uses a RGBToBW Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/rgb_to_bw.html
- procfunc.nodes.shader.script(bytecode='', bytecode_hash='', filepath='', mode='INTERNAL', script=None, use_auto_update=False)[source]
Uses a Script Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/osl.html
- procfunc.nodes.shader.shader_to_rgb(shader=None)[source]
Uses a ShaderToRGB Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/shader_to_rgb.html
- procfunc.nodes.shader.squeeze(value=0.0, width=1.0, center=0.0)[source]
Uses a Squeeze Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/map_range.html
- procfunc.nodes.shader.subsurface_scattering(color=(0.8, 0.8, 0.8, 1), scale=0.05, radius=(1, 0.2, 0.1), ior=1.4, roughness=1.0, anisotropy=0.0, normal=(0.0, 0.0, 0.0), falloff='RANDOM_WALK')[source]
Uses a SubsurfaceScattering Shader Node.
- Parameters:
normal (ProcNode[Vector] | Vector) – Avoid using this input. We recommend using the shader’s Displacement output instead, which supports bumpmapping OR real mesh render/export.
color (ProcNode[Color] | Color)
radius (ProcNode[Vector] | Vector)
falloff (Literal['BURLEY', 'RANDOM_WALK', 'RANDOM_WALK_SKIN'])
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/volume_scatter.html
- procfunc.nodes.shader.tangent(axis='Z', direction_type='RADIAL', uv_map='')[source]
Uses a Tangent Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/tangent.html
- class procfunc.nodes.shader.TextureResult[source]
Bases:
NamedTupleTextureResult(fac, color)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.brick(vector, color1=(0.8, 0.8, 0.8, 1), color2=(0.2, 0.2, 0.2, 1), mortar=(0, 0, 0, 1), scale=5.0, mortar_size=0.02, mortar_smooth=0.1, bias=0.0, brick_width=0.5, row_height=0.25, offset=0.5, offset_frequency=2, squash=1.0, squash_frequency=2)[source]
Uses a TexBrick Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/brick.html
- procfunc.nodes.shader.checker(vector, color1=(0.8, 0.8, 0.8, 1), color2=(0.2, 0.2, 0.2, 1), scale=5.0)[source]
Uses a TexChecker Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/checker.html
- class procfunc.nodes.shader.CoordResult[source]
Bases:
NamedTupleCoordResult(generated, normal, uv, object, camera, window)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.coord(from_instancer=False, object=None)[source]
Uses a TexCoord Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/texture_coordinate.html
- Parameters:
- Return type:
- class procfunc.nodes.shader.GeometryResult[source]
Bases:
NamedTupleGeometryResult(position, normal, tangent, true_normal, incoming, parametric, backfacing, pointiness, random_per_island)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.environment(vector, image=None, interpolation='Linear', projection='EQUIRECTANGULAR')[source]
Uses a TexEnvironment Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/environment.html
- procfunc.nodes.shader.gradient(vector, gradient_type='LINEAR')[source]
Uses a TexGradient Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/gradient.html
- Parameters:
- Return type:
- procfunc.nodes.shader.ies(vector, strength=1.0, filepath='', ies=None, mode='INTERNAL')[source]
Uses a TexIES Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/ies.html
- procfunc.nodes.shader.image(vector, extension='REPEAT', image=None, interpolation='Linear', projection='FLAT', projection_blend=0.0)[source]
Uses a TexImage Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/image.html
- procfunc.nodes.shader.magic(vector, scale=5.0, distortion=1.0, turbulence_depth=2)[source]
Uses a TexMagic Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/magic.html
- procfunc.nodes.shader.noise(vector=(0.0, 0.0, 0.0), scale=5.0, detail=2.0, roughness=0.5, lacunarity=2.0, offset=0.0, gain=1.0, distortion=0.0, noise_dimensions='3D', noise_type='FBM', normalize=True, w=0.0)[source]
Uses a TexNoise Shader Node.
- Parameters:
offset (-) – Only supported for RIDGED_MULTIFRACTAL, HYBRID_MULTIFRACTAL, HETERO_TERRAIN noise types
gain (-) – Only supported for RIDGED_MULTIFRACTAL and HYBRID_MULTIFRACTAL noise types
distortion (-) – Only supported for RIDGED_MULTIFRACTAL, HYBRID_MULTIFRACTAL, HETERO_TERRAIN noise types
w (-) – Only supported for 1D and 4D noise dimensions
vector (ProcNode[Vector] | Vector)
noise_dimensions (Literal['1D', '2D', '3D', '4D'])
noise_type (Literal['MULTIFRACTAL', 'FBM', 'RIDGED_MULTIFRACTAL', 'HYBRID_MULTIFRACTAL', 'HETERO_TERRAIN'])
normalize (bool)
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/noise.html
- class procfunc.nodes.shader.PointDensityResult[source]
Bases:
NamedTuplePointDensityResult(color, density)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.point_density(vector, interpolation='Linear', object=None, particle_color_source='PARTICLE_AGE', particle_system=None, point_source='PARTICLE_SYSTEM', radius=0.3, resolution=100, space='OBJECT', vertex_attribute_name='', vertex_color_source='VERTEX_COLOR')[source]
Uses a TexPointDensity Shader Node.
Infinigen requires an explicit vector input - node will not default to using texture coordinate or world coordinate like blender
TODO: vertex_attribute_name and vertex_color_source are only available for point_source OBJECT
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/point_density.html
- Parameters:
vector (ProcNode[Vector] | Vector)
interpolation (Literal['Closest', 'Linear', 'Cubic'])
object (Any)
particle_color_source (Literal['PARTICLE_AGE', 'PARTICLE_SPEED', 'PARTICLE_VELOCITY'])
particle_system (Any)
point_source (Literal['OBJECT', 'PARTICLE_SYSTEM'])
radius (float)
resolution (int)
space (Literal['OBJECT', 'WORLD'])
vertex_attribute_name (str)
vertex_color_source (Literal['VERTEX_COLOR', 'VERTEX_NORMAL', 'VERTEX_WEIGHT'])
- Return type:
- procfunc.nodes.shader.sky(air_density=1.0, altitude=0.0, dust_density=1.0, ground_albedo=0.3, ozone_density=1.0, sky_type='NISHITA', sun_direction=(0.0, 0.0, 1.0), sun_disc=True, sun_elevation=0.261799, sun_intensity=1.0, sun_rotation=0.0, sun_size=0.009512, turbidity=2.2)[source]
Uses a TexSky Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/sky.html
- Parameters:
- Return type:
ProcNode[Color]
- class procfunc.nodes.shader.VoronoiResult[source]
Bases:
NamedTupleVoronoiResult(color, distance, position, w)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.voronoi(vector, scale=5.0, detail=0.0, roughness=0.5, lacunarity=2.0, randomness=1.0, exponent=0.0, distance='EUCLIDEAN', feature='F1', normalize=False, voronoi_dimensions='3D', w=0.0)[source]
Uses a TexVoronoi Shader Node.
- Parameters:
- Return type:
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/voronoi.html
- procfunc.nodes.shader.voronoi_distance(vector, scale=5.0, detail=0.0, roughness=0.5, lacunarity=2.0, randomness=1.0, normalize=False, voronoi_dimensions='3D', w=0.0)[source]
- procfunc.nodes.shader.voronoi_smooth_f1(vector, scale=5.0, detail=0.0, roughness=0.5, lacunarity=2.0, smoothness=0.5, randomness=1.0, distance='EUCLIDEAN', normalize=False, voronoi_dimensions='3D', w=0.0)[source]
- procfunc.nodes.shader.voronoi_n_spheres_distance(vector, scale=5.0, randomness=1.0, normalize=False)[source]
- procfunc.nodes.shader.wave(vector, scale=5.0, distortion=0.0, detail=2.0, detail_scale=1.0, detail_roughness=0.5, phase_offset=0.0, bands_direction='X', rings_direction='X', wave_profile='SIN', wave_type='BANDS')[source]
Uses a TexWave Shader Node.
TODO: bands_direction and rings_direction are only available for wave_type BANDS or RINGS respectively
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/wave.html
- procfunc.nodes.shader.white_noise(vector=None, noise_dimensions='3D', w=None)[source]
Uses a TexWhiteNoise Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/textures/white_noise.html
- procfunc.nodes.shader.uv_along_stroke(use_tips=False)[source]
Uses a UVAlongStroke Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/uv_map.html
- procfunc.nodes.shader.uv_map(from_instancer=False, uv_map='')[source]
Uses a UVMap Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/uv_map.html
- class procfunc.nodes.shader.ColorRampResult[source]
Bases:
NamedTupleColorRampResult(color, alpha)
Supported special methods:
__add__,__contains__,__getitem__,__getnewargs__,__iter__,__len__,__mul__,__rmul__
- procfunc.nodes.shader.color_ramp(fac=0.5, points=None, mode='RGB', interpolation='LINEAR')[source]
Uses a ValToRGB (ColorRamp) Shader Node with points support.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/color_ramp.html
- procfunc.nodes.shader.value()[source]
Uses a Value Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/value.html
- procfunc.nodes.shader.vector_displacement(vector=(0.8, 0.8, 0.8, 1), midlevel=0.0, scale=1.0, space='TANGENT')[source]
Uses a VectorDisplacement Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/vector/vector_displacement.html
- procfunc.nodes.shader.vertex_color(layer_name='')[source]
Uses a VertexColor Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/vertex_color.html
- procfunc.nodes.shader.volume_absorption(color=(0.8, 0.8, 0.8, 1), density=1.0)[source]
Uses a VolumeAbsorption Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/volume_absorption.html
- procfunc.nodes.shader.volume_info()[source]
Uses a VolumeInfo Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/input/volume_info.html
- Return type:
- procfunc.nodes.shader.volume_principled(color=(0.5, 0.5, 0.5, 1), color_attribute='', density=1.0, density_attribute='density', anisotropy=0.0, absorption_color=(0, 0, 0, 1), emission_strength=0.0, emission_color=(1, 1, 1, 1), blackbody_intensity=0.0, blackbody_tint=(1, 1, 1, 1), temperature=1000.0, temperature_attribute='temperature')[source]
Uses a VolumePrincipled Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/volume_principled.html
- procfunc.nodes.shader.volume_scatter(color=(0.8, 0.8, 0.8, 1), density=1.0, anisotropy=0.0)[source]
Uses a VolumeScatter Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/shader/volume_scatter.html
- procfunc.nodes.shader.wavelength(wavelength=500.0)[source]
Uses a Wavelength Shader Node.
See: https://docs.blender.org/manual/en/4.2/render/shader_nodes/converter/wavelength.html