Blender  V3.3
Functions
overlay_gpencil.c File Reference
#include "DRW_render.h"
#include "BKE_gpencil.h"
#include "UI_resources.h"
#include "DNA_gpencil_types.h"
#include "DEG_depsgraph_query.h"
#include "ED_view3d.h"
#include "overlay_private.h"
#include "draw_common.h"
#include "draw_manager_text.h"

Go to the source code of this file.

Functions

void OVERLAY_edit_gpencil_cache_init (OVERLAY_Data *vedata)
 
void OVERLAY_gpencil_cache_init (OVERLAY_Data *vedata)
 
static void OVERLAY_edit_gpencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
static void overlay_gpencil_draw_stroke_color_name (bGPDlayer *UNUSED(gpl), bGPDframe *UNUSED(gpf), bGPDstroke *gps, void *thunk)
 
static void OVERLAY_gpencil_color_names (Object *ob)
 
void OVERLAY_gpencil_cache_populate (OVERLAY_Data *vedata, Object *ob)
 
void OVERLAY_gpencil_draw (OVERLAY_Data *vedata)
 
void OVERLAY_edit_gpencil_draw (OVERLAY_Data *vedata)
 

Function Documentation

◆ OVERLAY_edit_gpencil_cache_init()

void OVERLAY_edit_gpencil_cache_init ( OVERLAY_Data vedata)

Definition at line 25 of file overlay_gpencil.c.

References DRW_Global::block, DRW_Global::block_ubo, OVERLAY_PrivateData::clipping_state, bGPDcontrolpoint::color, color, bGPdata_Runtime::cp_points, Scene::cursor, Object::data, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call_procedural_points(), DRW_shgroup_create(), DRW_shgroup_create_sub(), DRW_shgroup_state_enable(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_bool_copy(), DRW_shgroup_uniform_float_copy(), DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_texture(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_STATE_WRITE_DEPTH, OVERLAY_PrivateData::edit_curve, OVERLAY_PrivateData::edit_gpencil_curve_handle_grp, OVERLAY_PrivateData::edit_gpencil_curve_points_grp, OVERLAY_PassList::edit_gpencil_curve_ps, OVERLAY_PassList::edit_gpencil_gizmos_ps, OVERLAY_PrivateData::edit_gpencil_points_grp, OVERLAY_PassList::edit_gpencil_ps, OVERLAY_PrivateData::edit_gpencil_wires_grp, bGPdata::flag, G_draw, View3D::gizmo_flag, GP_DATA_STROKE_WEIGHTMODE, View3D::gp_flag, GP_GUIDE_REF_CUSTOM, GP_GUIDE_REF_OBJECT, GP_SCULPT_MASK_SELECTMODE_POINT, GP_SCULPT_MASK_SELECTMODE_SEGMENT, GP_SELECTMODE_STROKE, GP_VERTEX_MASK_SELECTMODE_POINT, GP_VERTEX_MASK_SELECTMODE_SEGMENT, GPENCIL_ANY_SCULPT_MASK, GPENCIL_ANY_VERTEX_MASK, GPENCIL_CURVE_EDIT_SESSIONS_ON, GPENCIL_EDIT_MODE, GPENCIL_MULTIEDIT_SESSIONS_ON, GPENCIL_PAINT_MODE, GPENCIL_SCULPT_MODE, GPENCIL_VERTEX_MODE, GPENCIL_WEIGHT_MODE, OVERLAY_PrivateData::handle_display, if(), View3DCursor::location, NULL, OB_GPENCIL, OB_MODE_PAINT_GPENCIL, DRWContextState::obact, DRWContextState::object_mode, OVERLAY_shader_edit_curve_handle(), OVERLAY_shader_edit_curve_point(), OVERLAY_shader_edit_gpencil_guide_point(), OVERLAY_shader_edit_gpencil_point(), OVERLAY_shader_edit_gpencil_wire(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, bGPdata::runtime, scene, DRWContextState::scene, sh, OVERLAY_PrivateData::show_handles, bGPDcontrolpoint::size, GlobalsUboStorage::size_pixel, state, OVERLAY_Data::stl, TH_GIZMO_PRIMARY, TH_GIZMO_SECONDARY, TH_REDALERT, Scene::toolsettings, bGPdata_Runtime::tot_cp_points, Object::type, UI_GetThemeColor4fv(), DRWContextState::v3d, V3D_GIZMO_HIDE, V3D_GIZMO_HIDE_TOOL, V3D_GP_SHOW_EDIT_LINES, V3D_GP_SHOW_MULTIEDIT_LINES, View3D::vertex_opacity, DRW_Global::weight_ramp, and bGPDcontrolpoint::x.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_edit_gpencil_cache_populate()

static void OVERLAY_edit_gpencil_cache_populate ( OVERLAY_Data vedata,
Object ob 
)
static

◆ OVERLAY_edit_gpencil_draw()

void OVERLAY_edit_gpencil_draw ( OVERLAY_Data vedata)

◆ OVERLAY_gpencil_cache_init()

void OVERLAY_gpencil_cache_init ( OVERLAY_Data vedata)

Definition at line 205 of file overlay_gpencil.c.

References add_v3_v3(), BKE_gpencil_layer_active_get(), DRW_Global::block_ubo, bGPgrid::color, copy_m3_m4(), copy_m4_m4(), copy_v3_v3(), Scene::cursor, CURVE_HANDLE_NONE, Object::data, DRW_context_state_get(), DRW_PASS_CREATE, DRW_shgroup_call_procedural_lines(), DRW_shgroup_create(), DRW_shgroup_uniform_block, DRW_shgroup_uniform_int_copy(), DRW_shgroup_uniform_vec3_copy(), DRW_shgroup_uniform_vec4_copy(), DRW_STATE_BLEND_ALPHA, DRW_STATE_DEPTH_ALWAYS, DRW_STATE_DEPTH_LESS_EQUAL, DRW_STATE_WRITE_COLOR, DRW_view_viewmat_get(), ED_scene_grid_scale(), OVERLAY_PrivateData::edit_curve, View3D::flag2, G_draw, View3D::gp_flag, GP_LOCKAXIS_CURSOR, GP_LOCKAXIS_VIEW, GP_LOCKAXIS_X, GP_LOCKAXIS_Y, GP_LOCKAXIS_Z, GP_PROJECT_CURSOR, GP_PROJECT_DEPTH_STROKE, GP_PROJECT_DEPTH_VIEW, GP_PROJECT_VIEWSPACE, OVERLAY_PassList::gpencil_canvas_ps, View3DOverlay::gpencil_grid_opacity, bGPdata::grid, OVERLAY_PrivateData::handle_display, View3DOverlay::handle_display, if(), bGPDlayer::layer_mat, bGPgrid::lines, loc_eul_size_to_mat4(), max_ff(), mul_m4_m4m3(), mul_v2_v2fl(), NULL, OB_GPENCIL, DRWContextState::obact, Object::obmat, bGPgrid::offset, View3D::overlay, OVERLAY_shader_gpencil_canvas(), OVERLAY_StorageList::pd, OVERLAY_Data::psl, rescale_m4(), bGPgrid::scale, scene, DRWContextState::scene, sh, OVERLAY_PrivateData::show_handles, size(), state, OVERLAY_Data::stl, swap_v4_v4(), Scene::toolsettings, translate_m4(), Object::type, DRWContextState::v3d, V3D_GP_SHOW_GRID, V3D_GP_SHOW_GRID_XRAY, and V3D_HIDE_OVERLAYS.

Referenced by OVERLAY_cache_init().

◆ OVERLAY_gpencil_cache_populate()

void OVERLAY_gpencil_cache_populate ( OVERLAY_Data vedata,
Object ob 
)

◆ OVERLAY_gpencil_color_names()

static void OVERLAY_gpencil_color_names ( Object ob)
static

◆ OVERLAY_gpencil_draw()

void OVERLAY_gpencil_draw ( OVERLAY_Data vedata)

◆ overlay_gpencil_draw_stroke_color_name()

static void overlay_gpencil_draw_stroke_color_name ( bGPDlayer UNUSEDgpl,
bGPDframe UNUSEDgpf,
bGPDstroke gps,
void thunk 
)
static