Blender V4.3
anim_motion_paths.cc File Reference
#include "MEM_guardedalloc.h"
#include <cstdlib>
#include "BLI_dlrbTree.h"
#include "BLI_listbase.h"
#include "BLI_math_matrix.h"
#include "BLI_math_matrix.hh"
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_scene_types.h"
#include "BKE_action.hh"
#include "BKE_anim_data.hh"
#include "BKE_main.hh"
#include "BKE_scene.hh"
#include "DEG_depsgraph.hh"
#include "DEG_depsgraph_build.hh"
#include "DEG_depsgraph_query.hh"
#include "GPU_batch.hh"
#include "GPU_vertex_buffer.hh"
#include "ED_anim_api.hh"
#include "ED_keyframes_keylist.hh"
#include "ANIM_action_legacy.hh"
#include "ANIM_bone_collections.hh"
#include "CLG_log.h"

Go to the source code of this file.

Classes

struct  MPathTarget
 

Functions

static void motionpaths_calc_update_scene (Depsgraph *depsgraph)
 
Depsgraph * animviz_depsgraph_build (Main *bmain, Scene *scene, ViewLayer *view_layer, ListBase *targets)
 
void animviz_get_object_motionpaths (Object *ob, ListBase *targets)
 
static void motionpaths_calc_bake_targets (ListBase *targets, int cframe, Depsgraph *depsgraph, Object *camera)
 
static bAnimVizSettingsanimviz_target_settings_get (MPathTarget *mpt)
 
static void motionpath_get_global_framerange (ListBase *targets, int *r_sfra, int *r_efra)
 
static int motionpath_get_prev_keyframe (MPathTarget *mpt, AnimKeylist *keylist, int current_frame)
 
static int motionpath_get_prev_prev_keyframe (MPathTarget *mpt, AnimKeylist *keylist, int current_frame)
 
static int motionpath_get_next_keyframe (MPathTarget *mpt, AnimKeylist *keylist, int current_frame)
 
static int motionpath_get_next_next_keyframe (MPathTarget *mpt, AnimKeylist *keylist, int current_frame)
 
static bool motionpath_check_can_use_keyframe_range (MPathTarget *, AnimData *adt, ListBase *fcurve_list)
 
static void motionpath_calculate_update_range (MPathTarget *mpt, AnimData *adt, ListBase *fcurve_list, int current_frame, int *r_sfra, int *r_efra)
 
static void motionpath_free_free_tree_data (ListBase *targets)
 
void animviz_motionpath_compute_range (Object *ob, Scene *scene)
 
void animviz_calc_motionpaths (Depsgraph *depsgraph, Main *bmain, Scene *scene, ListBase *targets, eAnimvizCalcRange range, bool restore)
 

Variables

static CLG_LogRef LOG = {"ed.anim.motion_paths"}
 

Function Documentation

◆ animviz_calc_motionpaths()

◆ animviz_depsgraph_build()

Depsgraph * animviz_depsgraph_build ( Main * bmain,
Scene * scene,
ViewLayer * view_layer,
ListBase * targets )

◆ animviz_get_object_motionpaths()

void animviz_get_object_motionpaths ( Object * ob,
ListBase * targets )

◆ animviz_motionpath_compute_range()

◆ animviz_target_settings_get()

static bAnimVizSettings * animviz_target_settings_get ( MPathTarget * mpt)
static

◆ motionpath_calculate_update_range()

◆ motionpath_check_can_use_keyframe_range()

static bool motionpath_check_can_use_keyframe_range ( MPathTarget * ,
AnimData * adt,
ListBase * fcurve_list )
static

Definition at line 282 of file anim_motion_paths.cc.

Referenced by motionpath_calculate_update_range().

◆ motionpath_free_free_tree_data()

static void motionpath_free_free_tree_data ( ListBase * targets)
static

Definition at line 346 of file anim_motion_paths.cc.

References ED_keylist_free(), and LISTBASE_FOREACH.

Referenced by animviz_calc_motionpaths().

◆ motionpath_get_global_framerange()

static void motionpath_get_global_framerange ( ListBase * targets,
int * r_sfra,
int * r_efra )
static

Definition at line 225 of file anim_motion_paths.cc.

References LISTBASE_FOREACH, max_ii(), and min_ii().

Referenced by animviz_calc_motionpaths().

◆ motionpath_get_next_keyframe()

static int motionpath_get_next_keyframe ( MPathTarget * mpt,
AnimKeylist * keylist,
int current_frame )
static

◆ motionpath_get_next_next_keyframe()

static int motionpath_get_next_next_keyframe ( MPathTarget * mpt,
AnimKeylist * keylist,
int current_frame )
static

Definition at line 274 of file anim_motion_paths.cc.

References motionpath_get_next_keyframe().

Referenced by motionpath_calculate_update_range().

◆ motionpath_get_prev_keyframe()

static int motionpath_get_prev_keyframe ( MPathTarget * mpt,
AnimKeylist * keylist,
int current_frame )
static

◆ motionpath_get_prev_prev_keyframe()

static int motionpath_get_prev_prev_keyframe ( MPathTarget * mpt,
AnimKeylist * keylist,
int current_frame )
static

Definition at line 251 of file anim_motion_paths.cc.

References motionpath_get_prev_keyframe().

Referenced by motionpath_calculate_update_range().

◆ motionpaths_calc_bake_targets()

◆ motionpaths_calc_update_scene()

static void motionpaths_calc_update_scene ( Depsgraph * depsgraph)
static

Variable Documentation

◆ LOG

CLG_LogRef LOG = {"ed.anim.motion_paths"}
static

Definition at line 42 of file anim_motion_paths.cc.

Referenced by animviz_calc_motionpaths().