Brush(ID)

base classes — bpy_struct, ID

class bpy.types.Brush(ID)

Brush data-block for storing brush settings for painting and sculpting

area_radius_factor

Ratio between the brush radius and the radius that is going to be used to sample the area center

Type

float in [0, 2], default 0.5

auto_smooth_factor

Amount of smoothing to automatically apply to each stroke

Type

float in [0, 1], default 0.0

automasking_boundary_edges_propagation_steps

Distance where boundary edge automasking is going to protect vertices from the fully masked edge

Type

int in [1, 20], default 1

blend

Brush blending mode

  • MIX Mix, Use Mix blending mode while painting.

  • DARKEN Darken, Use Darken blending mode while painting.

  • MUL Multiply, Use Multiply blending mode while painting.

  • COLORBURN Color Burn, Use Color Burn blending mode while painting.

  • LINEARBURN Linear Burn, Use Linear Burn blending mode while painting.

  • LIGHTEN Lighten, Use Lighten blending mode while painting.

  • SCREEN Screen, Use Screen blending mode while painting.

  • COLORDODGE Color Dodge, Use Color Dodge blending mode while painting.

  • ADD Add, Use Add blending mode while painting.

  • OVERLAY Overlay, Use Overlay blending mode while painting.

  • SOFTLIGHT Soft Light, Use Soft Light blending mode while painting.

  • HARDLIGHT Hard Light, Use Hard Light blending mode while painting.

  • VIVIDLIGHT Vivid Light, Use Vivid Light blending mode while painting.

  • LINEARLIGHT Linear Light, Use Linear Light blending mode while painting.

  • PINLIGHT Pin Light, Use Pin Light blending mode while painting.

  • DIFFERENCE Difference, Use Difference blending mode while painting.

  • EXCLUSION Exclusion, Use Exclusion blending mode while painting.

  • SUB Subtract, Use Subtract blending mode while painting.

  • HUE Hue, Use Hue blending mode while painting.

  • SATURATION Saturation, Use Saturation blending mode while painting.

  • COLOR Color, Use Color blending mode while painting.

  • LUMINOSITY Value, Use Value blending mode while painting.

  • ERASE_ALPHA Erase Alpha, Erase alpha while painting.

  • ADD_ALPHA Add Alpha, Add alpha while painting.

Type

enum in [‘MIX’, ‘DARKEN’, ‘MUL’, ‘COLORBURN’, ‘LINEARBURN’, ‘LIGHTEN’, ‘SCREEN’, ‘COLORDODGE’, ‘ADD’, ‘OVERLAY’, ‘SOFTLIGHT’, ‘HARDLIGHT’, ‘VIVIDLIGHT’, ‘LINEARLIGHT’, ‘PINLIGHT’, ‘DIFFERENCE’, ‘EXCLUSION’, ‘SUB’, ‘HUE’, ‘SATURATION’, ‘COLOR’, ‘LUMINOSITY’, ‘ERASE_ALPHA’, ‘ADD_ALPHA’], default ‘MIX’

blur_kernel_radius

Radius of kernel used for soften and sharpen in pixels

Type

int in [1, 10000], default 2

blur_mode
Type

enum in [‘BOX’, ‘GAUSSIAN’], default ‘GAUSSIAN’

brush_capabilities

Brush’s capabilities

Type

BrushCapabilities, (readonly, never None)

clone_alpha

Opacity of clone image display

Type

float in [0, 1], default 0.5

clone_image

Image for clone tool

Type

Image

clone_offset
Type

float array of 2 items in [-inf, inf], default (0.0, 0.0)

cloth_damping

How much the applied forces are propagated through the cloth

Type

float in [0.01, 1], default 0.01

cloth_deform_type

Deformation type that is used in the brush

Type

enum in [‘DRAG’, ‘PUSH’, ‘PINCH_POINT’, ‘PINCH_PERPENDICULAR’, ‘INFLATE’, ‘GRAB’, ‘EXPAND’], default ‘DRAG’

cloth_force_falloff_type

Shape used in the brush to apply force to the cloth

Type

enum in [‘RADIAL’, ‘PLANE’], default ‘RADIAL’

cloth_mass

Mass of each simulation particle

Type

float in [0.01, 2], default 1.0

cloth_sim_falloff

Area to apply deformation falloff to the effects of the simulation

Type

float in [0, 1], default 0.75

cloth_sim_limit

Factor added relative to the size of the radius to limit the cloth simulation effects

Type

float in [0.1, 10], default 2.5

color
Type

float array of 3 items in [0, 1], default (1.0, 1.0, 1.0)

color_type

Use single color or gradient when painting

  • COLOR Color, Paint with a single color.

  • GRADIENT Gradient, Paint with a gradient.

Type

enum in [‘COLOR’, ‘GRADIENT’], default ‘COLOR’

crease_pinch_factor

How much the crease brush pinches

Type

float in [0, 1], default 0.5

cursor_color_add

Color of cursor when adding

Type

float array of 4 items in [0, inf], default (1.0, 0.39, 0.39, 0.9)

cursor_color_subtract

Color of cursor when subtracting

Type

float array of 4 items in [0, inf], default (0.39, 0.39, 1.0, 0.9)

cursor_overlay_alpha
Type

int in [0, 100], default 33

curve

Editable falloff curve

Type

CurveMapping, (readonly, never None)

curve_preset
Type

enum in [‘CUSTOM’, ‘SMOOTH’, ‘SMOOTHER’, ‘SPHERE’, ‘ROOT’, ‘SHARP’, ‘LIN’, ‘POW4’, ‘INVSQUARE’, ‘CONSTANT’], default ‘CUSTOM’

dash_ratio

Ratio of samples in a cycle that the brush is enabled

Type

float in [0, 1], default 1.0

dash_samples

Length of a dash cycle measured in stroke samples

Type

int in [1, 10000], default 20

density

Amount of random elements that are going to be affected by the brush

Type

float in [0, 1], default 0.0

direction
  • ADD Add, Add effect of brush.

  • SUBTRACT Subtract, Subtract effect of brush.

Type

enum in [‘ADD’, ‘SUBTRACT’], default ‘ADD’

disconnected_distance_max

Maximum distance to search for disconnected loose parts in the mesh

Type

float in [0, 10], default 0.1

elastic_deform_type

Deformation type that is used in the brush

Type

enum in [‘GRAB’, ‘GRAB_BISCALE’, ‘GRAB_TRISCALE’, ‘SCALE’, ‘TWIST’], default ‘GRAB’

elastic_deform_volume_preservation

Poisson ratio for elastic deformation. Higher values preserve volume more, but also lead to more bulging

Type

float in [0, 0.9], default 0.0

falloff_angle

Paint most on faces pointing towards the view according to this angle

Type

float in [0, 1.5708], default 0.0

falloff_shape

Use projected or spherical falloff

  • SPHERE Sphere, Apply brush influence in a Sphere, outwards from the center.

  • PROJECTED Projected, Apply brush influence in a 2D circle, projected from the view.

Type

enum in [‘SPHERE’, ‘PROJECTED’], default ‘SPHERE’

fill_threshold

Threshold above which filling is not propagated

Type

float in [0, 100], default 0.2

flow

Amount of paint that is applied per stroke sample

Type

float in [0, 1], default 0.0

gpencil_sculpt_tool
  • SMOOTH Smooth, Smooth stroke points.

  • THICKNESS Thickness, Adjust thickness of strokes.

  • STRENGTH Strength, Adjust color strength of strokes.

  • RANDOMIZE Randomize, Introduce jitter/randomness into strokes.

  • GRAB Grab, Translate the set of points initially within the brush circle.

  • PUSH Push, Move points out of the way, as if combing them.

  • TWIST Twist, Rotate points around the midpoint of the brush.

  • PINCH Pinch, Pull points towards the midpoint of the brush.

  • CLONE Clone, Paste copies of the strokes stored on the clipboard.

Type

enum in [‘SMOOTH’, ‘THICKNESS’, ‘STRENGTH’, ‘RANDOMIZE’, ‘GRAB’, ‘PUSH’, ‘TWIST’, ‘PINCH’, ‘CLONE’], default ‘SMOOTH’

gpencil_settings
Type

BrushGpencilSettings, (readonly)

gpencil_tool
  • DRAW Draw, The brush is of type used for drawing strokes.

  • FILL Fill, The brush is of type used for filling areas.

  • ERASE Erase, The brush is used for erasing strokes.

  • TINT Tint, The brush is of type used for tinting strokes.

Type

enum in [‘DRAW’, ‘FILL’, ‘ERASE’, ‘TINT’], default ‘DRAW’

gpencil_vertex_tool
Type

enum in [‘DRAW’, ‘BLUR’, ‘AVERAGE’, ‘SMEAR’, ‘REPLACE’], default ‘DRAW’

gpencil_weight_tool
  • WEIGHT Weight, Weight Paint for Vertex Groups.

Type

enum in [‘WEIGHT’], default ‘WEIGHT’

grad_spacing

Spacing before brush gradient goes full circle

Type

int in [1, 10000], default 0

gradient
Type

ColorRamp, (readonly)

gradient_fill_mode
Type

enum in [‘LINEAR’, ‘RADIAL’], default ‘LINEAR’

gradient_stroke_mode
Type

enum in [‘PRESSURE’, ‘SPACING_REPEAT’, ‘SPACING_CLAMP’], default ‘PRESSURE’

hardness

How close the brush falloff starts from the edge of the brush

Type

float in [0, 1], default 0.0

height

Affectable height of brush (layer height for layer tool, i.e.)

Type

float in [0, 1], default 0.5

icon_filepath

File path to brush icon

Type

string, default “”, (never None)

image_paint_capabilities
Type

BrushCapabilitiesImagePaint, (readonly, never None)

image_tool
Type

enum in [‘DRAW’, ‘SOFTEN’, ‘SMEAR’, ‘CLONE’, ‘FILL’, ‘MASK’], default ‘DRAW’

invert_density_pressure

Invert the modulation of pressure in density

Type

boolean, default False

invert_flow_pressure

Invert the modulation of pressure in flow

Type

boolean, default False

invert_hardness_pressure

Invert the modulation of pressure in hardness

Type

boolean, default False

invert_to_scrape_fill

Use Scrape or Fill tool when inverting this brush instead of inverting its displacement direction

Type

boolean, default False

invert_wet_mix_pressure

Invert the modulation of pressure in wet mix

Type

boolean, default False

invert_wet_persistence_pressure

Invert the modulation of pressure in wet persistence

Type

boolean, default False

jitter

Jitter the position of the brush while painting

Type

float in [0, 1000], default 0.0

jitter_absolute

Jitter the position of the brush in pixels while painting

Type

int in [0, 1000000], default 0

jitter_unit

Jitter in screen space or relative to brush size

  • VIEW View, Jittering happens in screen space, in pixels.

  • BRUSH Brush, Jittering happens relative to the brush size.

Type

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

mask_overlay_alpha
Type

int in [0, 100], default 33

mask_stencil_dimension

Dimensions of mask stencil in viewport

Type

float array of 2 items in [-inf, inf], default (0.0, 0.0)

mask_stencil_pos

Position of mask stencil in viewport

Type

float array of 2 items in [-inf, inf], default (0.0, 0.0)

mask_texture
Type

Texture

mask_texture_slot
Type

BrushTextureSlot, (readonly)

mask_tool
Type

enum in [‘DRAW’, ‘SMOOTH’], default ‘DRAW’

multiplane_scrape_angle

Angle between the planes of the crease

Type

float in [0, 160], default 0.0

normal_radius_factor

Ratio between the brush radius and the radius that is going to be used to sample the normal

Type

float in [0, 2], default 0.5

normal_weight

How much grab will pull vertexes out of surface during a grab

Type

float in [0, 1], default 0.0

paint_curve

Active Paint Curve

Type

PaintCurve

plane_offset

Adjust plane on which the brush acts towards or away from the object surface

Type

float in [-2, 2], default 0.0

plane_trim

If a vertex is further away from offset plane than this, then it is not affected

Type

float in [0, 1], default 0.5

pose_deform_type

Deformation type that is used in the brush

Type

enum in [‘ROTATE_TWIST’, ‘SCALE_TRANSLATE’, ‘SQUASH_STRETCH’], default ‘ROTATE_TWIST’

pose_ik_segments

Number of segments of the inverse kinematics chain that will deform the mesh

Type

int in [1, 20], default 1

pose_offset

Offset of the pose origin in relation to the brush radius

Type

float in [0, 2], default 0.0

pose_origin_type

Method to set the rotation origins for the segments of the brush

  • TOPOLOGY Topology, Sets the rotation origin automatically using the topology and shape of the mesh as a guide.

  • FACE_SETS Face Sets, Creates a pose segment per face sets, starting from the active face set.

  • FACE_SETS_FK Face Sets FK, Simulates an FK deformation using the Face Set under the cursor as control.

Type

enum in [‘TOPOLOGY’, ‘FACE_SETS’, ‘FACE_SETS_FK’], default ‘TOPOLOGY’

pose_smooth_iterations

Smooth iterations applied after calculating the pose factor of each vertex

Type

int in [0, 100], default 4

rake_factor

How much grab will follow cursor rotation

Type

float in [0, 10], default 0.0

rate

Interval between paints for Airbrush

Type

float in [0.0001, 10000], default 0.1

sculpt_capabilities
Type

BrushCapabilitiesSculpt, (readonly, never None)

sculpt_plane
Type

enum in [‘AREA’, ‘VIEW’, ‘X’, ‘Y’, ‘Z’], default ‘AREA’

sculpt_tool
Type

enum in [‘DRAW’, ‘DRAW_SHARP’, ‘CLAY’, ‘CLAY_STRIPS’, ‘CLAY_THUMB’, ‘LAYER’, ‘INFLATE’, ‘BLOB’, ‘CREASE’, ‘SMOOTH’, ‘FLATTEN’, ‘FILL’, ‘SCRAPE’, ‘MULTIPLANE_SCRAPE’, ‘PINCH’, ‘GRAB’, ‘ELASTIC_DEFORM’, ‘SNAKE_HOOK’, ‘THUMB’, ‘POSE’, ‘NUDGE’, ‘ROTATE’, ‘TOPOLOGY’, ‘CLOTH’, ‘SIMPLIFY’, ‘MASK’, ‘PAINT’, ‘SMEAR’, ‘DRAW_FACE_SETS’], default ‘DRAW’

secondary_color
Type

float array of 3 items in [0, 1], default (0.0, 0.0, 0.0)

sharp_threshold

Threshold below which, no sharpening is done

Type

float in [0, 100], default 0.0

show_multiplane_scrape_planes_preview

Preview the scrape planes in the cursor during the stroke

Type

boolean, default False

size

Radius of the brush in pixels

Type

int in [1, 5000], default 35

slide_deform_type

Deformation type that is used in the brush

Type

enum in [‘DRAG’, ‘PINCH’, ‘EXPAND’], default ‘DRAG’

smear_deform_type

Deformation type that is used in the brush

Type

enum in [‘DRAG’, ‘PINCH’, ‘EXPAND’], default ‘DRAG’

smooth_deform_type

Deformation type that is used in the brush

  • LAPLACIAN Laplacian, Smooths the surface and the volume.

  • SURFACE Surface, Smooths the surface of the mesh, preserving the volume.

Type

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

smooth_stroke_factor

Higher values give a smoother stroke

Type

float in [0.5, 0.99], default 0.9

smooth_stroke_radius

Minimum distance from last point before stroke continues

Type

int in [10, 200], default 75

spacing

Spacing between brush daubs as a percentage of brush diameter

Type

int in [1, 1000], default 10

stencil_dimension

Dimensions of stencil in viewport

Type

float array of 2 items in [-inf, inf], default (256.0, 256.0)

stencil_pos

Position of stencil in viewport

Type

float array of 2 items in [-inf, inf], default (256.0, 256.0)

strength

How powerful the effect of the brush is when applied

Type

float in [0, 10], default 1.0

stroke_method
  • DOTS Dots, Apply paint on each mouse move step.

  • DRAG_DOT Drag Dot, Allows a single dot to be carefully positioned.

  • SPACE Space, Limit brush application to the distance specified by spacing.

  • AIRBRUSH Airbrush, Keep applying paint effect while holding mouse (spray).

  • ANCHORED Anchored, Keep the brush anchored to the initial location.

  • LINE Line, Draw a line with dabs separated according to spacing.

  • CURVE Curve, Define the stroke curve with a bezier curve (dabs are separated according to spacing).

Type

enum in [‘DOTS’, ‘DRAG_DOT’, ‘SPACE’, ‘AIRBRUSH’, ‘ANCHORED’, ‘LINE’, ‘CURVE’], default ‘DOTS’

surface_smooth_current_vertex

How much the position of each individual vertex influences the final result

Type

float in [0, 1], default 0.0

surface_smooth_iterations

Number of smoothing iterations per brush step

Type

int in [1, 10], default 0

surface_smooth_shape_preservation

How much of the original shape is preserved when smoothing

Type

float in [0, 1], default 0.0

texture
Type

Texture

texture_overlay_alpha
Type

int in [0, 100], default 33

texture_sample_bias

Value added to texture samples

Type

float in [-1, 1], default 0.0

texture_slot
Type

BrushTextureSlot, (readonly)

tip_roundness

Roundness of the brush tip

Type

float in [0, 1], default 0.0

tip_scale_x

Scale of the brush tip in the X axis

Type

float in [0, 1], default 0.0

topology_rake_factor

Automatically align edges to the brush direction to generate cleaner topology and define sharp features. Best used on low-poly meshes as it has a performance impact

Type

float in [0, 1], default 0.0

unprojected_radius

Radius of brush in Blender units

Type

float in [0.001, inf], default 0.0

use_accumulate

Accumulate stroke daubs on top of each other

Type

boolean, default False

use_adaptive_space

Space daubs according to surface orientation instead of screen space

Type

boolean, default False

use_airbrush

Keep applying paint effect while holding mouse (spray)

Type

boolean, default False

use_alpha

When this is disabled, lock alpha while painting

Type

boolean, default False

use_anchor

Keep the brush anchored to the initial location

Type

boolean, default False

use_automasking_boundary_edges

Do not affect non manifold boundary edges

Type

boolean, default False

use_automasking_boundary_face_sets

Do not affect vertices that belong to a Face Set boundary

Type

boolean, default False

use_automasking_face_sets

Affect only vertices that share Face Sets with the active vertex

Type

boolean, default False

use_automasking_topology

Affect only vertices connected to the active vertex under the brush

Type

boolean, default False

use_connected_only

Affect only topologically connected elements

Type

boolean, default False

use_cursor_overlay

Show cursor in viewport

Type

boolean, default False

use_cursor_overlay_override

Don’t show overlay during a stroke

Type

boolean, default False

use_curve

Define the stroke curve with a bezier curve. Dabs are separated according to spacing

Type

boolean, default False

use_custom_icon

Set the brush icon from an image file

Type

boolean, default False

use_density_pressure

Use pressure to modulate density

Type

boolean, default False

use_edge_to_edge

Drag anchor brush from edge-to-edge

Type

boolean, default False

use_flow_pressure

Use pressure to modulate flow

Type

boolean, default False

use_frontface

Brush only affects vertexes that face the viewer

Type

boolean, default False

use_frontface_falloff

Blend brush influence by how much they face the front

Type

boolean, default False

use_grab_active_vertex

Apply the maximum grab strength to the active vertex instead of the cursor location

Type

boolean, default False

use_hardness_pressure

Use pressure to modulate hardness

Type

boolean, default False

use_inverse_smooth_pressure

Lighter pressure causes more smoothing to be applied

Type

boolean, default False

use_line

Draw a line with dabs separated according to spacing

Type

boolean, default False

use_locked_size

Measure brush size relative to the view or the scene

  • VIEW View, Measure brush size relative to the view.

  • SCENE Scene, Measure brush size relative to the scene.

Type

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

use_multiplane_scrape_dynamic

The angle between the planes changes during the stroke to fit the surface under the cursor

Type

boolean, default False

use_offset_pressure

Enable tablet pressure sensitivity for offset

Type

boolean, default False

use_original_normal

When locked keep using normal of surface where stroke was initiated

Type

boolean, default False

use_original_plane

When locked keep using the plane origin of surface where stroke was initiated

Type

boolean, default False

use_paint_antialiasing

Smooths the edges of the strokes

Type

boolean, default True

use_paint_grease_pencil

Use this brush in grease pencil drawing mode

Type

boolean, default False

use_paint_image

Use this brush in texture paint mode

Type

boolean, default True

use_paint_sculpt

Use this brush in sculpt mode

Type

boolean, default True

use_paint_uv_sculpt

Use this brush in UV sculpt mode

Type

boolean, default False

use_paint_vertex

Use this brush in vertex paint mode

Type

boolean, default True

use_paint_weight

Use this brush in weight paint mode

Type

boolean, default True

use_persistent

Sculpt on a persistent layer of the mesh

Type

boolean, default False

use_plane_trim

Enable Plane Trim

Type

boolean, default False

use_pose_ik_anchored

Keep the position of the last segment in the IK chain fixed

Type

boolean, default False

use_pressure_jitter

Enable tablet pressure sensitivity for jitter

Type

boolean, default False

use_pressure_masking

Pen pressure makes texture influence smaller

Type

enum in [‘NONE’, ‘RAMP’, ‘CUTOFF’], default ‘NONE’

use_pressure_size

Enable tablet pressure sensitivity for size

Type

boolean, default False

use_pressure_spacing

Enable tablet pressure sensitivity for spacing

Type

boolean, default False

use_pressure_strength

Enable tablet pressure sensitivity for strength

Type

boolean, default True

use_primary_overlay

Show texture in viewport

Type

boolean, default False

use_primary_overlay_override

Don’t show overlay during a stroke

Type

boolean, default False

use_restore_mesh

Allow a single dot to be carefully positioned

Type

boolean, default False

use_scene_spacing

Calculate the brush spacing using view or scene distance

  • VIEW View, Calculate brush spacing relative to the view.

  • SCENE Scene, Calculate brush spacing relative to the scene using the stroke location.

Type

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

use_secondary_overlay

Show texture in viewport

Type

boolean, default False

use_secondary_overlay_override

Don’t show overlay during a stroke

Type

boolean, default False

use_smooth_stroke

Brush lags behind mouse and follows a smoother path

Type

boolean, default False

use_space

Limit brush application to the distance specified by spacing

Type

boolean, default True

use_space_attenuation

Automatically adjust strength to give consistent results for different spacings

Type

boolean, default True

use_vertex_grease_pencil

Use this brush in grease pencil vertex color mode

Type

boolean, default False

use_wet_mix_pressure

Use pressure to modulate wet mix

Type

boolean, default False

use_wet_persistence_pressure

Use pressure to modulate wet persistence

Type

boolean, default False

uv_sculpt_tool
  • GRAB Grab, Grab UVs.

  • RELAX Relax, Relax UVs.

  • PINCH Pinch, Pinch UVs.

Type

enum in [‘GRAB’, ‘RELAX’, ‘PINCH’], default ‘GRAB’

vertex_paint_capabilities
Type

BrushCapabilitiesVertexPaint, (readonly, never None)

vertex_tool
Type

enum in [‘DRAW’, ‘BLUR’, ‘AVERAGE’, ‘SMEAR’], default ‘DRAW’

weight

Vertex weight when brush is applied

Type

float in [0, 1], default 1.0

weight_paint_capabilities
Type

BrushCapabilitiesWeightPaint, (readonly, never None)

weight_tool
Type

enum in [‘DRAW’, ‘BLUR’, ‘AVERAGE’, ‘SMEAR’], default ‘DRAW’

wet_mix

Amount of paint that is picked from the surface into the brush color

Type

float in [0, 1], default 0.0

wet_persistence

Amount of wet paint that stays in the brush after applying paint to the surface

Type

float in [0, 1], default 0.0

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

Inherited Functions

References