Blender V5.0
ED_sculpt.hh File Reference
#include <cstddef>

Go to the source code of this file.

Namespaces

namespace  blender
namespace  blender::ed
namespace  blender::ed::sculpt_paint
namespace  blender::ed::sculpt_paint::undo
namespace  blender::ed::sculpt_paint::face_set

Functions

bool blender::ed::sculpt_paint::report_if_shape_key_is_locked (const Object &ob, ReportList *reports)
void blender::ed::sculpt_paint::operatortypes_sculpt ()
void blender::ed::sculpt_paint::keymap_sculpt (wmKeyConfig *keyconf)
void blender::ed::sculpt_paint::update_modal_transform (bContext *C, Object &ob)
void blender::ed::sculpt_paint::cancel_modal_transform (bContext *C, Object &ob)
void blender::ed::sculpt_paint::init_transform (bContext *C, Object &ob, const float mval_fl[2], const char *undo_name)
void blender::ed::sculpt_paint::end_transform (bContext *C, Object &ob)
size_t blender::ed::sculpt_paint::undo::step_memory_size_get (UndoStep *step)
bool blender::ed::sculpt_paint::object_active_color_fill (Object &ob, const float fill_color[4], bool only_selected)
void blender::ed::sculpt_paint::store_mesh_from_eval (const wmOperator &op, const Scene &scene, const Depsgraph &depsgraph, const RegionView3D *rv3d, Object &object, Mesh *new_mesh)
Sculpt Mode Toggle Operator
void blender::ed::sculpt_paint::object_sculpt_mode_enter (Main &bmain, Depsgraph &depsgraph, Scene &scene, Object &ob, bool force_dyntopo, ReportList *reports)
void blender::ed::sculpt_paint::object_sculpt_mode_enter (bContext *C, Depsgraph &depsgraph, ReportList *reports)
void blender::ed::sculpt_paint::object_sculpt_mode_exit (Main &bmain, Depsgraph &depsgraph, Scene &scene, Object &ob)
void blender::ed::sculpt_paint::object_sculpt_mode_exit (bContext *C, Depsgraph &depsgraph)
Implements ED Undo System
void blender::ed::sculpt_paint::undo::register_type (UndoType *ut)
void blender::ed::sculpt_paint::undo::geometry_begin (const Scene &scene, Object &ob, const wmOperator *op)
void blender::ed::sculpt_paint::undo::geometry_begin_ex (const Scene &scene, Object &ob, const char *name)
void blender::ed::sculpt_paint::undo::geometry_end (Object &ob)
Multires + Base Mesh Undo

Example of a relevant operator is Apply Base.

Usage:

static int operator_exec((bContext *C, wmOperator *op) {

ed::sculpt_paint::undo::push_multires_mesh_begin(C, op->type->name); // Modify base mesh. ed::sculpt_paint::undo::push_multires_mesh_end(C, op->type->name);

return OPERATOR_FINISHED; }

If object is not in Sculpt mode or there is no active multires object, ED_undo_push is used instead.

void blender::ed::sculpt_paint::undo::push_multires_mesh_begin (bContext *C, const char *str)
void blender::ed::sculpt_paint::undo::push_multires_mesh_end (bContext *C, const char *str)
Public API
int blender::ed::sculpt_paint::face_set::find_next_available_id (Object &object)
void blender::ed::sculpt_paint::face_set::initialize_none_to_id (Mesh *mesh, int new_id)
int blender::ed::sculpt_paint::face_set::active_update_and_get (bContext *C, Object &ob, const float mval_fl[2])