Blender V4.3
pose_lib_2.cc File Reference
#include <cmath>
#include <cstring>
#include "AS_asset_representation.hh"
#include "MEM_guardedalloc.h"
#include "BLI_string.h"
#include "BLT_translation.hh"
#include "DNA_armature_types.h"
#include "BKE_action.hh"
#include "BKE_anim_data.hh"
#include "BKE_animsys.h"
#include "BKE_armature.hh"
#include "BKE_context.hh"
#include "BKE_lib_id.hh"
#include "BKE_object.hh"
#include "BKE_pose_backup.h"
#include "BKE_report.hh"
#include "DEG_depsgraph.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "RNA_prototypes.hh"
#include "WM_api.hh"
#include "WM_types.hh"
#include "UI_interface.hh"
#include "ED_asset.hh"
#include "ED_keyframing.hh"
#include "ED_screen.hh"
#include "ED_util.hh"
#include "ANIM_action.hh"
#include "ANIM_action_legacy.hh"
#include "ANIM_bone_collections.hh"
#include "ANIM_keyframing.hh"
#include "ANIM_keyingsets.hh"
#include "ANIM_pose.hh"
#include "armature_intern.hh"

Go to the source code of this file.

Classes

struct  PoseBlendData
 

Enumerations

enum  ePoseBlendState {
  POSE_BLEND_INIT , POSE_BLEND_BLENDING , POSE_BLEND_ORIGINAL , POSE_BLEND_CONFIRM ,
  POSE_BLEND_CANCEL
}
 

Functions

static bActionposelib_action_to_blend (PoseBlendData *pbd)
 
static void poselib_backup_posecopy (PoseBlendData *pbd)
 
static void poselib_keytag_pose (bContext *C, Scene *scene, PoseBlendData *pbd)
 
static void poselib_blend_apply (bContext *C, wmOperator *op)
 
static void poselib_blend_set_factor (PoseBlendData *pbd, const float new_factor)
 
static void poselib_toggle_flipped (PoseBlendData *pbd)
 
static int poselib_blend_handle_event (bContext *, wmOperator *op, const wmEvent *event)
 
static Objectget_poselib_object (bContext *C)
 
static void poselib_tempload_exit (PoseBlendData *pbd)
 
static bActionposelib_blend_init_get_action (bContext *C, wmOperator *op)
 
static bActionflip_pose (bContext *C, Object *ob, bAction *action)
 
static bool poselib_blend_init_data (bContext *C, wmOperator *op, const wmEvent *event)
 
static void poselib_blend_cleanup (bContext *C, wmOperator *op)
 
static void poselib_blend_free (wmOperator *op)
 
static int poselib_blend_exit (bContext *C, wmOperator *op)
 
static void poselib_blend_cancel (bContext *C, wmOperator *op)
 
static int poselib_blend_modal (bContext *C, wmOperator *op, const wmEvent *event)
 
static int poselib_blend_invoke (bContext *C, wmOperator *op, const wmEvent *event)
 
static int poselib_blend_exec (bContext *C, wmOperator *op)
 
static bool poselib_asset_in_context (bContext *C)
 
static bool poselib_blend_poll (bContext *C)
 
void POSELIB_OT_apply_pose_asset (wmOperatorType *ot)
 
void POSELIB_OT_blend_pose_asset (wmOperatorType *ot)
 

Enumeration Type Documentation

◆ ePoseBlendState

Enumerator
POSE_BLEND_INIT 
POSE_BLEND_BLENDING 
POSE_BLEND_ORIGINAL 
POSE_BLEND_CONFIRM 
POSE_BLEND_CANCEL 

Definition at line 57 of file pose_lib_2.cc.

Function Documentation

◆ flip_pose()

◆ get_poselib_object()

static Object * get_poselib_object ( bContext * C)
static

◆ poselib_action_to_blend()

static bAction * poselib_action_to_blend ( PoseBlendData * pbd)
static

Return the bAction that should be blended. This is either pbd->act or pbd->act_flipped, depending on is_flipped.

Definition at line 102 of file pose_lib_2.cc.

References PoseBlendData::act, PoseBlendData::act_flipped, and PoseBlendData::is_flipped.

Referenced by poselib_backup_posecopy(), poselib_blend_apply(), and poselib_keytag_pose().

◆ poselib_asset_in_context()

static bool poselib_asset_in_context ( bContext * C)
static

Definition at line 567 of file pose_lib_2.cc.

References CTX_wm_asset(), and ID_AC.

Referenced by poselib_blend_poll().

◆ poselib_backup_posecopy()

◆ poselib_blend_apply()

◆ poselib_blend_cancel()

static void poselib_blend_cancel ( bContext * C,
wmOperator * op )
static

◆ poselib_blend_cleanup()

◆ poselib_blend_exec()

◆ poselib_blend_exit()

◆ poselib_blend_free()

◆ poselib_blend_handle_event()

◆ poselib_blend_init_data()

◆ poselib_blend_init_get_action()

static bAction * poselib_blend_init_get_action ( bContext * C,
wmOperator * op )
static

◆ poselib_blend_invoke()

◆ poselib_blend_modal()

◆ poselib_blend_poll()

static bool poselib_blend_poll ( bContext * C)
static

◆ poselib_blend_set_factor()

static void poselib_blend_set_factor ( PoseBlendData * pbd,
const float new_factor )
static

Definition at line 207 of file pose_lib_2.cc.

References PoseBlendData::blend_factor, and PoseBlendData::needs_redraw.

Referenced by poselib_blend_handle_event().

◆ poselib_keytag_pose()

◆ POSELIB_OT_apply_pose_asset()

◆ POSELIB_OT_blend_pose_asset()

◆ poselib_tempload_exit()

static void poselib_tempload_exit ( PoseBlendData * pbd)
static

Definition at line 297 of file pose_lib_2.cc.

References PoseBlendData::temp_id_consumer.

Referenced by poselib_blend_free().

◆ poselib_toggle_flipped()