Blender
V3.3
|
#include "MEM_guardedalloc.h"
#include "BLI_array.h"
#include "BLI_blenlib.h"
#include "BLI_dial_2d.h"
#include "BLI_ghash.h"
#include "BLI_gsqueue.h"
#include "BLI_hash.h"
#include "BLI_link_utils.h"
#include "BLI_linklist.h"
#include "BLI_linklist_stack.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_math_color_blend.h"
#include "BLI_memarena.h"
#include "BLI_rand.h"
#include "BLI_task.h"
#include "BLI_utildefines.h"
#include "atomic_ops.h"
#include "BLT_translation.h"
#include "PIL_time.h"
#include "DNA_brush_types.h"
#include "DNA_customdata_types.h"
#include "DNA_listBase.h"
#include "DNA_mesh_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BKE_attribute.h"
#include "BKE_brush.h"
#include "BKE_ccg.h"
#include "BKE_colortools.h"
#include "BKE_context.h"
#include "BKE_image.h"
#include "BKE_kelvinlet.h"
#include "BKE_key.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_mesh.h"
#include "BKE_mesh_fair.h"
#include "BKE_mesh_mapping.h"
#include "BKE_mesh_mirror.h"
#include "BKE_modifier.h"
#include "BKE_multires.h"
#include "BKE_node.h"
#include "BKE_object.h"
#include "BKE_paint.h"
#include "BKE_particle.h"
#include "BKE_pbvh.h"
#include "BKE_pointcache.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
#include "BKE_subdiv_ccg.h"
#include "BKE_subsurf.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_query.h"
#include "IMB_colormanagement.h"
#include "GPU_batch.h"
#include "GPU_batch_presets.h"
#include "GPU_immediate.h"
#include "GPU_immediate_util.h"
#include "GPU_matrix.h"
#include "GPU_state.h"
#include "WM_api.h"
#include "WM_message.h"
#include "WM_toolsystem.h"
#include "WM_types.h"
#include "ED_image.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_sculpt.h"
#include "ED_space_api.h"
#include "ED_transform_snap_object_context.h"
#include "ED_view3d.h"
#include "paint_intern.h"
#include "sculpt_intern.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "bmesh.h"
#include "bmesh_tools.h"
#include <math.h>
#include <stdlib.h>
#include <string.h>
Go to the source code of this file.
Classes | |
struct | MaskByColorContiguousFloodFillData |
Macros | |
#define | MASK_BY_COLOR_SLOPE 0.25f |
Typedefs | |
typedef struct MaskByColorContiguousFloodFillData | MaskByColorContiguousFloodFillData |
Implements the Sculpt Mode tools.
Definition in file sculpt_ops.c.
#define MASK_BY_COLOR_SLOPE 0.25f |
sculpt_mask_by_color_delta_get returns values in the (0,1) range that are used to generate the mask based on the difference between two colors (the active color and the color of any other vertex). Ideally, a threshold of 0 should mask only the colors that are equal to the active color and threshold of 1 should mask all colors. In order to avoid artifacts and produce softer falloffs in the mask, the MASK_BY_COLOR_SLOPE defines the size of the transition values between masked and unmasked vertices. The smaller this value is, the sharper the generated mask is going to be.
Definition at line 816 of file sculpt_ops.c.
|
static |
Definition at line 864 of file sculpt_ops.c.
References BKE_pbvh_node_mark_update_mask(), BKE_pbvh_vertex_iter_begin, BKE_pbvh_vertex_iter_end, data, PBVHVertexIter::index, invert(), PBVHVertexIter::mask, SculptSession::pbvh, PBVH_ITER_UNIQUE, sculpt_mask_by_color_final_mask_get(), SCULPT_UNDO_MASK, and SCULPT_undo_push_node().
Referenced by sculpt_mask_by_color_contiguous().
|
static |
Definition at line 971 of file sculpt_ops.c.
References BKE_pbvh_node_mark_update_mask(), BKE_pbvh_vertex_iter_begin, BKE_pbvh_vertex_iter_end, col, data, PBVHVertexIter::index, invert(), PBVHVertexIter::mask, SculptSession::pbvh, PBVH_ITER_UNIQUE, sculpt_mask_by_color_delta_get(), sculpt_mask_by_color_final_mask_get(), SCULPT_UNDO_MASK, SCULPT_undo_push_node(), SCULPT_vertex_color_get(), and threshold.
Referenced by sculpt_mask_by_color_full_mesh().
void ED_object_sculptmode_enter | ( | struct bContext * | C, |
Depsgraph * | depsgraph, | ||
ReportList * | reports | ||
) |
Definition at line 414 of file sculpt_ops.c.
References C, CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), depsgraph, ED_object_sculptmode_enter_ex(), OBACT, and scene.
void ED_object_sculptmode_enter_ex | ( | Main * | bmain, |
Depsgraph * | depsgraph, | ||
Scene * | scene, | ||
Object * | ob, | ||
const bool | force_dyntopo, | ||
ReportList * | reports | ||
) |
Definition at line 326 of file sculpt_ops.c.
References BKE_mesh_from_object(), BKE_paint_get_active_from_paintmode(), BKE_paint_init(), BKE_report(), BKE_reportf(), BKE_sculpt_multires_active(), BLI_assert, DEG_id_tag_update(), depsgraph, DYNTOPO_WARN_EDATA, DYNTOPO_WARN_LDATA, DYNTOPO_WARN_MODIFIER, DYNTOPO_WARN_VDATA, ED_paint_cursor_start(), fabsf, ListBase::first, Mesh::flag, Object::id, ID_RECALC_COPY_ON_WRITE, is_negative_m4(), ME_SCULPT_DYNAMIC_TOPOLOGY, Object::mode, NULL, OB_MODE_SCULPT, Object::obmat, PAINT_CURSOR_SCULPT, PAINT_MODE_SCULPT, RPT_WARNING, Object::scale, scene, SCULPT_dynamic_topology_check(), SCULPT_dynamic_topology_enable_ex(), sculpt_init_session(), SCULPT_mode_poll_view3d(), SCULPT_UNDO_DYNTOPO_BEGIN, SCULPT_undo_push_begin(), SCULPT_undo_push_end(), SCULPT_undo_push_node(), TIP_, Mesh::totloop, Mesh::totpoly, wmWindowManager::undo_stack, and Main::wm.
Referenced by ED_editors_init(), ED_object_sculptmode_enter(), sculpt_mode_toggle_exec(), and sculpt_undosys_step_decode().
Definition at line 466 of file sculpt_ops.c.
References C, CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), depsgraph, ED_object_sculptmode_exit_ex(), OBACT, and scene.
Referenced by geometry_extract_apply().
void ED_object_sculptmode_exit_ex | ( | Main * | bmain, |
Depsgraph * | depsgraph, | ||
Scene * | scene, | ||
Object * | ob | ||
) |
Definition at line 423 of file sculpt_ops.c.
References BKE_mesh_from_object(), BKE_object_free_derived_caches(), BKE_sculpt_multires_active(), BKE_sculptsession_free(), SculptSession::bm, DEG_id_tag_update(), depsgraph, Mesh::flag, Object::id, ID_RECALC_COPY_ON_WRITE, ID_RECALC_GEOMETRY, ME_SCULPT_DYNAMIC_TOPOLOGY, Object::mode, multires_flush_sculpt_updates(), OB_MODE_SCULPT, paint_cursor_delete_textures(), scene, Object::sculpt, and sculpt_dynamic_topology_disable_with_undo().
Referenced by ed_object_mode_generic_exit_ex(), ED_object_sculptmode_exit(), and sculpt_mode_toggle_exec().
Definition at line 1124 of file sculpt_ops.c.
References SCULPT_OT_brush_stroke(), SCULPT_OT_cloth_filter(), SCULPT_OT_color_filter(), SCULPT_OT_detail_flood_fill(), SCULPT_OT_dirty_mask(), SCULPT_OT_dynamic_topology_toggle(), SCULPT_OT_dyntopo_detail_size_edit(), SCULPT_OT_expand(), SCULPT_OT_face_set_box_gesture(), SCULPT_OT_face_set_lasso_gesture(), SCULPT_OT_face_sets_change_visibility(), SCULPT_OT_face_sets_create(), SCULPT_OT_face_sets_edit(), SCULPT_OT_face_sets_init(), SCULPT_OT_face_sets_randomize_colors(), SCULPT_OT_loop_to_vertex_colors(), SCULPT_OT_mask_by_color(), SCULPT_OT_mask_expand(), SCULPT_OT_mask_filter(), SCULPT_OT_mask_init(), SCULPT_OT_mesh_filter(), SCULPT_OT_optimize(), SCULPT_OT_project_line_gesture(), SCULPT_OT_sample_color(), SCULPT_OT_sample_detail_size(), SCULPT_OT_sculptmode_toggle(), SCULPT_OT_set_detail_size(), SCULPT_OT_set_persistent_base(), SCULPT_OT_set_pivot_position(), SCULPT_OT_symmetrize(), SCULPT_OT_trim_box_gesture(), SCULPT_OT_trim_lasso_gesture(), SCULPT_OT_vertex_to_loop_colors(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
|
static |
Definition at line 695 of file sculpt_ops.c.
References MLoopCol::a, MLoopCol::b, C, CD_MLOOP, CD_MPOLY, CD_PROP_BYTE_COLOR, CD_PROP_COLOR, MPropCol::color, CTX_data_active_object(), CustomData_get_active_layer(), CustomData_get_layer(), CustomData_get_layer_n(), data, Object::data, DEG_id_tag_update(), MLoopCol::g, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_GEOMETRY, Mesh::ldata, MPoly::loopstart, mesh, NC_GEOM, ND_DATA, NULL, OB_MESH, OPERATOR_CANCELLED, OPERATOR_FINISHED, Mesh::pdata, MLoopCol::r, srgb_to_linearrgb_v4(), MPoly::totloop, Mesh::totpoly, Object::type, MLoop::v, Mesh::vdata, and WM_event_add_notifier().
Referenced by SCULPT_OT_loop_to_vertex_colors().
Definition at line 666 of file sculpt_ops.c.
References BKE_pbvh_type(), C, CTX_data_active_object(), SculptSession::pbvh, PBVH_FACES, Object::sculpt, SCULPT_has_colors(), and SCULPT_mode_poll().
Referenced by SCULPT_OT_loop_to_vertex_colors(), and SCULPT_OT_vertex_to_loop_colors().
void SCULPT_geometry_preview_lines_update | ( | bContext * | C, |
SculptSession * | ss, | ||
float | radius | ||
) |
Definition at line 541 of file sculpt_ops.c.
References BKE_pbvh_type(), BKE_sculpt_update_object_for_edit(), BLI_BITMAP_ENABLE, BLI_BITMAP_NEW, BLI_BITMAP_TEST, BLI_gsqueue_free(), BLI_gsqueue_is_empty(), BLI_gsqueue_new(), BLI_gsqueue_pop(), BLI_gsqueue_push(), C, copy_v3_v3(), CTX_data_active_object(), CTX_data_depsgraph_pointer(), SculptSession::deform_modifiers_active, depsgraph, SculptVertexNeighborIter::index, len_squared_v3v3(), MEM_callocN, MEM_freeN, NULL, SculptSession::pbvh, PBVH_GRIDS, SculptSession::pmap, SculptSession::preview_vert_index_count, SculptSession::preview_vert_index_list, SCULPT_active_vertex_co_get(), SCULPT_active_vertex_get(), SCULPT_vertex_co_for_grab_active_get(), SCULPT_vertex_count_get(), SCULPT_VERTEX_NEIGHBORS_ITER_BEGIN, SCULPT_VERTEX_NEIGHBORS_ITER_END, and SculptVertexNeighborIter::size.
Referenced by paint_cursor_draw_3d_view_brush_cursor_inactive().
|
static |
Definition at line 288 of file sculpt_ops.c.
References BKE_scene_graph_evaluated_ensure(), BKE_sculpt_ensure_orig_mesh_data(), BKE_sculpt_toolsettings_data_ensure(), BKE_sculpt_update_object_for_edit(), BKE_sculptsession_free(), depsgraph, SculptSession::face_sets, MEM_callocN, SculptSession::mode_type, NULL, OB_MODE_SCULPT, scene, Object::sculpt, SCULPT_face_set_next_available_get(), SCULPT_FACE_SET_NONE, and SculptSession::totfaces.
Referenced by ED_object_sculptmode_enter_ex().
|
static |
Definition at line 913 of file sculpt_ops.c.
References BKE_pbvh_parallel_range_settings(), BKE_pbvh_search_gather(), BLI_task_parallel_range(), color, copy_v3_v3(), data, do_mask_by_color_contiguous_update_nodes_cb(), MaskByColorContiguousFloodFillData::initial_color, invert(), MaskByColorContiguousFloodFillData::invert, MEM_calloc_arrayN, MEM_freeN, MEM_SAFE_FREE, MaskByColorContiguousFloodFillData::new_mask, NULL, SculptSession::pbvh, SCULPT_floodfill_add_initial(), SCULPT_floodfill_execute(), SCULPT_floodfill_free(), SCULPT_floodfill_init(), sculpt_mask_by_color_contiguous_floodfill_cb(), SCULPT_vertex_color_get(), SCULPT_vertex_count_get(), threshold, and MaskByColorContiguousFloodFillData::threshold.
Referenced by sculpt_mask_by_color_invoke().
|
static |
Definition at line 892 of file sculpt_ops.c.
References data, len, len_v3v3(), M_SQRT3, sculpt_mask_by_color_delta_get(), and SCULPT_vertex_color_get().
Referenced by sculpt_mask_by_color_contiguous().
|
static |
Definition at line 818 of file sculpt_ops.c.
References invert(), len, len_v3v3(), M_SQRT3, MASK_BY_COLOR_SLOPE, and threshold.
Referenced by do_mask_by_color_task_cb(), and sculpt_mask_by_color_contiguous_floodfill_cb().
|
static |
Definition at line 843 of file sculpt_ops.c.
References invert(), max_ff(), and min_ff().
Referenced by do_mask_by_color_contiguous_update_nodes_cb(), and do_mask_by_color_task_cb().
|
static |
Definition at line 1008 of file sculpt_ops.c.
References BKE_pbvh_parallel_range_settings(), BKE_pbvh_search_gather(), BLI_task_parallel_range(), data, do_mask_by_color_task_cb(), invert(), MEM_SAFE_FREE, NULL, SculptSession::pbvh, and threshold.
Referenced by sculpt_mask_by_color_invoke().
|
static |
Definition at line 1036 of file sculpt_ops.c.
References BKE_pbvh_ensure_node_loops(), BKE_pbvh_update_vertex_data(), BKE_sculpt_color_layer_create_if_needed(), BKE_sculpt_update_object_for_edit(), C, View3DShading::color_type, CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_wm_view3d(), DEG_id_tag_update(), depsgraph, Object::id, ID_RECALC_GEOMETRY, invert(), wmEvent::mval, OB_SOLID, OPERATOR_CANCELLED, OPERATOR_FINISHED, SculptSession::pbvh, PBVH_UpdateMask, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RNA_float_get(), Object::sculpt, SCULPT_active_vertex_get(), SCULPT_cursor_geometry_info_update(), SCULPT_flush_update_done(), SCULPT_handles_colors_report(), SCULPT_has_loop_colors(), sculpt_mask_by_color_contiguous(), sculpt_mask_by_color_full_mesh(), SCULPT_undo_push_begin(), SCULPT_undo_push_end(), SCULPT_UPDATE_MASK, SCULPT_vertex_random_access_ensure(), View3D::shading, threshold, View3DShading::type, UNPACK2, and V3D_SHADING_VERTEX_COLOR.
Referenced by SCULPT_OT_mask_by_color().
|
static |
Definition at line 475 of file sculpt_ops.c.
References BKE_paint_toolslots_brush_validate(), C, CTX_data_depsgraph_on_load(), CTX_data_ensure_evaluated_depsgraph(), CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_manager(), CTX_wm_message_bus(), Object::data, depsgraph, ED_object_mode_compat_set(), ED_object_sculptmode_enter_ex(), ED_object_sculptmode_exit_ex(), Mesh::flag, Object::id, ME_SCULPT_DYNAMIC_TOPOLOGY, Object::mode, wmOperatorType::name, NC_SCENE, ND_MODE, OB_MODE_SCULPT, OBACT, wmWindowManager::op_undo_depth, OPERATOR_CANCELLED, OPERATOR_FINISHED, Sculpt::paint, wmOperator::reports, scene, ToolSettings::sculpt, SCULPT_undo_push_begin(), SCULPT_undo_push_end(), Scene::toolsettings, wmOperator::type, WM_event_add_notifier(), WM_msg_publish_rna_prop, and WM_toolsystem_update_from_context_view3d().
Referenced by SCULPT_OT_sculptmode_toggle().
Definition at line 186 of file sculpt_ops.c.
References BKE_pbvh_type(), C, CTX_data_active_object(), SculptSession::pbvh, PBVH_GRIDS, Object::sculpt, and SCULPT_mode_poll().
Referenced by SCULPT_OT_symmetrize().
|
static |
Definition at line 156 of file sculpt_ops.c.
References C, CTX_data_active_object(), NC_OBJECT, ND_DRAW, OPERATOR_FINISHED, SCULPT_pbvh_clear(), and WM_event_add_notifier().
Referenced by SCULPT_OT_optimize().
|
static |
Definition at line 746 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, loop_to_vertex_colors_exec(), wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and sculpt_colors_poll().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 1089 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_REGISTER, ot, wmOperatorType::poll, wmOperatorType::prop, RNA_def_boolean(), RNA_def_float(), sculpt_mask_by_color_invoke(), SCULPT_mode_poll(), and wmOperatorType::srna.
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 170 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, SCULPT_mode_poll(), and sculpt_optimize_exec().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 793 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_REGISTER, ot, wmOperatorType::poll, SCULPT_mode_poll(), and sculpt_sample_color_invoke().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 527 of file sculpt_ops.c.
References wmOperatorType::description, ED_operator_object_active_editable_mesh(), wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and sculpt_mode_toggle_exec().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 140 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, SCULPT_mode_poll(), and sculpt_set_persistent_base_exec().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 264 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::idname, wmOperatorType::name, ot, wmOperatorType::poll, RNA_def_float(), sculpt_no_multires_poll(), sculpt_symmetrize_exec(), and wmOperatorType::srna.
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 681 of file sculpt_ops.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, sculpt_colors_poll(), and vertex_to_loop_colors_exec().
Referenced by ED_operatortypes_sculpt().
|
static |
Definition at line 760 of file sculpt_ops.c.
References BKE_brush_color_set(), BKE_paint_brush(), BKE_sculpt_update_object_for_edit(), C, copy_v4_fl(), CTX_data_active_object(), CTX_data_depsgraph_pointer(), CTX_data_scene(), CTX_data_tool_settings(), IMB_colormanagement_scene_linear_to_srgb_v3(), NA_EDITED, NC_BRUSH, OPERATOR_CANCELLED, OPERATOR_FINISHED, Sculpt::paint, wmOperator::reports, scene, Object::sculpt, ToolSettings::sculpt, SCULPT_active_vertex_get(), SCULPT_handles_colors_report(), SCULPT_has_colors(), SCULPT_vertex_color_get(), and WM_event_add_notifier().
Referenced by SCULPT_OT_sample_color().
|
static |
Definition at line 113 of file sculpt_ops.c.
References BKE_sculpt_update_object_for_edit(), C, SculptPersistentBase::co, copy_v3_v3(), CTX_data_active_object(), CTX_data_depsgraph_pointer(), depsgraph, SculptPersistentBase::disp, MEM_mallocN, MEM_SAFE_FREE, SculptPersistentBase::no, OPERATOR_FINISHED, SculptSession::persistent_base, Object::sculpt, SCULPT_vertex_co_get(), SCULPT_vertex_count_get(), SCULPT_vertex_normal_get(), and SCULPT_vertex_random_access_ensure().
Referenced by SCULPT_OT_set_persistent_base().
|
static |
Definition at line 195 of file sculpt_ops.c.
References BKE_mesh_batch_cache_dirty_tag(), BKE_MESH_BATCH_DIRTY_ALL, BKE_mesh_mirror_apply_mirror_on_axis(), BKE_mesh_normals_tag_dirty(), BKE_pbvh_type(), SculptSession::bm, BM_EDGE, BM_ELEM_TAG, SculptSession::bm_log, BM_log_all_added(), BM_log_before_all_removed(), BM_mesh_elem_hflag_disable_all(), BM_mesh_toolflags_set(), BMO_FLAG_DEFAULTS, BMO_FLAG_RESPECT_HIDE, BMO_op_callf(), C, CTX_data_active_object(), CTX_data_main(), CTX_data_tool_settings(), Object::data, ED_sculpt_undo_geometry_begin(), ED_sculpt_undo_geometry_end(), mesh, NC_OBJECT, ND_DRAW, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, SculptSession::pbvh, PBVH_BMESH, PBVH_FACES, PBVH_GRIDS, wmOperator::ptr, RNA_float_get(), Object::sculpt, ToolSettings::sculpt, SCULPT_dynamic_topology_triangulate(), SCULPT_pbvh_clear(), SCULPT_UNDO_DYNTOPO_SYMMETRIZE, SCULPT_undo_push_begin(), SCULPT_undo_push_end(), SCULPT_undo_push_node(), Sculpt::symmetrize_direction, and WM_event_add_notifier().
Referenced by SCULPT_OT_symmetrize().
|
static |
Definition at line 615 of file sculpt_ops.c.
References MLoopCol::a, MLoopCol::b, C, CD_MLOOP, CD_MPOLY, CD_PROP_BYTE_COLOR, CD_PROP_COLOR, MPropCol::color, CTX_data_active_object(), CustomData_get_active_layer(), CustomData_get_layer(), CustomData_get_layer_n(), data, Object::data, DEG_id_tag_update(), MLoopCol::g, Object::id, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_GEOMETRY, Mesh::ldata, linearrgb_to_srgb_v4(), MPoly::loopstart, mesh, NC_GEOM, ND_DATA, NULL, OB_MESH, OPERATOR_CANCELLED, OPERATOR_FINISHED, Mesh::pdata, MLoopCol::r, MPoly::totloop, Mesh::totpoly, Object::type, MLoop::v, Mesh::vdata, and WM_event_add_notifier().
Referenced by SCULPT_OT_vertex_to_loop_colors().