user: Give a detailed overview of ShaderNodeTexVoronoi(ShaderNode): syntax, arguments, return values, common patterns.

assistant: # ShaderNodeTexVoronoi(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.ShaderNodeTexVoronoi(*ShaderNode*)
:   Generate Worley noise based on the distance to random points. Typically used to generate textures such as stones, water, or biological cells

    color_mapping
    :   Color mapping settings

        Type:
        :   [`ColorMapping`](bpy.types.ColorMapping.html#bpy.types.ColorMapping "bpy.types.ColorMapping"), (readonly, never None)

    distance
    :   The distance metric used to compute the texture

        - `EUCLIDEAN`
          Euclidean – Euclidean distance.
        - `MANHATTAN`
          Manhattan – Manhattan distance.
        - `CHEBYCHEV`
          Chebychev – Chebychev distance.
        - `MINKOWSKI`
          Minkowski – Minkowski distance.

        Type:
        :   enum in [`'EUCLIDEAN'`, `'MANHATTAN'`, `'CHEBYCHEV'`, `'MINKOWSKI'`], default `'EUCLIDEAN'`

    feature
    :   The Voronoi feature that the node will compute

        - `F1`
          F1 – Computes the distance to the closest point as well as its position and color.
        - `F2`
          F2 – Computes the distance to the second closest point as well as its position and color.
        - `SMOOTH_F1`
          Smooth F1 – Smoothed version of F1. Weighted sum of neighbor voronoi cells..
        - `DISTANCE_TO_EDGE`
          Distance to Edge – Computes the distance to the edge of the voronoi cell.
        - `N_SPHERE_RADIUS`
          N-Sphere Radius – Computes the radius of the n-sphere inscribed in the voronoi cell.

        Type:
        :   enum in [`'F1'`, `'F2'`, `'SMOOTH_F1'`, `'DISTANCE_TO_EDGE'`, `'N_SPHERE_RADIUS'`], default `'F1'`

    normalize
    :   Normalize output Distance to 0.0 to 1.0 range

        Type:
        :   boolean, default False

    texture_mapping
    :   Texture coordinate mapping settings

        Type:
        :   [`TexMapping`](bpy.types.TexMapping.html#bpy.types.TexMapping "bpy.types.TexMapping"), (readonly, never None)

    voronoi_dimensions
    :   Number of dimensions to output noise for

        - `1D`
          1D – Use the scalar value W as input.
        - `2D`
          2D – Use the 2D vector (X, Y) as input. The Z component is ignored..
        - `3D`
          3D – Use the 3D vector (X, Y, Z) as input.
        - `4D`
          4D – Use the 4D vector (X, Y, Z, W) as input.

        Type:
        :   enum in [`'1D'`, `'2D'`, `'3D'`, `'4D'`], default `'1D'`

    *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