# Armature(ID)

base classes — `bpy_struct`, `ID`

class `bpy.types.``Armature`(ID)

  Armature data-block containing a hierarchy of bones, usually used for rigging characters

  `animation_data`

    Animation data for this data-block

    Type: | `AnimData`, (readonly)

  `bones`

    Type: | `ArmatureBones` `bpy_prop_collection` of `Bone`, (readonly)

  `display_type`
    - `OCTAHEDRAL` Octahedral, Display bones as octahedral shape (default).
    - `STICK` Stick, Display bones as simple 2D lines with dots.
    - `BBONE` B-Bone, Display bones as boxes, showing subdivision and B-Splines.
    - `ENVELOPE` Envelope, Display bones as extruded spheres, showing deformation influence volume.
    - `WIRE` Wire, Display bones as thin wires, showing subdivision and B-Splines.

    Type: | enum in [‘OCTAHEDRAL’, ‘STICK’, ‘BBONE’, ‘ENVELOPE’, ‘WIRE’], default ‘OCTAHEDRAL’

  `edit_bones`

    Type: | `ArmatureEditBones` `bpy_prop_collection` of `EditBone`, (readonly)

  `is_editmode`

    True when used in editmode

    Type: | boolean, default False, (readonly)

  `layers`

    Armature layer visibility

    Type: | boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False)

  `layers_protected`

    Protected layers in Proxy Instances are restored to Proxy settings on file reload and undo

    Type: | boolean array of 32 items, default (False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False, False)

  `pose_position`

    Show armature in binding pose or final posed state

    - `POSE` Pose Position, Show armature in posed state.
    - `REST` Rest Position, Show Armature in binding pose state (no posing possible).

    Type: | enum in [‘POSE’, ‘REST’], default ‘POSE’

  `show_axes`

    Display bone axes

    Type: | boolean, default False

  `show_bone_custom_shapes`

    Display bones with their custom shapes

    Type: | boolean, default False

  `show_group_colors`

    Display bone group colors

    Type: | boolean, default False

  `show_names`

    Display bone names

    Type: | boolean, default False

  `use_mirror_x`

    Apply changes to matching bone on opposite side of X-Axis

    Type: | boolean, default False

  `transform`(matrix)

    Transform armature bones by a matrix

    Parameters: | matrix (float multi-dimensional array of 4 * 4 items in [-inf, inf]) – Matrix

  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` `ID.name` `ID.name_full` `ID.is_evaluated` `ID.original` `ID.users` | `ID.use_fake_user` `ID.tag` `ID.is_library_indirect` `ID.library` `ID.override_library` `ID.preview`

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` `ID.evaluated_get` `ID.copy` `ID.override_create` `ID.user_clear` `ID.user_remap` `ID.make_local` `ID.user_of_id` `ID.animation_data_create` `ID.animation_data_clear` `ID.update_tag`

References

`bpy.context.armature` `BlendData.armatures` | `BlendDataArmatures.new` `BlendDataArmatures.remove`