Blender  V3.3
Functions
pose_utils.c File Reference
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BKE_action.h"
#include "BKE_anim_data.h"
#include "BKE_idprop.h"
#include "BKE_layer.h"
#include "BKE_object.h"
#include "BKE_context.h"
#include "DEG_depsgraph.h"
#include "RNA_access.h"
#include "RNA_path.h"
#include "RNA_prototypes.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_armature.h"
#include "ED_keyframing.h"
#include "armature_intern.h"

Go to the source code of this file.

Functions

static void fcurves_to_pchan_links_get (ListBase *pfLinks, Object *ob, bAction *act, bPoseChannel *pchan)
 
ObjectposeAnim_object_get (Object *ob_)
 
void poseAnim_mapping_get (bContext *C, ListBase *pfLinks)
 
void poseAnim_mapping_free (ListBase *pfLinks)
 
void poseAnim_mapping_refresh (bContext *C, Scene *UNUSED(scene), Object *ob)
 
void poseAnim_mapping_reset (ListBase *pfLinks)
 
void poseAnim_mapping_autoKeyframe (bContext *C, Scene *scene, ListBase *pfLinks, float cframe)
 
LinkDataposeAnim_mapping_getNextFCurve (ListBase *fcuLinks, LinkData *prev, const char *path)
 

Function Documentation

◆ fcurves_to_pchan_links_get()

static void fcurves_to_pchan_links_get ( ListBase pfLinks,
Object ob,
bAction act,
bPoseChannel pchan 
)
static

◆ poseAnim_mapping_autoKeyframe()

void poseAnim_mapping_autoKeyframe ( struct bContext C,
struct Scene scene,
ListBase pfLinks,
float  cframe 
)

◆ poseAnim_mapping_free()

void poseAnim_mapping_free ( ListBase pfLinks)

◆ poseAnim_mapping_get()

void poseAnim_mapping_get ( struct bContext C,
ListBase pfLinks 
)

Get sets of F-Curves providing transforms for the bones in the Pose.

Definition at line 130 of file pose_utils.c.

References AnimData::action, Object::adt, BLI_listbase_is_empty(), C, CTX_DATA_BEGIN_WITH_ID, CTX_DATA_END, fcurves_to_pchan_links_get(), NULL, and poseAnim_object_get().

Referenced by pose_propagate_exec(), and pose_slide_init().

◆ poseAnim_mapping_getNextFCurve()

LinkData* poseAnim_mapping_getNextFCurve ( ListBase fcuLinks,
LinkData prev,
const char *  path 
)

Find the next F-Curve for a PoseChannel with matching path...

  • path is not just the pfl rna_path, since that path doesn't have property info yet.

Definition at line 316 of file pose_utils.c.

References LinkData::data, ListBase::first, if(), blender::meshintersect::SymEdge< Arith_t >::next, LinkData::next, NULL, blender::meshintersect::prev(), FCurve::rna_path, and STREQ.

Referenced by pose_slide_apply_quat(), and pose_slide_apply_vec3().

◆ poseAnim_mapping_refresh()

void poseAnim_mapping_refresh ( bContext C,
Scene UNUSEDscene,
Object ob 
)

◆ poseAnim_mapping_reset()

void poseAnim_mapping_reset ( ListBase pfLinks)

◆ poseAnim_object_get()

Object* poseAnim_object_get ( struct Object ob_)

Returns a valid pose armature for this object, else returns NULL.

Definition at line 121 of file pose_utils.c.

References AnimData::action, Object::adt, BKE_object_pose_armature_get(), Object::data, ELEM, and NULL.

Referenced by pose_slide_init(), poseAnim_mapping_autoKeyframe(), and poseAnim_mapping_get().