Blender V4.3
grease_pencil_interpolate.cc File Reference
#include "BKE_colortools.hh"
#include "BKE_context.hh"
#include "BKE_curves.hh"
#include "BKE_grease_pencil.hh"
#include "BKE_material.h"
#include "BKE_paint.hh"
#include "BLI_array_utils.hh"
#include "BLI_easing.h"
#include "BLI_index_mask.hh"
#include "BLI_math_angle_types.hh"
#include "BLI_math_geom.h"
#include "BLI_math_rotation.h"
#include "BLI_math_rotation.hh"
#include "BLI_math_vector.hh"
#include "BLI_offset_indices.hh"
#include "BLI_task.hh"
#include "BLT_translation.hh"
#include "DEG_depsgraph.hh"
#include "DNA_grease_pencil_types.h"
#include "ED_curves.hh"
#include "ED_grease_pencil.hh"
#include "ED_numinput.hh"
#include "ED_screen.hh"
#include "GEO_interpolate_curves.hh"
#include "GEO_smooth_curves.hh"
#include "MEM_guardedalloc.h"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "RNA_enum_types.hh"
#include "RNA_prototypes.hh"
#include "UI_interface.hh"
#include "UI_resources.hh"
#include <climits>

Go to the source code of this file.

Classes

struct  blender::ed::sculpt_paint::greasepencil::InterpolationPairs
 
struct  blender::ed::sculpt_paint::greasepencil::InterpolateOpData
 
struct  blender::ed::sculpt_paint::greasepencil::InterpolateOpData::LayerData
 

Namespaces

namespace  blender
 
namespace  blender::ed
 
namespace  blender::ed::sculpt_paint
 
namespace  blender::ed::sculpt_paint::greasepencil
 

Functions

Interpolate Sequence Operator
static float blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_sequence_easing_calc (const eBezTriple_Easing easing, const InterpolationType type, const float back_easing, const float amplitude, const float period, const CurveMapping &custom_ipo, const float time)
 
static int blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_sequence_exec (bContext *C, wmOperator *op)
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_sequence_ui (bContext *C, wmOperator *op)
 
static void blender::ed::sculpt_paint::greasepencil::GREASE_PENCIL_OT_interpolate_sequence (wmOperatorType *ot)
 
Registration
void ED_operatortypes_grease_pencil_interpolate ()
 
void ED_interpolatetool_modal_keymap (wmKeyConfig *keyconf)
 

Common Utilities for Interpolation Operators

enum class  blender::ed::sculpt_paint::greasepencil::InterpolationType {
  blender::ed::sculpt_paint::greasepencil::Linear , blender::ed::sculpt_paint::greasepencil::CurveMap , blender::ed::sculpt_paint::greasepencil::Back , blender::ed::sculpt_paint::greasepencil::Bounce ,
  blender::ed::sculpt_paint::greasepencil::Circular , blender::ed::sculpt_paint::greasepencil::Cubic , blender::ed::sculpt_paint::greasepencil::Elastic , blender::ed::sculpt_paint::greasepencil::Exponential ,
  blender::ed::sculpt_paint::greasepencil::Quadratic , blender::ed::sculpt_paint::greasepencil::Quartic , blender::ed::sculpt_paint::greasepencil::Quintic , blender::ed::sculpt_paint::greasepencil::Sine
}
 
using blender::ed::sculpt_paint::greasepencil::FramesMapKeyIntervalT = std::pair<int, int>
 
static const EnumPropertyItem blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolation_type_items []
 
static const EnumPropertyItem blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_flip_mode_items []
 
static const EnumPropertyItem blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_layer_items []
 
constexpr float blender::ed::sculpt_paint::greasepencil::interpolate_factor_min = -1.0f
 
constexpr float blender::ed::sculpt_paint::greasepencil::interpolate_factor_max = 2.0f
 
static std::optional< FramesMapKeyIntervalTblender::ed::sculpt_paint::greasepencil::find_frames_interval (const bke::greasepencil::Layer &layer, const int frame_number, const bool exclude_breakdowns)
 
static bool blender::ed::sculpt_paint::greasepencil::find_curve_mapping_from_index (const GreasePencil &grease_pencil, const bke::greasepencil::Layer &layer, const int current_frame, const bool exclude_breakdowns, const bool only_selected, InterpolationPairs &pairs)
 
static bool blender::ed::sculpt_paint::greasepencil::compute_auto_flip (const Span< float3 > from_positions, const Span< float3 > to_positions)
 
static bke::CurvesGeometry blender::ed::sculpt_paint::greasepencil::interpolate_between_curves (const GreasePencil &grease_pencil, const bke::greasepencil::Layer &layer, const InterpolationPairs &curve_pairs, const float mix_factor, const InterpolateFlipMode flip_mode)
 

Interpolate Operator

enum class  blender::ed::sculpt_paint::greasepencil::InterpolateToolModalEvent : int8_t { blender::ed::sculpt_paint::greasepencil::Cancel = 1 , blender::ed::sculpt_paint::greasepencil::Confirm , blender::ed::sculpt_paint::greasepencil::Increase , blender::ed::sculpt_paint::greasepencil::Decrease }
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_status_indicators (bContext &C, const InterpolateOpData &opdata)
 
static bke::greasepencil::Drawingblender::ed::sculpt_paint::greasepencil::get_drawing_at_exact_frame (GreasePencil &grease_pencil, bke::greasepencil::Layer &layer, const int frame_number)
 
static bke::greasepencil::Drawingblender::ed::sculpt_paint::greasepencil::ensure_drawing_at_exact_frame (GreasePencil &grease_pencil, bke::greasepencil::Layer &layer, InterpolateOpData::LayerData &layer_data, const int frame_number)
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_update (bContext &C, const wmOperator &op)
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_restore (bContext &C, wmOperator &op)
 
static bool blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_init (const bContext &C, wmOperator &op)
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_exit (bContext &C, wmOperator &op)
 
static bool blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_poll (bContext *C)
 
static int blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_invoke (bContext *C, wmOperator *op, const wmEvent *)
 
static int blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_modal (bContext *C, wmOperator *op, const wmEvent *event)
 
static void blender::ed::sculpt_paint::greasepencil::grease_pencil_interpolate_cancel (bContext *C, wmOperator *op)
 
static void blender::ed::sculpt_paint::greasepencil::GREASE_PENCIL_OT_interpolate (wmOperatorType *ot)
 

Function Documentation

◆ ED_interpolatetool_modal_keymap()

void ED_interpolatetool_modal_keymap ( wmKeyConfig * keyconf)

◆ ED_operatortypes_grease_pencil_interpolate()

void ED_operatortypes_grease_pencil_interpolate ( )

Definition at line 1399 of file grease_pencil_interpolate.cc.

References WM_operatortype_append().

Referenced by ED_operatortypes_grease_pencil().