# Modifier(bpy_struct)

base class — `bpy_struct`

subclasses — `ArmatureModifier`, `ArrayModifier`, `BevelModifier`, `BooleanModifier`, `BuildModifier`, `CastModifier`, `ClothModifier`, `CollisionModifier`, `CorrectiveSmoothModifier`, `CurveModifier`, `DataTransferModifier`, `DecimateModifier`, `DisplaceModifier`, `DynamicPaintModifier`, `EdgeSplitModifier`, `ExplodeModifier`, `FluidModifier`, `HookModifier`, `LaplacianDeformModifier`, `LaplacianSmoothModifier`, `LatticeModifier`, `MaskModifier`, `MeshCacheModifier`, `MeshDeformModifier`, `MeshSequenceCacheModifier`, `MirrorModifier`, `MultiresModifier`, `NormalEditModifier`, `OceanModifier`, `ParticleInstanceModifier`, `ParticleSystemModifier`, `RemeshModifier`, `ScrewModifier`, `ShrinkwrapModifier`, `SimpleDeformModifier`, `SkinModifier`, `SmoothModifier`, `SoftBodyModifier`, `SolidifyModifier`, `SubsurfModifier`, `SurfaceDeformModifier`, `SurfaceModifier`, `TriangulateModifier`, `UVProjectModifier`, `UVWarpModifier`, `VertexWeightEditModifier`, `VertexWeightMixModifier`, `VertexWeightProximityModifier`, `WarpModifier`, `WaveModifier`, `WeightedNormalModifier`, `WeldModifier`, `WireframeModifier`

class `bpy.types.``Modifier`(bpy_struct)

  Modifier affecting the geometry data of an object

  `name`

    Modifier name

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

  `show_expanded`

    Set modifier expanded in the user interface

    Type: | boolean, default False

  `show_in_editmode`

    Display modifier in Edit mode

    Type: | boolean, default False

  `show_on_cage`

    Adjust edit cage to modifier result

    Type: | boolean, default False

  `show_render`

    Use modifier during render

    Type: | boolean, default False

  `show_viewport`

    Display modifier in viewport

    Type: | boolean, default False

  `type`
    - `DATA_TRANSFER` Data Transfer, Transfer several types of data (vertex groups, UV maps, vertex colors, custom normals) from one mesh to another.
    - `MESH_CACHE` Mesh Cache, Deform the mesh using an external frame-by-frame vertex transform cache.
    - `MESH_SEQUENCE_CACHE` Mesh Sequence Cache, Deform the mesh or curve using an external mesh cache in Alembic format.
    - `NORMAL_EDIT` Normal Edit, Modify the direction of the surface normals.
    - `WEIGHTED_NORMAL` Weighted Normal, Modify the direction of the surface normals using a weighting method.
    - `UV_PROJECT` UV Project, Project the UV map coordinates from the negative Z axis of another object.
    - `UV_WARP` UV Warp, Transform the UV map using the the difference between two objects.
    - `VERTEX_WEIGHT_EDIT` Vertex Weight Edit, Modify of the weights of a vertex group.
    - `VERTEX_WEIGHT_MIX` Vertex Weight Mix, Mix the weights of two vertex groups.
    - `VERTEX_WEIGHT_PROXIMITY` Vertex Weight Proximity, Set the vertex group weights based on the distance to another target object.
    - `ARRAY` Array, Create copies of the shape with offsets.
    - `BEVEL` Bevel, Generate sloped corners by adding geometry to the mesh’s edges or vertices.
    - `BOOLEAN` Boolean, Use another shape to cut, combine or perform a difference operation.
    - `BUILD` Build, Cause the faces of the mesh object to appear or disappear one after the other over time.
    - `DECIMATE` Decimate, Reduce the geometry density.
    - `EDGE_SPLIT` Edge Split, Split away joined faces at the edges.
    - `MASK` Mask, Dynamically hide vertices based on a vertex group or armature.
    - `MIRROR` Mirror, Mirror along the local X, Y and/or Z axes, over the object origin.
    - `MULTIRES` Multiresolution, Subdivide the mesh in a way that allows editing the higher subdivision levels.
    - `REMESH` Remesh, Generate new mesh topology based on the current shape.
    - `SCREW` Screw, Lathe around an axis, treating the inout mesh as a profile.
    - `SKIN` Skin, Create a solid shape from vertices and edges, using the vertex radius to define the thickness.
    - `SOLIDIFY` Solidify, Make the surface thick.
    - `SUBSURF` Subdivision Surface, Split the faces into smaller parts, giving it a smoother appearance.
    - `TRIANGULATE` Triangulate, Convert all polygons to triangles.
    - `WIREFRAME` Wireframe, Convert faces into thickened edges.
    - `WELD` Weld, Find groups of vertices closer then dist and merges them together.
    - `ARMATURE` Armature, Deform the shape using an armature object.
    - `CAST` Cast, Shift the shape towards a predefined primitive.
    - `CURVE` Curve, Bend the mesh using a curve object.
    - `DISPLACE` Displace, Offset vertices based on a texture.
    - `HOOK` Hook, Deform specific points using another object.
    - `LAPLACIANDEFORM` Laplacian Deform, Deform based a series of anchor points.
    - `LATTICE` Lattice, Deform using the shape of a lattice object.
    - `MESH_DEFORM` Mesh Deform, Deform using a different mesh, which acts as a deformation cage.
    - `SHRINKWRAP` Shrinkwrap, Project the shape onto another object.
    - `SIMPLE_DEFORM` Simple Deform, Deform the shape by twisting, bending, tapering or stretching.
    - `SMOOTH` Smooth, Smooth the mesh by flattening the angles between adjacent faces.
    - `CORRECTIVE_SMOOTH` Smooth Corrective, Smooth the mesh while still preserving the volume.
    - `LAPLACIANSMOOTH` Smooth Laplacian, Reduce the noise on a mesh surface with minimal changes to its shape.
    - `SURFACE_DEFORM` Surface Deform, Transfer motion from another mesh.
    - `WARP` Warp, Warp parts of a mesh to a new location in a very flexible way thanks to 2 specified objects.
    - `WAVE` Wave, Adds a ripple-like motion to an object’s geometry.
    - `CLOTH` Cloth.
    - `COLLISION` Collision.
    - `DYNAMIC_PAINT` Dynamic Paint.
    - `EXPLODE` Explode, Break apart the mesh faces and let them follow particles.
    - `OCEAN` Ocean, Generate a moving ocean surface.
    - `PARTICLE_INSTANCE` Particle Instance.
    - `PARTICLE_SYSTEM` Particle System, Spawn particles from the shape.
    - `FLUID` Fluid Simulation.
    - `SOFT_BODY` Soft Body.
    - `SURFACE` Surface.

    Type: | enum in [‘DATA_TRANSFER’, ‘MESH_CACHE’, ‘MESH_SEQUENCE_CACHE’, ‘NORMAL_EDIT’, ‘WEIGHTED_NORMAL’, ‘UV_PROJECT’, ‘UV_WARP’, ‘VERTEX_WEIGHT_EDIT’, ‘VERTEX_WEIGHT_MIX’, ‘VERTEX_WEIGHT_PROXIMITY’, ‘ARRAY’, ‘BEVEL’, ‘BOOLEAN’, ‘BUILD’, ‘DECIMATE’, ‘EDGE_SPLIT’, ‘MASK’, ‘MIRROR’, ‘MULTIRES’, ‘REMESH’, ‘SCREW’, ‘SKIN’, ‘SOLIDIFY’, ‘SUBSURF’, ‘TRIANGULATE’, ‘WIREFRAME’, ‘WELD’, ‘ARMATURE’, ‘CAST’, ‘CURVE’, ‘DISPLACE’, ‘HOOK’, ‘LAPLACIANDEFORM’, ‘LATTICE’, ‘MESH_DEFORM’, ‘SHRINKWRAP’, ‘SIMPLE_DEFORM’, ‘SMOOTH’, ‘CORRECTIVE_SMOOTH’, ‘LAPLACIANSMOOTH’, ‘SURFACE_DEFORM’, ‘WARP’, ‘WAVE’, ‘CLOTH’, ‘COLLISION’, ‘DYNAMIC_PAINT’, ‘EXPLODE’, ‘OCEAN’, ‘PARTICLE_INSTANCE’, ‘PARTICLE_SYSTEM’, ‘FLUID’, ‘SOFT_BODY’, ‘SURFACE’], default ‘DATA_TRANSFER’, (readonly)

  `use_apply_on_spline`

    Apply this and all preceding deformation modifiers on splines’ points rather than on filled curve/surface

    Type: | boolean, default False

  classmethod `bl_rna_get_subclass`(id, default=None)

    Parameters: | id (string) – The RNA type identifier.
    Returns: | The RNA type or default when not found.
    Return type: | `bpy.types.Struct` subclass

  classmethod `bl_rna_get_subclass_py`(id, default=None)

    Parameters: | id (string) – The RNA type identifier.
    Returns: | The class or default when not found.
    Return type: | type

Inherited Properties

`bpy_struct.id_data` |

Inherited Functions

`bpy_struct.as_pointer` `bpy_struct.driver_add` `bpy_struct.driver_remove` `bpy_struct.get` `bpy_struct.is_property_hidden` `bpy_struct.is_property_overridable_library` `bpy_struct.is_property_readonly` `bpy_struct.is_property_set` `bpy_struct.items` `bpy_struct.keyframe_delete` | `bpy_struct.keyframe_insert` `bpy_struct.keys` `bpy_struct.path_from_id` `bpy_struct.path_resolve` `bpy_struct.pop` `bpy_struct.property_overridable_library_set` `bpy_struct.property_unset` `bpy_struct.type_recast` `bpy_struct.values`

References

`Object.modifiers` `ObjectModifiers.new` | `ObjectModifiers.remove` `UILayout.template_modifier`