user: What is CompositorNodeRelativeToPixel(CompositorNode) and how is it used in Blender Python scripting?

assistant: # CompositorNodeRelativeToPixel(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.CompositorNodeRelativeToPixel(*CompositorNode*)
:   Converts values that are relative to the image size to be in terms of pixels

    data_type
    :   The type of data

        - `FLOAT`
          Float – Float value.
        - `VECTOR`
          Vector – Vector value.

        Type:
        :   enum in [`'FLOAT'`, `'VECTOR'`], default `'FLOAT'`

    reference_dimension
    :   Defines the dimension of the image that the relative value is in reference to

        - `PER_DIMENSION`
          Per Dimension – The value is relative to each of the dimensions of the image independently.
        - `X`
          X – The value is relative to the X dimension of the image.
        - `Y`
          Y – The value is relative to the Y dimension of the image.
        - `Greater`
          Greater – The value is relative to the greater dimension of the image.
        - `Smaller`
          Smaller – The value is relative to the smaller dimension of the image.
        - `Diagonal`
          Diagonal – The value is relative to the diagonal of the image.

        Type:
        :   enum in [`'PER_DIMENSION'`, `'X'`, `'Y'`, `'Greater'`, `'Smaller'`, `'Diagonal'`], default `'X'`

    *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