PGCRYPT/OpenBlender_Train huggingface dataset:
user: Explain CompositorNodeMask(CompositorNode) in complete detail according to the official Blender documentation.

assistant: # CompositorNodeMask(CompositorNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`CompositorNode`](bpy.types.CompositorNode.html#bpy.types.CompositorNode "bpy.types.CompositorNode")

*class* bpy.types.CompositorNodeMask(*CompositorNode*)
:   Input mask from a mask data-block, created in the image editor

    mask
    :   Type:
        :   [`Mask`](bpy.types.Mask.html#bpy.types.Mask "bpy.types.Mask")

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    update()

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Describe Inputs from the Blender manual or Python API, including usage steps and snippets.

assistant: Mesh
:   Standard geometry input.

Selection
:   Boolean field that controls which faces will have the Face Set value applied.

Face Set
:   Integer field for specifying which face set each selected face should be moved to.
    Ignored for faces where the value of Selection is false.
user: Explain Examples in complete detail according to the official Blender documentation.

assistant: [image reference removed]

Here, the handles are adjusted to the same position as the control points, but offset down in
the Z direction slightly. With the [Set Spline Type Node](set_spline_type.xhtml),
the curve can be a poly spline in Edit Mode, to make adjustment simpler for the user of the node group.
user: Describe NodeEnableOutput(NodeInternal) from the Blender manual or Python API, including usage steps and snippets.

assistant: # NodeEnableOutput(NodeInternal)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal")

*class* bpy.types.NodeEnableOutput(*NodeInternal*)
:   Either pass through the input value or output the fallback value

    data_type
    :   Type:
        :   enum in [Node Socket Data Type Items](bpy_types_enum_items/node_socket_data_type_items.html#rna-enum-node-socket-data-type-items), default `'FLOAT'`

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Provide the full official documentation entry for Scene Options, preserving all code examples.

assistant: Object
:   Determine which objects will be included in the export.

    Active:
    :   Export only the active Grease Pencil object.

    Selected:
    :   Export all selected Grease Pencil objects.

    Visible:
    :   Export all visible Grease Pencil object in the scene.
user: Provide the full official documentation entry for Lightgroup(bpy_struct), preserving all code examples.

assistant: # Lightgroup(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.Lightgroup(*bpy_struct*)
:   name
    :   Name of the Lightgroup

        Type:
        :   string, default “”, (never None)

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Provide the full official documentation entry for Weight Paint Brushes, preserving all code examples.

assistant: # Weight Paint Brushes

Brushes for Grease Pencil *Weight Paint* mode bundled in the *Essentials* library.

Paint Point Weight
:   Paints a specified weight over the strokes.

Blur Point Weight
:   Smooths out the weighting of adjacent points. In this mode the Weight
    Value is ignored. The strength defines how much the smoothing is applied.

Average Point Weight
:   Smooths weights by painting the average resulting weight from all weights under the brush.

Smear Point Weight
:   Smudges weights by grabbing the weights under the brush and “dragging” them.
    This can be imagined as a finger painting tool.
user: Explain BlendDataWorkSpaces(bpy_struct) in complete detail according to the official Blender documentation.

assistant: # BlendDataWorkSpaces(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.BlendDataWorkSpaces(*bpy_struct*)
:   Collection of workspaces

    tag(*value*)
    :   tag

        Parameters:
        :   **value** (*boolean*) – Value

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Show practical ways to work with Make Single User in a Blender add-on or script – include code.

assistant: Duplicates actions where necessary so that each selected strip has its own action that’s not used
by any others. This way, you can edit the keyframes in the selected strips knowing that you won’t
affect any other part of the animation.
user: Give a detailed overview of Enabling Add-on: syntax, arguments, return values, common patterns.

assistant: 1. Open Blender and go to [Add-ons](../../editors/preferences/addons.html) section of the [Preferences](../../editors/preferences/index.html).
2. Search “Manage UI Translations” and check the *Enable Add-on* checkbox.
user: Explain Follow Path Constraint in complete detail according to the official Blender documentation.

assistant: # Follow Path Constraint

The *Follow Path* constraint positions an object or bone on a [Curve](../../../modeling/curves/introduction.html).
The desired position can be specified in two ways:

- Using a frame number, namely the [Evaluation Time](../../../modeling/curves/properties/path_animation.html#bpy-types-curve-eval-time) of the Curve with an optional
  *Offset* in the constraint.
- Using a number between 0 and 1, namely the *Offset Factor* in the constraint.

By animating these properties, the object or bone can be made to move along the Curve.
It’s also possible to make it rotate to match the Curve’s direction.
Use cases include cameras on rails, vehicles on roads, boxes on conveyor belts, and so on.

To set up the constraint more quickly, select the object, add the Curve to the selection,
press `Ctrl`-`P`, and click *Path Constraint*.
user: How do I use Bpy.Types.Greasepencilshrinkwrapmodifier in Blender? Include parameters, examples, warnings and best practices.

assistant: rapModifier.auxiliary_target GreasePencilShrinkwrapModifier.cull_face GreasePencilShrinkwrapModifier.invert_layer_filter GreasePencilShrinkwrapModifier.invert_layer_pass_filter GreasePencilShrinkwrapModifier.invert_material_filter GreasePencilShrinkwrapModifier.invert_material_pass_filter GreasePencilShrinkwrapModifier.invert_vertex_group GreasePencilShrinkwrapModifier.layer_pass_filter GreasePencilShrinkwrapModifier.material_filter GreasePencilShrinkwrapModifier.material_pass_filter GreasePencilShrinkwrapModifier.offset GreasePencilShrinkwrapModifier.open_influence_panel GreasePencilShrinkwrapModifier.project_limit GreasePencilShrinkwrapModifier.smooth_factor GreasePencilShrinkwrapModifier.smooth_step GreasePencilShrinkwrapModifier.subsurf_levels GreasePencilShrinkwrapModifier.target GreasePencilShrinkwrapModifier.tree_node_filter GreasePencilShrinkwrapModifier.use_invert_cull GreasePencilShrinkwrapModifier.use_layer_group_filter GreasePencilShrinkwrapModifier.use_layer_pass_filter GreasePencilShrinkwrapModifier.use_material_pass_filter GreasePencilShrinkwrapModifier.use_negative_direction GreasePencilShrinkwrapModifier.use_positive_direction GreasePencilShrinkwrapModifier.use_project_x GreasePencilShrinkwrapModifier.use_project_y GreasePencilShrinkwrapModifier.use_project_z GreasePencilShrinkwrapModifier.vertex_group_name GreasePencilShrinkwrapModifier.wrap_method GreasePencilShrinkwrapModifier.wrap_mode GreasePencilShrinkwrapModifier.bl_rna_get_subclass() GreasePencilShrinkwrapModifier.bl_rna_get_subclass_py() Inherited Properties Inherited Functions
user: How do I use StretchToConstraint(Constraint) in Blender? Include parameters, examples, warnings and best practices.

assistant: # StretchToConstraint(Constraint)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Constraint`](bpy.types.Constraint.html#bpy.types.Constraint "bpy.types.Constraint")

*class* bpy.types.StretchToConstraint(*Constraint*)
:   Stretch to meet the target object

    bulge
    :   Factor between volume variation and stretching

        Type:
        :   float in [0, 100], default 0.0

    bulge_max
    :   Maximum volume stretching factor

        Type:
        :   float in [1, 100], default 0.0

    bulge_min
    :   Minimum volume stretching factor

        Type:
        :   float in [0, 1], default 0.0

    bulge_smooth
    :   Strength of volume stretching clamping

        Type:
        :   float in [0, 1], default 0.0

    head_tail
    :   Target along length of bone: Head is 0, Tail is 1

        Type:
        :   float in [0, 1], default 0.0

    keep_axis
    :   The rotation type and axis order to use

        - `PLANE_X`
          XZ – Rotate around local X, then Z.
        - `PLANE_Z`
          ZX – Rotate around local Z, then X.
        - `SWING_Y`
          Swing – Use the smallest single axis rotation, similar to Damped Track.

        Type:
        :   enum in [`'PLANE_X'`, `'PLANE_Z'`, `'SWING_Y'`], default `'PLANE_X'`

    rest_length
    :   Length at rest position

        Type:
        :   float in [0, 1000], default 0.0

    subtarget
    :   Armature bone, mesh or lattice vertex group, …

        Type:
        :   string, default “”, (never None)

    target
    :   Target object

        Type:
        :   [`Object`](bpy.types.Object.html#bpy.types.Object "bpy.types.Object")

    use_bbone_shape
    :   Follow shape of B-Bone segments when calculating Head/Tail position

        Type:
        :   boolean, default False

    use_bulge_max
    :   Use upper limit for volume variation

        Type:
        :   boolean, default False

    use_bulge_min
    :   Use lower limit for volume variation

        Type:
        :   boolean, default False

    volume
    :   Maintain the object’s volume as it stretches

        Type:
        :   enum in [`'VOLUME_XZX'`, `'VOLUME_X'`, `'VOLUME_Z'`, `'NO_VOLUME'`], default `'VOLUME_XZX'`

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Give a detailed overview of Rename Active Item: syntax, arguments, return values, common patterns.

assistant: The *Rename Active Item* operator renames the active
[Bone](../../animation/armatures/bones/index.html),
[Node](../../interface/controls/nodes/index.html),
[Object](../../scene_layout/object/index.html) and
[Sequence Strip](../../video_editing/edit/montage/strips/index.html).

When the operator is executed, a pop-up dialog appears.
The text field shows the name of the current item and can be overwritten to rename the item.
`Return` confirms the name while `Esc` cancels the operator.
user: Provide the full official documentation entry for Modifiers, preserving all code examples.

assistant: ### Common Options

Mix
:   The modifier output can be mixed with the base property using the usual methods
    (see for example the [Mix compositing node](../../../../compositing/types/color/mix_color.xhtml)).

Influence
:   How much the result of this modifier affects the current property.

### Types

- [Along Stroke](modifiers/thickness/along_stroke.xhtml)
- [Calligraphy](modifiers/thickness/calligraphy.xhtml)
- [Crease Angle](modifiers/thickness/crease_angle.xhtml)
- [Curvature 3D](modifiers/thickness/curvature_3d.xhtml)
- [Distance from Camera](modifiers/thickness/distance_from_camera.xhtml)
- [Distance from Object](modifiers/thickness/distance_from_object.xhtml)
- [Material](modifiers/thickness/material.xhtml)
- [Noise](modifiers/thickness/noise.xhtml)
- [Tangent](modifiers/thickness/tangent.xhtml)
user: Explain Built-in Color Spaces in complete detail according to the official Blender documentation.

assistant: Blender’s OCIO configuration file is equipped by default to read/write files in these color spaces

### Display

Color spaces for displays and image files.

sRGB:
:   Standard RGB display space using Rec. 709 chromaticities and a D65 white point.

Rec.2020:
:   BT.2020 2.4 Exponent EOTF Display.

Rec.1886:
:   BT.1886 2.4 Exponent EOTF Display, commonly used for TVs.

Display P3:
:   Apple’s Display P3 with sRGB compound (piece-wise) encoding transfer function, common on Mac devices.

Rec.2100 PQ:
:   For high dynamic range images and video with Rec.2020 wide gamut, up to 10000 nits.

Rec.2100 HLG:
:   For high dynamic range images and video with Rec.2020 wide gamut, up to 1000 nits.

### Linear

Color spaces commonly used for OpenEXR files.

Working Space:
:   The linear working space of the current blend file,
    that is used by default in compositing, shader and geometry nodes.

Linear Rec.709:
:   Linear BT.709 chromaticities with illuminant D65 white point.

Linear Rec.2020:
:   Linear BT.2020 with illuminant D65 white point.

ACEScg:
:   An ACES color space that is designed to be used for rendering and compositing.
    It uses the AP1 color primaries, a D60 white point, and a linear transfer function.
    The standard working space in ACES workflows.

ACES2065-1:
:   An ACES color space using the AP0 color primaries, a D60 white point and a linear transfer function.
    This color space is meant to store and transfer data, preserving the most information possible.
    Commonly used for delivery and archival in ACES workflows.

Linear FilmLight E-Gamut:
:   Linear E-Gamut with illuminant D65 white point.

Linear DCI-P3 D65:
:   Linear DCI-P3 with illuminant D65 white point.

Linear CIE-XYZ E:
:   1931 CIE XYZ standard with assumed illuminant E white point.

Linear CIE-XYZ D65:
:   1931 CIE XYZ with adapted illuminant D65 white point.

### Other

Non-Color:
:   Generic data that is not color, will not apply any color transform (e.g. normal maps or displacement maps).

Working Space:
:   Uses the [File](#bpy-types-blendfilecolorspace-working-space)
    color space defined in the scene’s color management settings.

### Log

ACEScc:
:   ACES color correction space, using AP1 primaries.

ACEScct:
:   ACES color correction space with toe, using AP1 primaries.

AgX Log:
:   Intermediate log color space of AgX view transform.

Filmic Log:
:   Intermediate log color space of Filmic view transform.

### Utilities

Color spaces corresponding to view transforms. These color spaces can
be used for background images that should not be affected by the view
transform, while everything else in the scene is affected.

ACES 1.3 sRGB:
:   ACES 1.3 view transform

ACES 2.0 sRGB:
:   ACES 2.0 view transform

AgX Base sRGB:
:   AgX view transform

Filmic sRGB:
:   Filmic view transform

Khronos PBR Neutral sRGB:
:   Khronos PBR Neutral view transform
user: Provide the full official documentation entry for Toggle Cyclic, preserving all code examples.

assistant: Toggles between an open stroke and closed stroke (cyclic).

Type
:   Close All:
    :   Close all open selected strokes.

    Open All:
    :   Open all closed selected strokes.

    Toggle:
    :   Close or Open selected strokes as required.

Match Point Density
:   Add point in the new segment to keep the same density.
user: How do I use Perspective/Orthographic in Blender? Include parameters, examples, warnings and best practices.

assistant: # Perspective/Orthographic

This operator changes the projection of the viewport camera.
Each 3D Viewport supports two different types of projection.
These are demonstrated in the Fig. below.

|  |  |
| --- | --- |
| ../../../_images/editors_3dview_navigate_projections_view-orthographic.png   Orthographic projection. | ../../../_images/editors_3dview_navigate_projections_view-perspective.png   Perspective projection. |

Our eyes are used to perspective viewing where distant objects appear smaller.
Orthographic projection often seems a bit odd at first,
because objects stay the same size regardless of their distance.
It is like viewing the scene from an infinitely distant point.
Nevertheless, orthographic viewing can be very useful,
because it provides a more “technical” insight into the scene,
making it easier to model and judge proportions.
user: How do I use NodeSocketVectorEuler(NodeSocketStandard) in Blender? Include parameters, examples, warnings and best practices.

assistant: # NodeSocketVectorEuler(NodeSocketStandard)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`NodeSocket`](bpy.types.NodeSocket.html#bpy.types.NodeSocket "bpy.types.NodeSocket"), [`NodeSocketStandard`](bpy.types.NodeSocketStandard.html#bpy.types.NodeSocketStandard "bpy.types.NodeSocketStandard")

*class* bpy.types.NodeSocketVectorEuler(*NodeSocketStandard*)
:   3D vector socket of a node

    default_value
    :   Input value used for unconnected socket

        Type:
        :   [`mathutils.Euler`](mathutils.html#mathutils.Euler "mathutils.Euler") rotation of 3 items in [-inf, inf], default (0.0, 0.0, 0.0)

    links
    :   List of node links from or to this socket.

        Type:
        :   [`NodeLinks`](bpy.types.NodeLinks.html#bpy.types.NodeLinks "bpy.types.NodeLinks")

        (readonly)

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Explain Output in complete detail according to the official Blender documentation.

assistant: Leading
:   The running total of values in the corresponding group, starting at the first value.

Trailing
:   The running total of values in the corresponding group, starting at zero.

Total
:   The total of all the values in the corresponding group.
user: Describe Import CSV Node from the Blender manual or Python API, including usage steps and snippets.

assistant: # Import CSV Node

[image reference removed]

The *Import CSV* node reads data from a CSV (Comma-Separated Values) file and generates a point cloud.
Each row in the file becomes a point, with numeric columns imported as attributes.

Attribute names are taken from the header row (if present), and types are inferred from the first value in each
column:

- Integer values create integer attributes.
- Float values create float attributes.

This node is useful for visualizing external datasets in Geometry Nodes,
such as for scientific visualization or procedural generation based on tabular data.
user: What is Cloth Modifier and how is it used in Blender Python scripting?

assistant: # Cloth Modifier

The Cloth modifier is a container for a [Cloth Physics](../../../physics/cloth/index.xhtml) simulation. It can be useful
for example, to simulate on a low-poly mesh then add a [Subdivision Surface Modifier](../generate/subdivision_surface.xhtml)
after the Cloth modifier to improve the visual quality of the cloth without drastically increasing simulation times.
user: Describe Outputs from the Blender manual or Python API, including usage steps and snippets.

assistant: Geometry
:   The resulting geometry with curled hair curves.

### Guide Map

Guide Index
:   The guide index map used for the operation.
    If this node created a new guide map, it is stored and output here
    for use in subsequent nodes.
user: Show practical ways to work with Grease Pencil in a Blender add-on or script – include code.

assistant: - [Grease Pencil Edit](../../../grease_pencil/modes/edit/tools/index.html#gpencil-edit-toolbar-index)
- [Grease Pencil Draw](../../../grease_pencil/modes/draw/tools.html#gpencil-draw-toolbar-index)
- [Grease Pencil Sculpting](../../../grease_pencil/modes/sculpting/tools.html#gpencil-sculpt-toolbar-index)
- [Grease Pencil Weight Paint](../../../grease_pencil/modes/weight_paint/tools.html#gpencil-weight-paint-toolbar-index)
user: What is CompositorNodeVecBlur(CompositorNode) and how is it used in Blender Python scripting?

assistant: # CompositorNodeVecBlur(CompositorNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`CompositorNode`](bpy.types.CompositorNode.html#bpy.types.CompositorNode "bpy.types.CompositorNode")

*class* bpy.types.CompositorNodeVecBlur(*CompositorNode*)
:   Uses the vector speed render pass to blur the image pixels in 2D

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    update()

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Give a detailed overview of Contacts: syntax, arguments, return values, common patterns.

assistant: [Project Page](https://projects.blender.org/blender/documentation)
:   An overview of the documentation project.

[Documentation Forum](https://devtalk.blender.org/c/documentation/12)
:   A forum based discussions on writing and translating documentation. This includes the user manual, Wiki, release
    notes, and code docs.

[Chat](../../getting_started/about/community.html#blender-chat)
:   `#docs` channel for informal discussions in real-time.

[Project Workboard](https://projects.blender.org/blender/documentation/projects)
:   Manage tasks such as bugs, todo lists, and future plans.
user: How do I use NodeTreeInterfaceSocketCollection(NodeTreeInterfaceSocket) in Blender? Include parameters, examples, warnings and best practices.

assistant: # NodeTreeInterfaceSocketCollection(NodeTreeInterfaceSocket)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`NodeTreeInterfaceItem`](bpy.types.NodeTreeInterfaceItem.html#bpy.types.NodeTreeInterfaceItem "bpy.types.NodeTreeInterfaceItem"), [`NodeTreeInterfaceSocket`](bpy.types.NodeTreeInterfaceSocket.html#bpy.types.NodeTreeInterfaceSocket "bpy.types.NodeTreeInterfaceSocket")

*class* bpy.types.NodeTreeInterfaceSocketCollection(*NodeTreeInterfaceSocket*)
:   Collection socket of a node

    default_value
    :   Input value used for unconnected socket

        Type:
        :   [`Collection`](bpy.types.Collection.html#bpy.types.Collection "bpy.types.Collection")

    draw(*context*, *layout*)
    :   Draw interface socket settings

        Parameters:
        :   **layout** ([`UILayout`](bpy.types.UILayout.html#bpy.types.UILayout "bpy.types.UILayout"), (never None)) – Layout, Layout in the UI

    init_socket(*node*, *socket*, *data_path*)
    :   Initialize a node socket instance

        Parameters:
        :   - **node** ([`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), (never None)) – Node, Node of the socket to initialize
            - **socket** ([`NodeSocket`](bpy.types.NodeSocket.html#bpy.types.NodeSocket "bpy.types.NodeSocket"), (never None)) – Socket, Socket to initialize
            - **data_path** (*string**,* *(**never None**)*) – Data Path, Path to specialized socket data

    from_socket(*node*, *socket*)
    :   Setup template parameters from an existing socket

        Parameters:
        :   - **node** ([`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), (never None)) – Node, Node of the original socket
            - **socket** ([`NodeSocket`](bpy.types.NodeSocket.html#bpy.types.NodeSocket "bpy.types.NodeSocket"), (never None)) – Socket, Original socket

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: What is O and how is it used in Blender Python scripting?

assistant: |  |  |
| --- | --- |
| - [**Object**](glossary/index.xhtml#term-Object) - [**Object Center**](glossary/index.xhtml#term-Object-Center) - [Object Constraints](animation/constraints/introduction.xhtml#index-1)   - [Action Constraint](animation/constraints/relationship/action.xhtml#index-0)   - [Armature Constraint](animation/constraints/relationship/armature.xhtml#index-0)   - [Camera Solver Constraint](animation/constraints/motion_tracking/camera_solver.xhtml#index-0)   - [Child Of Constraint](animation/constraints/relationship/child_of.xhtml#index-0)   - [Clamp To Constraint](animation/constraints/tracking/clamp_to.xhtml#index-0)   - [Copy Location Constraint](animation/constraints/transform/copy_location.xhtml#index-0)   - [Copy Rotation Constraint](animation/constraints/transform/copy_rotation.xhtml#index-0)   - [Copy Scale Constraint](animation/constraints/transform/copy_scale.xhtml#index-0)   - [Copy Transforms Constraint](animation/constraints/transform/copy_transforms.xhtml#index-0)   - [Damped Track Constraint](animation/constraints/tracking/damped_track.xhtml#index-0)   - [Floor Constraint](animation/constraints/relationship/floor.xhtml#index-0)   - [Follow Path Constraint](animation/constraints/relationship/follow_path.xhtml#index-0)   - [Follow Track Constraint](animation/constraints/motion_tracking/follow_track.xhtml#index-0)   - [Geometry Attribute Constraint](animation/constraints/relationship/geometry_attribute.xhtml#index-0)   - [Inverse Kinematics Constraint](animation/constraints/tracking/ik_solver.xhtml#index-0)   - [Limit Distance Constraint](animation/constraints/transform/limit_distance.xhtml#index-0)   - [Limit Location Constraint](animation/constraints/transform/limit_location.xhtml#index-0)   - [Limit Rotation Constraint](animation/constraints/transform/limit_rotation.xhtml#index-0)   - [Limit Scale Constraint](animation/constraints/transform/limit_scale.xhtml#index-0)   - [Locked Track Constraint](animation/constraints/tracking/locked_track.xhtml#index-0)   - [Maintain Volume Constraint](animation/constraints/transform/maintain_volume.xhtml#index-0)   - [Object Solver Constraint](animation/constraints/motion_tracking/object_solver.xhtml#index-0)   - [Pivot Constraint](animation/constraints/relationship/pivot.xhtml#index-0)   - [Shrinkwrap Constraint](animation/constraints/relationship/shrinkwrap.xhtml#index-0)   - [Spline IK Constraint](animation/constraints/tracking/spline_ik.xhtml#index-0)   - [Stretch To Constraint](animation/constraints/tracking/stretch_to.xhtml#index-0)   - [Track To Constraint](animation/constraints/tracking/track_to.xhtml#index-0)   - [Transform Cache Constraint](animation/constraints/transform/transform_cache.xhtml#index-0)   - [Transformation Constraint](animation/constraints/transform/transformation.xhtml#index-0) | - [**Object Origin**](glossary/index.xhtml#term-Object-Origin) - [**Octahedron**](glossary/index.xhtml#term-Octahedron) - [**OpenGL**](glossary/index.xhtml#term-OpenGL) - [**Operator**](glossary/index.xhtml#term-Operator) - [**Overscan**](glossary/index.xhtml#term-Overscan) |
user: How do I use ShaderNodeVectorTransform(ShaderNode) in Blender? Include parameters, examples, warnings and best practices.

assistant: # ShaderNodeVectorTransform(ShaderNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`ShaderNode`](bpy.types.ShaderNode.html#bpy.types.ShaderNode "bpy.types.ShaderNode")

*class* bpy.types.ShaderNodeVectorTransform(*ShaderNode*)
:   Convert a vector, point, or normal between world, camera, and object coordinate space

    convert_from
    :   Space to convert from

        Type:
        :   enum in [`'WORLD'`, `'OBJECT'`, `'CAMERA'`], default `'WORLD'`

    convert_to
    :   Space to convert to

        Type:
        :   enum in [`'WORLD'`, `'OBJECT'`, `'CAMERA'`], default `'WORLD'`

    vector_type
    :   - `POINT`
          Point – Transform a point.
        - `VECTOR`
          Vector – Transform a direction vector.
        - `NORMAL`
          Normal – Transform a normal vector with unit length.

        Type:
        :   enum in [`'POINT'`, `'VECTOR'`, `'NORMAL'`], default `'VECTOR'`

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Explain Introduction in complete detail according to the official Blender documentation.

assistant: # Introduction

The rigid body simulation can be used to simulate the motion of solid objects.
It affects the position and orientation of objects and does not deform them.

Unlike the other simulations in Blender, the rigid body simulation works closer with the animation system.
This means that rigid bodies can be used like regular objects and be part of parent-child relationships,
animation constraints and drivers.
user: How do I use String to Curves Node in Blender? Include parameters, examples, warnings and best practices.

assistant: # String to Curves Node

[image reference removed]

The *String to Curves* node converts a string to curve instances. Each unique character used in the string
is converted to a curve once, and further uses of that character are instances of the same geometry.
The name of each instance geometry is the character it represents.

This makes processing the output geometry very efficient, because each unique character
only has to be processed once. However, it means that the result will be the same
for every instance of the same character. To process each character individually,
the [Realize Instances Node](../../instances/realize_instances.xhtml) can be used.
user: Provide the full official documentation entry for Adding Scene Strips, preserving all code examples.

assistant: Existing scenes can be added from the Add ‣ Scene ‣ “Scene Name”.
Additionally, any scene asset in the current file or in an [Asset Library](../../../../files/asset_libraries/introduction.html) will also show up in the Add ‣ Scene.
If a scene asset is assigned to a [Catalog](../../../../files/asset_libraries/catalogs.html), the catalog hierarchy will show up as a sub-menu.
When adding a scene asset as a strip, the scene is always appended/duplicated.

New scenes can also be created directly from the add menu with Add ‣ Scene ‣ Empty Scene.

Options

Start Frame
:   The first frame to start the scene strip.

Channel
:   The channel to place the strip in.

Replace Selection
:   Replace the active strip with the new scene strip.

When creating a new scene you have the following options:

Type
:   How the new scene is created.

    New:
    :   Add new Strip with a new empty Scene with default settings.

    Copy Settings:
    :   Add a new Strip, with an empty scene, and copy settings from the current scene.

    Linked Copy:
    :   Add a Strip and link in the collections from the current scene (shallow copy).

    Full Copy:
    :   Add a Strip and make a full copy of the current scene.
user: What is Texture and how is it used in Blender Python scripting?

assistant: # Texture

You can use a *Texture* force field to create an arbitrarily complicated force field,
which force in the three directions is color coded. Red is coding for the X axis,
green for the Y axis and blue for the Z axis
(like the color of the coordinate axes in the 3D Viewport). A value of 0.5 means no force,
a value larger than 0.5 acceleration in negative axis direction (like -Z),
a value smaller than 0.5 acceleration in positive axis direction (like +Z).
user: Provide the full official documentation entry for AssetTags(bpy_struct), preserving all code examples.

assistant: # AssetTags(bpy_struct)

base class — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct")

*class* bpy.types.AssetTags(*bpy_struct*)
:   Collection of custom asset tags

    new(*name*, *\**, *skip_if_exists=False*)
    :   Add a new tag to this asset

        Parameters:
        :   - **name** (*string**,* *(**never None**)*) – Name
            - **skip_if_exists** (*boolean**,* *(**optional**)*) – Skip if Exists, Do not add a new tag if one of the same type already exists

        Returns:
        :   New tag

        Return type:
        :   [`AssetTag`](bpy.types.AssetTag.html#bpy.types.AssetTag "bpy.types.AssetTag")

    remove(*tag*)
    :   Remove an existing tag from this asset

        Parameters:
        :   **tag** ([`AssetTag`](bpy.types.AssetTag.html#bpy.types.AssetTag "bpy.types.AssetTag"), (never None)) – Removed tag

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Provide the full official documentation entry for GeometryNodeMeshToPoints(GeometryNode), preserving all code examples.

assistant: # GeometryNodeMeshToPoints(GeometryNode)

base classes — [`bpy_struct`](bpy.types.bpy_struct.html#bpy.types.bpy_struct "bpy.types.bpy_struct"), [`Node`](bpy.types.Node.html#bpy.types.Node "bpy.types.Node"), [`NodeInternal`](bpy.types.NodeInternal.html#bpy.types.NodeInternal "bpy.types.NodeInternal"), [`GeometryNode`](bpy.types.GeometryNode.html#bpy.types.GeometryNode "bpy.types.GeometryNode")

*class* bpy.types.GeometryNodeMeshToPoints(*GeometryNode*)
:   Generate a point cloud from a mesh’s vertices

    mode
    :   - `VERTICES`
          Vertices – Create a point in the point cloud for each selected vertex.
        - `EDGES`
          Edges – Create a point in the point cloud for each selected edge.
        - `FACES`
          Faces – Create a point in the point cloud for each selected face.
        - `CORNERS`
          Corners – Create a point in the point cloud for each selected face corner.

        Type:
        :   enum in [`'VERTICES'`, `'EDGES'`, `'FACES'`, `'CORNERS'`], default `'VERTICES'`

    *classmethod* is_registered_node_type()
    :   True if a registered node type

        Returns:
        :   Result

        Return type:
        :   boolean

    *classmethod* input_template(*index*)
    :   Input socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* output_template(*index*)
    :   Output socket template

        Parameters:
        :   **index** (*int in* *[**0**,* *inf**]*) – Index

        Returns:
        :   result

        Return type:
        :   [`NodeInternalSocketTemplate`](bpy.types.NodeInternalSocketTemplate.html#bpy.types.NodeInternalSocketTemplate "bpy.types.NodeInternalSocketTemplate")

    *classmethod* bl_rna_get_subclass(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The RNA type or default when not found.

        Return type:
        :   [`bpy.types.Struct`](bpy.types.Struct.html#bpy.types.Struct "bpy.types.Struct") subclass

    *classmethod* bl_rna_get_subclass_py(*id*, *default=None*, */*)
    :   Parameters:
        :   **id** (*str*) – The RNA type identifier.

        Returns:
        :   The class or default when not found.

        Return type:
        :   type
user: Provide the full official documentation entry for Delete, preserving all code examples.

assistant: Opens a pop-up menu with operators to remove geometry from the Grease Pencil object.

Frames
:   Deletes all the strokes at the current frame and in the current layer/channel.

### Delete

Deletes the selected points.
When only one point remains, there is no more visible stroke,
and when all points are deleted, the stroke itself is deleted.

### Dissolve

Dissolving removes points between other points and connect the remaining points.

`Ctrl`-`X` Opens a pop-up to choose the dissolve type.

Dissolve
:   Deletes the selected points without splitting the stroke.
    The remaining points in the strokes stay connected.

Dissolve Between
:   Deletes all the points between the selected points without splitting the stroke.
    The remaining points in the strokes stay connected.

Dissolve Unselect
:   Deletes all the points that are not selected in the stroke without splitting the stroke.
    The remaining points in the strokes stay connected.

### Delete Active Keyframe (Active Layer)

Deletes all the strokes at the current frame in the active layer.

### Delete Active Keyframes (All Layers)

Deletes all the strokes at the current frame in all layer.
user: Give a detailed overview of Edit Mode: syntax, arguments, return values, common patterns.

assistant: - [Mesh Edit Mode](../../../modeling/meshes/tools/toolbar.xhtml#mesh-toolbar-index)
- [Curve Edit Mode](../../../modeling/curves/tools/toolbar.xhtml#curve-toolbar-index)
- [Surface Edit Mode](../../../modeling/surfaces/toolbar/index.xhtml#surface-toolbar-index)
- [Metaball Edit Mode](../../../modeling/metas/toolbar/index.xhtml#meta-toolbar-index)
user: Provide the full official documentation entry for References, preserving all code examples.

assistant: |  |  |
| --- | --- |
| - [`bpy.context.strip_modifier`](bpy.context.html#bpy.context.strip_modifier "bpy.context.strip_modifier") - [`Strip.modifiers`](bpy.types.Strip.html#bpy.types.Strip.modifiers "bpy.types.Strip.modifiers") - [`StripModifiers.active`](bpy.types.StripModifiers.html#bpy.types.StripModifiers.active "bpy.types.StripModifiers.active") | - [`StripModifiers.new`](bpy.types.StripModifiers.html#bpy.types.StripModifiers.new "bpy.types.StripModifiers.new") - [`StripModifiers.remove`](bpy.types.StripModifiers.html#bpy.types.StripModifiers.remove "bpy.types.StripModifiers.remove") |
user: Explain Options in complete detail according to the official Blender documentation.

assistant: [image reference removed]

The Screw modifier.

Angle
:   Degrees for a single helix revolution.

Screw
:   The height of one helix iteration.

Iterations
:   Number of revolutions.

Axis
:   The axis along which the helix will be built.

Axis Object
:   The name of an object to define the axis direction.

    Object Screw
    :   Use the distance from the *Axis Object* to define the height of one helix iteration.

Steps Viewport
:   Number of steps used for a single revolution displayed in the 3D Viewport.

Render
:   As above, but used during render time. Increase to improve quality.

Merge
:   Merge vertices that lie on the axis of rotation.
    Use this to close off end points with a triangle fan.

    Merge Distance
    :   Vertices under this distance to the axis are merged.

Stretch UVs
:   Stretch the UV coordinates from (0.0 to 1.0) when UVs are present.

### Normals

Smooth Shading
:   Output faces with smooth shading rather than flat shading.
    The smooth/flat shading of the input geometry is not preserved.

Calculate Order
:   Order of edges is calculated to avoid problems with normals and shading. Only needed for meshes, not curves.

Flip
:   Flip normals direction.