Blender V4.3
rna_fcurve.cc File Reference
#include <cstdlib>
#include "DNA_anim_types.h"
#include "DNA_curve_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "MEM_guardedalloc.h"
#include "BLT_translation.hh"
#include "BKE_action.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "RNA_enum_types.hh"
#include "rna_internal.hh"
#include "WM_types.hh"
#include "ED_keyframes_edit.hh"
#include "ED_keyframing.hh"

Go to the source code of this file.

Functions

static void rna_def_fmodifier_generator (BlenderRNA *brna)
 
static void rna_def_fmodifier_function_generator (BlenderRNA *brna)
 
static void rna_def_fmodifier_envelope_ctrl (BlenderRNA *brna)
 
static void rna_def_fmodifier_envelope_control_points (BlenderRNA *brna, PropertyRNA *cprop)
 
static void rna_def_fmodifier_envelope (BlenderRNA *brna)
 
static void rna_def_fmodifier_cycles (BlenderRNA *brna)
 
static void rna_def_fmodifier_limits (BlenderRNA *brna)
 
static void rna_def_fmodifier_noise (BlenderRNA *brna)
 
static void rna_def_fmodifier_stepped (BlenderRNA *brna)
 
static void rna_def_fmodifier (BlenderRNA *brna)
 
static void rna_def_drivertarget (BlenderRNA *brna)
 
static void rna_def_drivervar (BlenderRNA *brna)
 
static void rna_def_channeldriver_variables (BlenderRNA *brna, PropertyRNA *cprop)
 
static void rna_def_channeldriver (BlenderRNA *brna)
 
static void rna_def_fpoint (BlenderRNA *brna)
 
static void rna_def_fkeyframe (BlenderRNA *brna)
 
static void rna_def_fcurve_modifiers (BlenderRNA *brna, PropertyRNA *cprop)
 
static void rna_def_fcurve_keyframe_points (BlenderRNA *brna, PropertyRNA *cprop)
 
static void rna_def_fcurve (BlenderRNA *brna)
 
void RNA_def_fcurve (BlenderRNA *brna)
 

Variables

const EnumPropertyItem rna_enum_fmodifier_type_items []
 
const EnumPropertyItem rna_enum_fcurve_auto_smoothing_items []
 
const EnumPropertyItem rna_enum_beztriple_keyframe_type_items []
 
const EnumPropertyItem rna_enum_beztriple_interpolation_easing_items []
 
const EnumPropertyItem rna_enum_driver_target_rotation_mode_items []
 
static const EnumPropertyItem rna_enum_driver_target_context_property_items []
 

Function Documentation

◆ rna_def_channeldriver()

◆ rna_def_channeldriver_variables()

◆ rna_def_drivertarget()

◆ rna_def_drivervar()

◆ RNA_def_fcurve()

◆ rna_def_fcurve()

static void rna_def_fcurve ( BlenderRNA * brna)
static

Definition at line 2484 of file rna_fcurve.cc.

References FCURVE_COLOR_AUTO_RAINBOW, FCURVE_COLOR_AUTO_RGB, FCURVE_COLOR_AUTO_YRGB, FCURVE_COLOR_CUSTOM, FCURVE_DISABLED, FCURVE_EXTRAPOLATE_CONSTANT, FCURVE_EXTRAPOLATE_LINEAR, FCURVE_MUTED, FCURVE_PROTECTED, FCURVE_SELECTED, FCURVE_VISIBLE, FLT_MAX, FUNC_USE_CONTEXT, FUNC_USE_MAIN, FUNC_USE_REPORTS, FUNC_USE_SELF_ID, NA_EDITED, NA_SELECTED, NC_ANIMATION, NC_SPACE, ND_ANIMCHAN, ND_KEYFRAME, ND_KEYFRAME_PROP, ND_SPACE_GRAPH, PARM_REQUIRED, PARM_RNAPTR, PROP_BOOLEAN, PROP_COLLECTION, PROP_COLOR_GAMMA, PROP_EDITABLE, PROP_ENUM, PROP_FLOAT, PROP_INT, PROP_NEVER_NULL, PROP_NONE, PROP_POINTER, PROP_PTR_NO_OWNERSHIP, PROP_STRING, PROP_THICK_WRAP, PROP_UNSIGNED, PROPOVERRIDE_OVERRIDABLE_LIBRARY, RNA_api_fcurves(), rna_def_fcurve_keyframe_points(), rna_def_fcurve_modifiers(), RNA_def_float(), RNA_def_float_vector(), RNA_def_function(), RNA_def_function_flag(), RNA_def_function_output(), RNA_def_function_return(), RNA_def_function_ui_description(), RNA_def_parameter_flags(), RNA_def_pointer(), RNA_def_property(), RNA_def_property_array(), RNA_def_property_boolean_funcs(), RNA_def_property_boolean_negative_sdna(), RNA_def_property_boolean_sdna(), RNA_def_property_clear_flag(), RNA_def_property_collection_sdna(), RNA_def_property_enum_items(), RNA_def_property_enum_sdna(), RNA_def_property_flag(), RNA_def_property_override_flag(), RNA_def_property_pointer_funcs(), RNA_def_property_pointer_sdna(), RNA_def_property_range(), RNA_def_property_string_funcs(), RNA_def_property_struct_type(), RNA_def_property_ui_text(), RNA_def_property_update(), RNA_def_struct(), RNA_def_struct_ui_icon(), RNA_def_struct_ui_text(), and rna_enum_fcurve_auto_smoothing_items.

Referenced by RNA_def_fcurve().

◆ rna_def_fcurve_keyframe_points()

◆ rna_def_fcurve_modifiers()

◆ rna_def_fkeyframe()

◆ rna_def_fmodifier()

◆ rna_def_fmodifier_cycles()

◆ rna_def_fmodifier_envelope()

◆ rna_def_fmodifier_envelope_control_points()

◆ rna_def_fmodifier_envelope_ctrl()

◆ rna_def_fmodifier_function_generator()

◆ rna_def_fmodifier_generator()

◆ rna_def_fmodifier_limits()

◆ rna_def_fmodifier_noise()

◆ rna_def_fmodifier_stepped()

◆ rna_def_fpoint()

Variable Documentation

◆ rna_enum_beztriple_interpolation_easing_items

const EnumPropertyItem rna_enum_beztriple_interpolation_easing_items[]
Initial value:
= {
"AUTO",
ICON_IPO_EASE_IN_OUT,
"Automatic Easing",
"Easing type is chosen automatically based on what the type of interpolation used "
"(e.g. Ease In for transitional types, and Ease Out for dynamic effects)"},
"EASE_IN",
ICON_IPO_EASE_IN,
"Ease In",
"Only on the end closest to the next keyframe"},
"EASE_OUT",
ICON_IPO_EASE_OUT,
"Ease Out",
"Only on the end closest to the first keyframe"},
"EASE_IN_OUT",
ICON_IPO_EASE_IN_OUT,
"Ease In and Out",
"Segment between both keyframes"},
{0, nullptr, 0, nullptr, nullptr},
}
@ BEZT_IPO_EASE_OUT
@ BEZT_IPO_EASE_AUTO
@ BEZT_IPO_EASE_IN
@ BEZT_IPO_EASE_IN_OUT

Definition at line 120 of file rna_fcurve.cc.

Referenced by ACTION_OT_easing_type(), GRAPH_OT_easing_type(), blender::ed::sculpt_paint::greasepencil::GREASE_PENCIL_OT_interpolate_sequence(), and rna_def_fkeyframe().

◆ rna_enum_beztriple_keyframe_type_items

const EnumPropertyItem rna_enum_beztriple_keyframe_type_items[]

◆ rna_enum_driver_target_context_property_items

const EnumPropertyItem rna_enum_driver_target_context_property_items[]
static
Initial value:
= {
"ACTIVE_SCENE",
ICON_NONE,
"Active Scene",
"Currently evaluating scene"},
"ACTIVE_VIEW_LAYER",
ICON_NONE,
"Active View Layer",
"Currently evaluating view layer"},
{0, nullptr, 0, nullptr, nullptr},
}
@ DTAR_CONTEXT_PROPERTY_ACTIVE_SCENE
@ DTAR_CONTEXT_PROPERTY_ACTIVE_VIEW_LAYER

Definition at line 174 of file rna_fcurve.cc.

Referenced by rna_def_drivertarget().

◆ rna_enum_driver_target_rotation_mode_items

const EnumPropertyItem rna_enum_driver_target_rotation_mode_items[]
Initial value:
= {
{DTAR_ROTMODE_AUTO, "AUTO", 0, "Auto Euler", "Euler using the rotation order of the target"},
{DTAR_ROTMODE_EULER_XYZ, "XYZ", 0, "XYZ Euler", "Euler using the XYZ rotation order"},
{DTAR_ROTMODE_EULER_XZY, "XZY", 0, "XZY Euler", "Euler using the XZY rotation order"},
{DTAR_ROTMODE_EULER_YXZ, "YXZ", 0, "YXZ Euler", "Euler using the YXZ rotation order"},
{DTAR_ROTMODE_EULER_YZX, "YZX", 0, "YZX Euler", "Euler using the YZX rotation order"},
{DTAR_ROTMODE_EULER_ZXY, "ZXY", 0, "ZXY Euler", "Euler using the ZXY rotation order"},
{DTAR_ROTMODE_EULER_ZYX, "ZYX", 0, "ZYX Euler", "Euler using the ZYX rotation order"},
{DTAR_ROTMODE_QUATERNION, "QUATERNION", 0, "Quaternion", "Quaternion rotation"},
"SWING_TWIST_X",
0,
"Swing and X Twist",
"Decompose into a swing rotation to aim the X axis, followed by twist around it"},
"SWING_TWIST_Y",
0,
"Swing and Y Twist",
"Decompose into a swing rotation to aim the Y axis, followed by twist around it"},
"SWING_TWIST_Z",
0,
"Swing and Z Twist",
"Decompose into a swing rotation to aim the Z axis, followed by twist around it"},
{0, nullptr, 0, nullptr, nullptr},
}
@ DTAR_ROTMODE_QUATERNION
@ DTAR_ROTMODE_SWING_TWIST_X
@ DTAR_ROTMODE_EULER_ZXY
@ DTAR_ROTMODE_SWING_TWIST_Y
@ DTAR_ROTMODE_EULER_XYZ
@ DTAR_ROTMODE_EULER_ZYX
@ DTAR_ROTMODE_AUTO
@ DTAR_ROTMODE_EULER_YXZ
@ DTAR_ROTMODE_EULER_XZY
@ DTAR_ROTMODE_SWING_TWIST_Z
@ DTAR_ROTMODE_EULER_YZX

Definition at line 147 of file rna_fcurve.cc.

Referenced by rna_def_constraint_transform(), and rna_def_drivertarget().

◆ rna_enum_fcurve_auto_smoothing_items

const EnumPropertyItem rna_enum_fcurve_auto_smoothing_items[]
Initial value:
= {
"NONE",
0,
"None",
"Automatic handles only take immediately adjacent keys into account"},
"CONT_ACCEL",
0,
"Continuous Acceleration",
"Automatic handles are adjusted to avoid jumps in acceleration, resulting "
"in smoother curves. However, key changes may affect interpolation over a "
"larger stretch of the curve."},
{0, nullptr, 0, nullptr, nullptr},
}
@ FCURVE_SMOOTH_NONE
@ FCURVE_SMOOTH_CONT_ACCEL

Definition at line 70 of file rna_fcurve.cc.

Referenced by rna_def_fcurve(), and rna_def_userdef_edit().

◆ rna_enum_fmodifier_type_items