user: Explain WarpModifier(Modifier) in complete detail according to the official Blender documentation.

assistant: # WarpModifier(Modifier)

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

*class* bpy.types.WarpModifier(*Modifier*)
:   Warp modifier

    bone_from
    :   Bone to transform from

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

    bone_to
    :   Bone defining offset

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

    falloff_curve
    :   Custom falloff curve

        Type:
        :   [`CurveMapping`](bpy.types.CurveMapping.html#bpy.types.CurveMapping "bpy.types.CurveMapping"), (readonly)

    falloff_radius
    :   Radius to apply

        Type:
        :   float in [-inf, inf], default 1.0

    falloff_type
    :   Type:
        :   enum in [`'NONE'`, `'CURVE'`, `'SMOOTH'`, `'SPHERE'`, `'ROOT'`, `'INVERSE_SQUARE'`, `'SHARP'`, `'LINEAR'`, `'CONSTANT'`], default `'SMOOTH'`

    invert_vertex_group
    :   Invert vertex group influence

        Type:
        :   boolean, default False

    object_from
    :   Object to transform from

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

    object_to
    :   Object to transform to

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

    strength
    :   Type:
        :   float in [-inf, inf], default 1.0

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

    texture_coords
    :   - `LOCAL`
          Local – Use the local coordinate system for the texture coordinates.
        - `GLOBAL`
          Global – Use the global coordinate system for the texture coordinates.
        - `OBJECT`
          Object – Use the linked object’s local coordinate system for the texture coordinates.
        - `UV`
          UV – Use UV coordinates for the texture coordinates.

        Type:
        :   enum in [`'LOCAL'`, `'GLOBAL'`, `'OBJECT'`, `'UV'`], default `'LOCAL'`

    texture_coords_bone
    :   Bone to set the texture coordinates

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

    texture_coords_object
    :   Object to set the texture coordinates

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

    use_volume_preserve
    :   Preserve volume when rotations are used

        Type:
        :   boolean, default False

    uv_layer
    :   UV map name

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

    vertex_group
    :   Vertex group name for modulating the deform

        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