ToolSettings(bpy_struct)

base class — bpy_struct

class bpy.types.ToolSettings(bpy_struct)
annotation_stroke_placement_view2d
  • IMAGE Image – Stick stroke to the image.

  • VIEW View – Stick stroke to the view.

Type:

enum in [‘IMAGE’, ‘VIEW’], default ‘VIEW’

annotation_stroke_placement_view3d

How annotation strokes are orientated in 3D space

  • CURSOR 3D Cursor – Draw stroke at 3D cursor location.

  • VIEW View – Stick stroke to the view.

  • SURFACE Surface – Stick stroke to surfaces.

Type:

enum in [‘CURSOR’, ‘VIEW’, ‘SURFACE’], default ‘CURSOR’

annotation_thickness

Thickness of annotation strokes

Type:

int in [1, 10], default 3

auto_keying_mode

Mode of automatic keyframe insertion for objects, bones and masks

Type:

enum in [‘ADD_REPLACE_KEYS’, ‘REPLACE_KEYS’], default ‘ADD_REPLACE_KEYS’

curve_paint_settings
Type:

CurvePaintSettings, (readonly, never None)

curves_sculpt
Type:

CurvesSculpt, (readonly)

custom_bevel_profile_preset

Used for defining a profile’s path

Type:

CurveProfile, (readonly)

double_threshold

Threshold distance for Auto Merge

Type:

float in [0, 1], default 0.001

gpencil_interpolate

Settings for Grease Pencil interpolation tools

Type:

GPencilInterpolateSettings, (readonly)

gpencil_paint
Type:

GpPaint, (readonly)

gpencil_sculpt

Settings for stroke sculpting tools and brushes

Type:

GPencilSculptSettings, (readonly)

gpencil_sculpt_paint
Type:

GpSculptPaint, (readonly)

gpencil_selectmode_edit
Type:

enum in Grease Pencil Selectmode Items, default ‘POINT’

gpencil_stroke_placement_view3d
  • ORIGIN Origin – Draw stroke at Object origin.

  • CURSOR 3D Cursor – Draw stroke at 3D cursor location.

  • SURFACE Surface – Stick stroke to surfaces.

  • STROKE Stroke – Stick stroke to other strokes.

Type:

enum in [‘ORIGIN’, ‘CURSOR’, ‘SURFACE’, ‘STROKE’], default ‘ORIGIN’

gpencil_stroke_snap_mode
  • NONE All Points – Snap to all points.

  • ENDS End Points – Snap to first and last points and interpolate.

  • FIRST First Point – Snap to first point.

Type:

enum in [‘NONE’, ‘ENDS’, ‘FIRST’], default ‘NONE’

gpencil_surface_offset

Offset along the normal when drawing on surfaces

Type:

float in [0, 1], default 0.15

gpencil_vertex_paint
Type:

GpVertexPaint, (readonly)

gpencil_weight_paint
Type:

GpWeightPaint, (readonly)

image_paint
Type:

ImagePaint, (readonly)

keyframe_type

Type of keyframes to create when inserting keyframes

Type:

enum in Beztriple Keyframe Type Items, default ‘KEYFRAME’

lock_markers

Prevent marker editing

Type:

boolean, default False

lock_object_mode

Restrict selection to objects using the same mode as the active object, to prevent accidental mode switch when selecting

Type:

boolean, default True

mesh_select_mode

Which mesh elements selection works on

Type:

boolean array of 3 items, default (True, True, True)

normal_vector

Normal vector used to copy, add or multiply

Type:

mathutils.Vector of 3 items in [-inf, inf], default (0.0, 0.0, 0.0)

paint_mode
Type:

PaintModeSettings, (readonly)

particle_edit
Type:

ParticleEdit, (readonly)

plane_axis

The axis used for placing the base region

Type:

enum in Axis Xyz Items, default ‘Z’

plane_axis_auto

Select the closest axis when placing objects (surface overrides)

Type:

boolean, default True

plane_depth

The initial depth used when placing the cursor

  • SURFACE Surface – Start placing on the surface, using the 3D cursor position as a fallback.

  • CURSOR_PLANE Cursor Plane – Start placement using a point projected onto the orientation axis at the 3D cursor position.

  • CURSOR_VIEW Cursor View – Start placement using a point projected onto the view plane at the 3D cursor position.

Type:

enum in [‘SURFACE’, ‘CURSOR_PLANE’, ‘CURSOR_VIEW’], default ‘SURFACE’

plane_orientation

The initial depth used when placing the cursor

  • SURFACE Surface – Use the surface normal (using the transform orientation as a fallback).

  • DEFAULT Default – Use the current transform orientation.

Type:

enum in [‘SURFACE’, ‘DEFAULT’], default ‘SURFACE’

proportional_distance

Display size for proportional editing circle

Type:

float in [1e-05, 5000], default 1.0

proportional_edit_falloff

Falloff type for proportional editing mode

Type:

enum in Proportional Falloff Items, default ‘SMOOTH’

proportional_size

Display size for proportional editing circle

Type:

float in [1e-05, 5000], default 1.0

sculpt
Type:

Sculpt, (readonly)

sequencer_tool_settings
Type:

SequencerToolSettings, (readonly, never None)

show_uv_local_view

Display only faces with the currently displayed image assigned

Type:

boolean, default False

snap_angle_increment_2d

Angle used for rotation increments in 2D editors

Type:

float in [0, 3.14159], default 0.0872665

snap_angle_increment_2d_precision

Precision angle used for rotation increments in 2D editors

Type:

float in [0, 3.14159], default 0.0174533

snap_angle_increment_3d

Angle used for rotation increments in 3D editors

Type:

float in [0, 3.14159], default 0.0872665

snap_angle_increment_3d_precision

Precision angle used for rotation increments in 3D editors

Type:

float in [0, 3.14159], default 0.0174533

snap_anim_element

Type of element to snap to

Type:

enum in Snap Animation Element Items, default ‘FRAME’

snap_elements

Type of element to snap to

Type:

enum set in Snap Element Items, default {‘INCREMENT’}

snap_elements_base

Type of element for the “Snap Base” to snap to

  • INCREMENT Increment – Snap to increments.

  • GRID Grid – Snap to grid.

  • VERTEX Vertex – Snap to vertices.

  • EDGE Edge – Snap to edges.

  • FACE Face – Snap by projecting onto faces.

  • VOLUME Volume – Snap to volume.

  • EDGE_MIDPOINT Edge Center – Snap to the middle of edges.

  • EDGE_PERPENDICULAR Edge Perpendicular – Snap to the nearest point on an edge.

Type:

enum set in {‘INCREMENT’, ‘GRID’, ‘VERTEX’, ‘EDGE’, ‘FACE’, ‘VOLUME’, ‘EDGE_MIDPOINT’, ‘EDGE_PERPENDICULAR’}, default {‘INCREMENT’}

snap_elements_individual

Type of element for individual transformed elements to snap to

  • FACE_PROJECT Face Project – Snap by projecting onto faces.

  • FACE_NEAREST Face Nearest – Snap to nearest point on faces.

Type:

enum set in {‘FACE_PROJECT’, ‘FACE_NEAREST’}, default {‘FACE_PROJECT’}

snap_elements_tool

The target to use while snapping

  • GEOMETRY Geometry – Snap to all geometry.

  • DEFAULT Default – Use the current snap settings.

Type:

enum in [‘GEOMETRY’, ‘DEFAULT’], default ‘GEOMETRY’

snap_face_nearest_steps

Number of steps to break transformation into for face nearest snapping

Type:

int in [1, 100], default 1

snap_target

Which part to snap onto the target

Type:

enum in Snap Source Items, default ‘CLOSEST’

snap_uv_element

Type of element to snap to

  • INCREMENT Increment – Snap to increments of grid.

  • GRID Grid – Snap to grid.

  • VERTEX Vertex – Snap to vertices.

Type:

enum set in {‘INCREMENT’, ‘GRID’, ‘VERTEX’}, default {‘INCREMENT’}

statvis
Type:

MeshStatVis, (readonly, never None)

transform_pivot_point

Pivot center for rotation/scaling

  • BOUNDING_BOX_CENTER Bounding Box Center – Pivot around bounding box center of selected object(s).

  • CURSOR 3D Cursor – Pivot around the 3D cursor.

  • INDIVIDUAL_ORIGINS Individual Origins – Pivot around each object’s own origin.

  • MEDIAN_POINT Median Point – Pivot around the median point of selected objects.

  • ACTIVE_ELEMENT Active Element – Pivot around active object.

Type:

enum in [‘BOUNDING_BOX_CENTER’, ‘CURSOR’, ‘INDIVIDUAL_ORIGINS’, ‘MEDIAN_POINT’, ‘ACTIVE_ELEMENT’], default ‘MEDIAN_POINT’

unified_paint_settings
Type:

UnifiedPaintSettings, (readonly, never None)

use_annotation_project_only_selected

Project the strokes only onto selected objects

Type:

boolean, default False

use_annotation_stroke_endpoints

Only use the first and last parts of the stroke for snapping

Type:

boolean, default False

use_auto_normalize

Ensure all bone-deforming vertex groups add up to 1.0 while weight painting

Type:

boolean, default False

use_edge_path_live_unwrap

Changing edge seams recalculates UV unwrap

Type:

boolean, default False

use_gpencil_automerge_strokes

Join the last drawn stroke with previous strokes in the active layer by distance

Type:

boolean, default False

use_gpencil_draw_additive

When creating new frames, the strokes from the previous/active frame are included as the basis for the new one

Type:

boolean, default False

use_gpencil_draw_onback

New strokes are drawn below of all strokes in the layer

Type:

boolean, default False

use_gpencil_project_only_selected

Project the strokes only onto selected objects

Type:

boolean, default False

use_gpencil_select_mask_point

Only sculpt selected stroke points

Type:

boolean, default False

use_gpencil_select_mask_segment

Only sculpt selected stroke points between other strokes

Type:

boolean, default False

use_gpencil_select_mask_stroke

Only sculpt selected strokes

Type:

boolean, default False

use_gpencil_thumbnail_list

Show compact list of colors instead of thumbnails

Type:

boolean, default False

use_gpencil_vertex_select_mask_point

Only paint selected stroke points

Type:

boolean, default False

use_gpencil_vertex_select_mask_segment

Only paint selected stroke points between other strokes

Type:

boolean, default False

use_gpencil_vertex_select_mask_stroke

Only paint selected strokes

Type:

boolean, default False

use_gpencil_weight_data_add

Weight data for new strokes is added according to the current vertex group and weight. If no vertex group selected, weight is not added.

Type:

boolean, default False

use_grease_pencil_multi_frame_editing

Enable multi-frame editing

Type:

boolean, default False

use_keyframe_cycle_aware

For channels with cyclic extrapolation, keyframe insertion is automatically remapped inside the cycle time range, and keeps ends in sync. Curves newly added to actions with a Manual Frame Range and Cyclic Animation are automatically made cyclic.

Type:

boolean, default False

use_keyframe_insert_auto

Automatic keyframe insertion for objects, bones and masks

Type:

boolean, default True

use_keyframe_insert_keyingset

Automatic keyframe insertion using active Keying Set only

Type:

boolean, default False

use_lock_relative

Display bone-deforming groups as if all locked deform groups were deleted, and the remaining ones were re-normalized

Type:

boolean, default False

use_mesh_automerge

Automatically merge vertices moved to the same location

Type:

boolean, default False

use_mesh_automerge_and_split

Automatically split edges and faces

Type:

boolean, default False

use_multipaint

Paint across the weights of all selected bones, maintaining their relative influence

Type:

boolean, default False

use_proportional_action

Proportional editing in action editor

Type:

boolean, default False

use_proportional_connected

Proportional Editing using connected geometry only

Type:

boolean, default False

use_proportional_edit

Proportional edit mode

Type:

boolean, default False

use_proportional_edit_mask

Proportional editing mask mode

Type:

boolean, default False

use_proportional_edit_objects

Proportional editing object mode

Type:

boolean, default False

use_proportional_fcurve

Proportional editing in F-Curve editor

Type:

boolean, default False

use_proportional_projected

Proportional Editing using screen space locations

Type:

boolean, default False

use_record_with_nla

Add a new NLA Track + Strip for every loop/pass made over the animation to allow non-destructive tweaking

Type:

boolean, default False

use_snap

Snap during transform

Type:

boolean, default False

use_snap_align_rotation

Align rotation with the snapping target

Type:

boolean, default False

use_snap_anim

Enable snapping when transforming keyframes

Type:

boolean, default True

use_snap_backface_culling

Exclude back facing geometry from snapping

Type:

boolean, default False

use_snap_edit

Snap onto non-active objects in edit mode (edit mode only)

Type:

boolean, default True

use_snap_grid_absolute

Absolute grid alignment while translating (based on the pivot center)

Type:

boolean, default False

use_snap_node

Snap Node during transform

Type:

boolean, default False

use_snap_nonedit

Snap onto objects not in edit mode (edit mode only)

Type:

boolean, default True

use_snap_peel_object

Consider objects as whole when finding volume center

Type:

boolean, default False

use_snap_rotate

Rotate is affected by the snapping settings

Type:

boolean, default False

use_snap_scale

Scale is affected by snapping settings

Type:

boolean, default False

use_snap_selectable

Snap only onto objects that are selectable

Type:

boolean, default False

use_snap_self

Snap onto itself only if enabled (edit mode only)

Type:

boolean, default False

use_snap_sequencer

Snap strips during transform

Type:

boolean, default True

use_snap_time_absolute

Absolute time alignment when transforming keyframes

Type:

boolean, default False

use_snap_to_same_target

Snap only to target that source was initially near (“Face Nearest” only)

Type:

boolean, default False

use_snap_translate

Move is affected by snapping settings

Type:

boolean, default True

use_snap_uv

Snap UV during transform

Type:

boolean, default False

use_transform_correct_face_attributes

Correct data such as UVs and color attributes when transforming

Type:

boolean, default False

use_transform_correct_keep_connected

During the Face Attributes correction, merge attributes connected to the same vertex

Type:

boolean, default False

use_transform_data_origin

Transform object origins, while leaving the shape in place

Type:

boolean, default False

use_transform_pivot_point_align

Only transform object locations, without affecting rotation or scaling

Type:

boolean, default False

use_transform_skip_children

Transform the parents, leaving the children in place

Type:

boolean, default False

use_uv_select_sync

Keep UV and edit mode mesh selection in sync

Type:

boolean, default False

uv_sculpt
Type:

UvSculpt, (readonly)

uv_sculpt_all_islands

Brush operates on all islands

Type:

boolean, default False

uv_sculpt_lock_borders

Disable editing of boundary edges

Type:

boolean, default False

uv_select_mode

UV selection and display mode

Type:

enum in Mesh Select Mode Uv Items, default ‘VERTEX’

uv_sticky_select_mode

Method for extending UV vertex selection

  • DISABLED Disabled – Sticky vertex selection disabled.

  • SHARED_LOCATION Shared Location – Select UVs that are at the same location and share a mesh vertex.

  • SHARED_VERTEX Shared Vertex – Select UVs that share a mesh vertex, whether or not they are at the same location.

Type:

enum in [‘DISABLED’, ‘SHARED_LOCATION’, ‘SHARED_VERTEX’], default ‘SHARED_LOCATION’

vertex_group_subset

Filter Vertex groups for Display

  • ALL All – All Vertex Groups.

  • BONE_DEFORM Deform – Vertex Groups assigned to Deform Bones.

  • OTHER_DEFORM Other – Vertex Groups assigned to non Deform Bones.

Type:

enum in [‘ALL’, ‘BONE_DEFORM’, ‘OTHER_DEFORM’], default ‘ALL’

vertex_group_user

Display unweighted vertices

  • NONE None.

  • ACTIVE Active – Show vertices with no weights in the active group.

  • ALL All – Show vertices with no weights in any group.

Type:

enum in [‘NONE’, ‘ACTIVE’, ‘ALL’], default ‘NONE’

vertex_group_weight

Weight to assign in vertex groups

Type:

float in [0, 1], default 1.0

vertex_paint
Type:

VertexPaint, (readonly)

weight_paint
Type:

VertexPaint, (readonly)

workspace_tool_type

Action when dragging in the viewport

Type:

enum in [‘DEFAULT’, ‘FALLBACK’], default ‘FALLBACK’

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 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

Inherited Properties

Inherited Functions

References