Blender V2.61 - r43446
Classes | Defines | Typedefs | Functions | Variables

editarmature.c File Reference

#include <ctype.h>
#include <stdlib.h>
#include <stddef.h>
#include <string.h>
#include <math.h>
#include <float.h>
#include <assert.h>
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_constraint_types.h"
#include "DNA_meshdata_types.h"
#include "DNA_scene_types.h"
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "BLI_editVert.h"
#include "BLI_ghash.h"
#include "BKE_animsys.h"
#include "BKE_action.h"
#include "BKE_armature.h"
#include "BKE_constraint.h"
#include "BKE_context.h"
#include "BKE_deform.h"
#include "BKE_depsgraph.h"
#include "BKE_DerivedMesh.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
#include "BKE_main.h"
#include "BKE_object.h"
#include "BKE_report.h"
#include "BKE_subsurf.h"
#include "BKE_modifier.h"
#include "DNA_object_types.h"
#include "BIF_gl.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "ED_armature.h"
#include "ED_keyframing.h"
#include "ED_mesh.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_util.h"
#include "ED_view3d.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "armature_intern.h"
#include "meshlaplacian.h"

Go to the source code of this file.

Classes

struct  UndoArmature
struct  EditBonePoint

Defines

#define ARM_PAR_CONNECT   1
#define ARM_PAR_OFFSET   2

Typedefs

typedef struct UndoArmature UndoArmature
typedef struct EditBonePoint EditBonePoint

Functions

void ED_armature_sync_selection (ListBase *edbo)
void ED_armature_validate_active (struct bArmature *arm)
static void bone_free (bArmature *arm, EditBone *bone)
void ED_armature_edit_bone_remove (bArmature *arm, EditBone *exBone)
EditBoneED_armature_bone_get_mirrored (ListBase *edbo, EditBone *ebo)
static void armature_select_mirrored (bArmature *arm)
static void armature_tag_select_mirrored (bArmature *arm)
static void armature_tag_unselect (bArmature *arm)
EditBonemake_boneList (ListBase *edbo, ListBase *bones, EditBone *parent, Bone *actBone)
static void fix_bonelist_roll (ListBase *bonelist, ListBase *editbonelist)
void ED_armature_from_edit (Object *obedit)
void ED_armature_apply_transform (Object *ob, float mat[4][4])
void docenter_armature (Scene *scene, Object *ob, float cursor[3], int centermode, int around)
static EditBoneeditbone_name_exists (ListBase *edbo, const char *name)
static int editbone_unique_check (void *arg, const char *name)
void unique_editbone_name (ListBase *edbo, char *name, EditBone *bone)
static void applyarmature_fix_boneparents (Scene *scene, Object *armob)
static int apply_armature_pose2bones_exec (bContext *C, wmOperator *op)
void POSE_OT_armature_apply (wmOperatorType *ot)
static int pose_visual_transform_apply_exec (bContext *C, wmOperator *UNUSED(op))
void POSE_OT_visual_transform_apply (wmOperatorType *ot)
static void joined_armature_fix_links (Object *tarArm, Object *srcArm, bPoseChannel *pchan, EditBone *curbone)
int join_armature_exec (bContext *C, wmOperator *UNUSED(op))
static void separated_armature_fix_links (Object *origArm, Object *newArm)
static void separate_armature_bones (Object *ob, short sel)
static int separate_armature_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_separate (wmOperatorType *ot)
Boneget_indexed_bone (Object *ob, int index)
static void * get_bone_from_selectbuffer (Scene *scene, Base *base, unsigned int *buffer, short hits, short findunsel)
static void * get_nearest_bone (bContext *C, short findunsel, int x, int y)
static EditBoneeditbone_get_child (bArmature *arm, EditBone *pabone, short use_visibility)
static void selectconnected_posebonechildren (Object *ob, Bone *bone, int extend)
static int pose_select_connected_invoke (bContext *C, wmOperator *op, wmEvent *event)
static int pose_select_linked_poll (bContext *C)
void POSE_OT_select_linked (wmOperatorType *ot)
static int armature_select_linked_invoke (bContext *C, wmOperator *op, wmEvent *event)
static int armature_select_linked_poll (bContext *C)
void ARMATURE_OT_select_linked (wmOperatorType *ot)
static EditBoneget_nearest_editbonepoint (ViewContext *vc, const int mval[2], ListBase *edbo, int findunsel, int *selmask)
static int armature_delete_selected_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_delete (wmOperatorType *ot)
void ED_armature_deselect_all (Object *obedit, int toggle)
void ED_armature_deselect_all_visible (Object *obedit)
static int ebone_select_flag (EditBone *ebone)
int mouse_armature (bContext *C, const int mval[2], int extend)
void ED_armature_edit_free (struct Object *ob)
void ED_armature_to_edit (Object *ob)
float ED_rollBoneToVector (EditBone *bone, const float align_axis[3], const short axis_only)
static int armature_calc_roll_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_calculate_roll (wmOperatorType *ot)
static void undoBones_to_editBones (void *uarmv, void *armv)
static void * editBones_to_undoBones (void *armv)
static void free_undoBones (void *uarmv)
static void * get_armature_edit (bContext *C)
void undo_push_armature (bContext *C, const char *name)
EditBoneED_armature_edit_bone_add (bArmature *arm, const char *name)
void add_primitive_bone (Scene *scene, View3D *v3d, RegionView3D *rv3d)
static int armature_click_extrude_exec (bContext *C, wmOperator *UNUSED(op))
static int armature_click_extrude_invoke (bContext *C, wmOperator *op, wmEvent *event)
void ARMATURE_OT_click_extrude (wmOperatorType *ot)
static EditBoneadd_points_bone (Object *obedit, float head[], float tail[])
static EditBoneget_named_editbone (ListBase *edbo, char *name)
void preEditBoneDuplicate (ListBase *editbones)
void updateDuplicateSubtargetObjects (EditBone *dupBone, ListBase *editbones, Object *src_ob, Object *dst_ob)
void updateDuplicateSubtarget (EditBone *dupBone, ListBase *editbones, Object *ob)
EditBoneduplicateEditBoneObjects (EditBone *curBone, const char *name, ListBase *editbones, Object *src_ob, Object *dst_ob)
EditBoneduplicateEditBone (EditBone *curBone, const char *name, ListBase *editbones, Object *ob)
static int armature_duplicate_selected_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_duplicate (wmOperatorType *ot)
static void chains_find_tips (ListBase *edbo, ListBase *list)
static void fill_add_joint (EditBone *ebo, short eb_tail, ListBase *points)
static int armature_fill_bones_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_fill (wmOperatorType *ot)
static void bones_merge (Object *obedit, EditBone *start, EditBone *end, EditBone *endchild, ListBase *chains)
static int armature_merge_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_merge (wmOperatorType *ot)
static int armature_hide_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_hide (wmOperatorType *ot)
static int armature_reveal_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_reveal (wmOperatorType *ot)
static int armature_extrude_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_extrude (wmOperatorType *ot)
static int armature_bone_primitive_add_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_bone_primitive_add (wmOperatorType *ot)
static int armature_subdivide_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_subdivide (wmOperatorType *ot)
static int armature_switch_direction_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_switch_direction (wmOperatorType *ot)
static void bone_connect_to_existing_parent (EditBone *bone)
static void bone_connect_to_new_parent (ListBase *edbo, EditBone *selbone, EditBone *actbone, short mode)
static int armature_parent_set_exec (bContext *C, wmOperator *op)
static int armature_parent_set_invoke (bContext *C, wmOperator *UNUSED(op), wmEvent *UNUSED(event))
void ARMATURE_OT_parent_set (wmOperatorType *ot)
static void editbone_clear_parent (EditBone *ebone, int mode)
static int armature_parent_clear_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_parent_clear (wmOperatorType *ot)
static int armature_select_inverse_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_select_inverse (wmOperatorType *ot)
static int armature_de_select_all_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_select_all (wmOperatorType *ot)
static int armature_select_hierarchy_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_select_hierarchy (wmOperatorType *ot)
static void fix_connected_bone (EditBone *ebone)
static void fix_editbone_connected_children (ListBase *edbo, EditBone *ebone)
static void bone_align_to_bone (ListBase *edbo, EditBone *selbone, EditBone *actbone)
static int armature_align_bones_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_align (wmOperatorType *ot)
static int bone_looper (Object *ob, Bone *bone, void *data, int(*bone_func)(Object *, Bone *, void *))
int ED_do_pose_selectbuffer (Scene *scene, Base *base, unsigned int *buffer, short hits, short extend)
void ED_pose_deselectall (Object *ob, int test)
static int bone_skinnable_cb (Object *ob, Bone *bone, void *datap)
static int vgroup_add_unique_bone_cb (Object *ob, Bone *bone, void *UNUSED(ptr))
static int dgroup_skinnable_cb (Object *ob, Bone *bone, void *datap)
static void add_vgroups__mapFunc (void *userData, int index, float *co, float *UNUSED(no_f), short *UNUSED(no_s))
static void envelope_bone_weighting (Object *ob, Mesh *mesh, float(*verts)[3], int numbones, Bone **bonelist, bDeformGroup **dgrouplist, bDeformGroup **dgroupflip, float(*root)[3], float(*tip)[3], int *selected, float scale)
static void add_verts_to_dgroups (ReportList *reports, Scene *scene, Object *ob, Object *par, int heat, int mirror)
void create_vgroups_from_armature (ReportList *reports, Scene *scene, Object *ob, Object *par, int mode, int mirror)
static void pchan_clear_scale (bPoseChannel *pchan)
static void pchan_clear_loc (bPoseChannel *pchan)
static void pchan_clear_rot (bPoseChannel *pchan)
static void pchan_clear_transforms (bPoseChannel *pchan)
static int pose_clear_transform_generic_exec (bContext *C, wmOperator *op, void(*clear_func)(bPoseChannel *), const char default_ksName[])
static int pose_clear_scale_exec (bContext *C, wmOperator *op)
void POSE_OT_scale_clear (wmOperatorType *ot)
static int pose_clear_rot_exec (bContext *C, wmOperator *op)
void POSE_OT_rot_clear (wmOperatorType *ot)
static int pose_clear_loc_exec (bContext *C, wmOperator *op)
void POSE_OT_loc_clear (wmOperatorType *ot)
static int pose_clear_transforms_exec (bContext *C, wmOperator *op)
void POSE_OT_transforms_clear (wmOperatorType *ot)
static int pose_de_select_all_exec (bContext *C, wmOperator *op)
void POSE_OT_select_all (wmOperatorType *ot)
static int pose_select_parent_exec (bContext *C, wmOperator *UNUSED(op))
void POSE_OT_select_parent (wmOperatorType *ot)
static int hide_selected_pose_bone_cb (Object *ob, Bone *bone, void *UNUSED(ptr))
static int hide_unselected_pose_bone_cb (Object *ob, Bone *bone, void *UNUSED(ptr))
static int pose_hide_exec (bContext *C, wmOperator *op)
void POSE_OT_hide (wmOperatorType *ot)
static int show_pose_bone_cb (Object *ob, Bone *bone, void *UNUSED(ptr))
static int pose_reveal_exec (bContext *C, wmOperator *UNUSED(op))
void POSE_OT_reveal (wmOperatorType *ot)
static int bone_unique_check (void *arg, const char *name)
static void unique_bone_name (bArmature *arm, char *name)
static void constraint_bone_name_fix (Object *ob, ListBase *conlist, char *oldname, char *newname)
void ED_armature_bone_rename (bArmature *arm, const char *oldnamep, const char *newnamep)
static int armature_flip_names_exec (bContext *C, wmOperator *UNUSED(op))
void ARMATURE_OT_flip_names (wmOperatorType *ot)
static int armature_autoside_names_exec (bContext *C, wmOperator *op)
void ARMATURE_OT_autoside_names (wmOperatorType *ot)
void transform_armature_mirror_update (Object *obedit)

Variables

static EnumPropertyItem prop_calc_roll_types []
static EnumPropertyItem prop_editarm_make_parent_types []
static EnumPropertyItem prop_editarm_clear_parent_types []

Detailed Description

Definition in file editarmature.c.


Define Documentation

#define ARM_PAR_CONNECT   1

Definition at line 3705 of file editarmature.c.

Referenced by armature_parent_set_invoke(), and bone_connect_to_new_parent().

#define ARM_PAR_OFFSET   2

Definition at line 3706 of file editarmature.c.

Referenced by armature_parent_set_invoke().


Typedef Documentation

typedef struct EditBonePoint EditBonePoint
typedef struct UndoArmature UndoArmature

Function Documentation

static EditBone* add_points_bone ( Object obedit,
float  head[],
float  tail[] 
) [static]
void add_primitive_bone ( Scene scene,
View3D v3d,
RegionView3D rv3d 
)
static void add_verts_to_dgroups ( ReportList reports,
Scene scene,
Object ob,
Object par,
int  heat,
int  mirror 
) [static]
static void add_vgroups__mapFunc ( void *  userData,
int  index,
float *  co,
float *  UNUSEDno_f,
short *  UNUSEDno_s 
) [static]

Definition at line 4508 of file editarmature.c.

References copy_v3_v3().

Referenced by add_verts_to_dgroups().

static int apply_armature_pose2bones_exec ( bContext C,
wmOperator op 
) [static]
static void applyarmature_fix_boneparents ( Scene scene,
Object armob 
) [static]
static int armature_align_bones_exec ( bContext C,
wmOperator op 
) [static]
static int armature_autoside_names_exec ( bContext C,
wmOperator op 
) [static]
static int armature_bone_primitive_add_exec ( bContext C,
wmOperator op 
) [static]
static int armature_calc_roll_exec ( bContext C,
wmOperator op 
) [static]
static int armature_click_extrude_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_click_extrude_invoke ( bContext C,
wmOperator op,
wmEvent event 
) [static]
static int armature_de_select_all_exec ( bContext C,
wmOperator op 
) [static]
static int armature_delete_selected_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_duplicate_selected_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_extrude_exec ( bContext C,
wmOperator op 
) [static]
static int armature_fill_bones_exec ( bContext C,
wmOperator op 
) [static]
static int armature_flip_names_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_hide_exec ( bContext C,
wmOperator op 
) [static]
static int armature_merge_exec ( bContext C,
wmOperator op 
) [static]
void ARMATURE_OT_align ( wmOperatorType ot)
void ARMATURE_OT_autoside_names ( wmOperatorType ot)
void ARMATURE_OT_bone_primitive_add ( wmOperatorType ot)
void ARMATURE_OT_calculate_roll ( wmOperatorType ot)
void ARMATURE_OT_click_extrude ( wmOperatorType ot)
void ARMATURE_OT_delete ( wmOperatorType ot)
void ARMATURE_OT_duplicate ( wmOperatorType ot)
void ARMATURE_OT_extrude ( wmOperatorType ot)
void ARMATURE_OT_fill ( wmOperatorType ot)
void ARMATURE_OT_flip_names ( wmOperatorType ot)
void ARMATURE_OT_hide ( wmOperatorType ot)
void ARMATURE_OT_merge ( wmOperatorType ot)
void ARMATURE_OT_parent_clear ( wmOperatorType ot)
void ARMATURE_OT_parent_set ( wmOperatorType ot)
void ARMATURE_OT_reveal ( wmOperatorType ot)
void ARMATURE_OT_select_all ( wmOperatorType ot)
void ARMATURE_OT_select_hierarchy ( wmOperatorType ot)
void ARMATURE_OT_select_inverse ( wmOperatorType ot)
void ARMATURE_OT_select_linked ( wmOperatorType ot)
void ARMATURE_OT_separate ( wmOperatorType ot)
void ARMATURE_OT_subdivide ( wmOperatorType ot)
void ARMATURE_OT_switch_direction ( wmOperatorType ot)
static int armature_parent_clear_exec ( bContext C,
wmOperator op 
) [static]
static int armature_parent_set_exec ( bContext C,
wmOperator op 
) [static]
static int armature_parent_set_invoke ( bContext C,
wmOperator UNUSEDop,
wmEvent UNUSEDevent 
) [static]
static int armature_reveal_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_select_hierarchy_exec ( bContext C,
wmOperator op 
) [static]
static int armature_select_inverse_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int armature_select_linked_invoke ( bContext C,
wmOperator op,
wmEvent event 
) [static]
static int armature_select_linked_poll ( bContext C) [static]

Definition at line 1556 of file editarmature.c.

References ED_operator_editarmature(), and ED_operator_view3d_active().

Referenced by ARMATURE_OT_select_linked().

static void armature_select_mirrored ( bArmature arm) [static]
static int armature_subdivide_exec ( bContext C,
wmOperator op 
) [static]
static int armature_switch_direction_exec ( bContext C,
wmOperator UNUSEDop 
) [static]

Definition at line 3612 of file editarmature.c.

References CTX_data_edit_object(), Object::data, and NULL.

Referenced by ARMATURE_OT_switch_direction().

static void armature_tag_select_mirrored ( bArmature arm) [static]
static void armature_tag_unselect ( bArmature arm) [static]
static void bone_align_to_bone ( ListBase edbo,
EditBone selbone,
EditBone actbone 
) [static]
static void bone_connect_to_existing_parent ( EditBone bone) [static]
static void bone_connect_to_new_parent ( ListBase edbo,
EditBone selbone,
EditBone actbone,
short  mode 
) [static]
static void bone_free ( bArmature arm,
EditBone bone 
) [static]
static int bone_looper ( Object ob,
Bone bone,
void *  data,
int(*)(Object *, Bone *, void *)  bone_func 
) [static]
static int bone_skinnable_cb ( Object ob,
Bone bone,
void *  datap 
) [static]
static int bone_unique_check ( void *  arg,
const char *  name 
) [static]

Definition at line 5250 of file editarmature.c.

References get_named_bone(), and NULL.

Referenced by unique_bone_name().

static void bones_merge ( Object obedit,
EditBone start,
EditBone end,
EditBone endchild,
ListBase chains 
) [static]
static void chains_find_tips ( ListBase edbo,
ListBase list 
) [static]
static void constraint_bone_name_fix ( Object ob,
ListBase conlist,
char *  oldname,
char *  newname 
) [static]
void create_vgroups_from_armature ( ReportList reports,
Scene scene,
Object ob,
Object par,
int  mode,
int  mirror 
)
static int dgroup_skinnable_cb ( Object ob,
Bone bone,
void *  datap 
) [static]
void docenter_armature ( Scene scene,
Object ob,
float  cursor[3],
int  centermode,
int  around 
)
EditBone* duplicateEditBone ( EditBone curBone,
const char *  name,
ListBase editbones,
Object ob 
) [read]

Definition at line 2570 of file editarmature.c.

References duplicateEditBoneObjects().

Referenced by armature_duplicate_selected_exec().

EditBone* duplicateEditBoneObjects ( EditBone curBone,
const char *  name,
ListBase editbones,
Object src_ob,
Object dst_ob 
) [read]
static int ebone_select_flag ( EditBone ebone) [static]
void ED_armature_apply_transform ( Object ob,
float  mat[4][4] 
)
EditBone* ED_armature_bone_get_mirrored ( ListBase edbo,
EditBone ebo 
)
void ED_armature_bone_rename ( bArmature arm,
const char *  oldnamep,
const char *  newnamep 
)
void ED_armature_deselect_all ( Object obedit,
int  toggle 
)
void ED_armature_deselect_all_visible ( Object obedit)
EditBone* ED_armature_edit_bone_add ( bArmature arm,
const char *  name 
) [read]
void ED_armature_edit_bone_remove ( bArmature arm,
EditBone exBone 
)
void ED_armature_edit_free ( struct Object ob)
void ED_armature_from_edit ( Object obedit)
void ED_armature_sync_selection ( ListBase edbo)
void ED_armature_to_edit ( Object ob)
void ED_armature_validate_active ( struct bArmature arm)
int ED_do_pose_selectbuffer ( Scene scene,
Base base,
unsigned int *  buffer,
short  hits,
short  extend 
)
void ED_pose_deselectall ( Object ob,
int  test 
)
float ED_rollBoneToVector ( EditBone bone,
const float  align_axis[3],
const short  axis_only 
)
static void editbone_clear_parent ( EditBone ebone,
int  mode 
) [static]

Definition at line 3887 of file editarmature.c.

References BONE_CONNECTED, BONE_TIPSEL, EditBone::flag, NULL, and EditBone::parent.

Referenced by armature_parent_clear_exec().

static EditBone* editbone_get_child ( bArmature arm,
EditBone pabone,
short  use_visibility 
) [static]
static EditBone* editbone_name_exists ( ListBase edbo,
const char *  name 
) [static]
static int editbone_unique_check ( void *  arg,
const char *  name 
) [static]

Definition at line 606 of file editarmature.c.

References data, and editbone_name_exists().

Referenced by unique_editbone_name().

static void* editBones_to_undoBones ( void *  armv) [static]
static void envelope_bone_weighting ( Object ob,
Mesh mesh,
float(*)  verts[3],
int  numbones,
Bone **  bonelist,
bDeformGroup **  dgrouplist,
bDeformGroup **  dgroupflip,
float(*)  root[3],
float(*)  tip[3],
int *  selected,
float  scale 
) [static]
static void fill_add_joint ( EditBone ebo,
short  eb_tail,
ListBase points 
) [static]
static void fix_bonelist_roll ( ListBase bonelist,
ListBase editbonelist 
) [static]
static void fix_connected_bone ( EditBone ebone) [static]
static void fix_editbone_connected_children ( ListBase edbo,
EditBone ebone 
) [static]
static void free_undoBones ( void *  uarmv) [static]

Definition at line 2191 of file editarmature.c.

References BLI_freelistN(), UndoArmature::lb, and MEM_freeN().

Referenced by undo_push_armature().

static void* get_armature_edit ( bContext C) [static]

Definition at line 2199 of file editarmature.c.

References CTX_data_edit_object(), Object::data, NULL, OB_ARMATURE, and Object::type.

Referenced by undo_push_armature().

static void* get_bone_from_selectbuffer ( Scene scene,
Base base,
unsigned int *  buffer,
short  hits,
short  findunsel 
) [static]
Bone* get_indexed_bone ( Object ob,
int  index 
) [read]
static EditBone* get_named_editbone ( ListBase edbo,
char *  name 
) [static]

Definition at line 2440 of file editarmature.c.

References ListBase::first, EditBone::name, EditBone::next, and NULL.

Referenced by updateDuplicateSubtargetObjects().

static void* get_nearest_bone ( bContext C,
short  findunsel,
int  x,
int  y 
) [static]
static EditBone* get_nearest_editbonepoint ( ViewContext vc,
const int  mval[2],
ListBase edbo,
int  findunsel,
int *  selmask 
) [static]
static int hide_selected_pose_bone_cb ( Object ob,
Bone bone,
void *  UNUSEDptr 
) [static]
static int hide_unselected_pose_bone_cb ( Object ob,
Bone bone,
void *  UNUSEDptr 
) [static]
int join_armature_exec ( bContext C,
wmOperator UNUSEDop 
)
static void joined_armature_fix_links ( Object tarArm,
Object srcArm,
bPoseChannel pchan,
EditBone curbone 
) [static]
EditBone* make_boneList ( ListBase edbo,
ListBase bones,
EditBone parent,
Bone actBone 
)
int mouse_armature ( bContext C,
const int  mval[2],
int  extend 
)
static void pchan_clear_loc ( bPoseChannel pchan) [static]
static void pchan_clear_rot ( bPoseChannel pchan) [static]
static void pchan_clear_scale ( bPoseChannel pchan) [static]
static void pchan_clear_transforms ( bPoseChannel pchan) [static]

Definition at line 4880 of file editarmature.c.

References pchan_clear_loc(), pchan_clear_rot(), and pchan_clear_scale().

Referenced by pose_clear_transforms_exec().

static int pose_clear_loc_exec ( bContext C,
wmOperator op 
) [static]
static int pose_clear_rot_exec ( bContext C,
wmOperator op 
) [static]
static int pose_clear_scale_exec ( bContext C,
wmOperator op 
) [static]
static int pose_clear_transform_generic_exec ( bContext C,
wmOperator op,
void(*)(bPoseChannel *)  clear_func,
const char  default_ksName[] 
) [static]
static int pose_clear_transforms_exec ( bContext C,
wmOperator op 
) [static]
static int pose_de_select_all_exec ( bContext C,
wmOperator op 
) [static]
static int pose_hide_exec ( bContext C,
wmOperator op 
) [static]
void POSE_OT_armature_apply ( wmOperatorType ot)
void POSE_OT_hide ( wmOperatorType ot)
void POSE_OT_loc_clear ( wmOperatorType ot)
void POSE_OT_reveal ( wmOperatorType ot)
void POSE_OT_rot_clear ( wmOperatorType ot)
void POSE_OT_scale_clear ( wmOperatorType ot)
void POSE_OT_select_all ( wmOperatorType ot)
void POSE_OT_select_linked ( wmOperatorType ot)
void POSE_OT_select_parent ( wmOperatorType ot)
void POSE_OT_transforms_clear ( wmOperatorType ot)
void POSE_OT_visual_transform_apply ( wmOperatorType ot)
static int pose_reveal_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int pose_select_connected_invoke ( bContext C,
wmOperator op,
wmEvent event 
) [static]
static int pose_select_linked_poll ( bContext C) [static]

Definition at line 1462 of file editarmature.c.

References ED_operator_posemode(), and ED_operator_view3d_active().

Referenced by POSE_OT_select_linked().

static int pose_select_parent_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static int pose_visual_transform_apply_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
void preEditBoneDuplicate ( ListBase editbones)

Definition at line 2456 of file editarmature.c.

References ListBase::first, EditBone::next, NULL, and EditBone::temp.

Referenced by armature_duplicate_selected_exec(), and cloneRigGraph().

static void selectconnected_posebonechildren ( Object ob,
Bone bone,
int  extend 
) [static]
static void separate_armature_bones ( Object ob,
short  sel 
) [static]
static int separate_armature_exec ( bContext C,
wmOperator UNUSEDop 
) [static]
static void separated_armature_fix_links ( Object origArm,
Object newArm 
) [static]
static int show_pose_bone_cb ( Object ob,
Bone bone,
void *  UNUSEDptr 
) [static]

Definition at line 5205 of file editarmature.c.

References BONE_HIDDEN_P, BONE_SELECTED, Object::data, Bone::flag, Bone::layer, and bArmature::layer.

Referenced by pose_reveal_exec().

void transform_armature_mirror_update ( Object obedit)
void undo_push_armature ( bContext C,
const char *  name 
)
static void undoBones_to_editBones ( void *  uarmv,
void *  armv 
) [static]
static void unique_bone_name ( bArmature arm,
char *  name 
) [static]

Definition at line 5255 of file editarmature.c.

References BLI_uniquename_cb(), bone_unique_check(), and NULL.

Referenced by ED_armature_bone_rename().

void unique_editbone_name ( ListBase edbo,
char *  name,
EditBone bone 
)
void updateDuplicateSubtarget ( EditBone dupBone,
ListBase editbones,
Object ob 
)

Definition at line 2520 of file editarmature.c.

References updateDuplicateSubtargetObjects().

Referenced by armature_duplicate_selected_exec().

void updateDuplicateSubtargetObjects ( EditBone dupBone,
ListBase editbones,
Object src_ob,
Object dst_ob 
)
static int vgroup_add_unique_bone_cb ( Object ob,
Bone bone,
void *  UNUSEDptr 
) [static]

Variable Documentation

Initial value:
 {
    {0, "X", 0, "X Axis", ""},
    {1, "Y", 0, "Y Axis", ""},
    {2, "Z", 0, "Z Axis", ""},
    {5, "ACTIVE", 0, "Active Bone", ""},
    {6, "VIEW", 0, "View Axis", ""},
    {7, "CURSOR", 0, "Cursor", ""},
    {0, NULL, 0, NULL, NULL}
}

Definition at line 1997 of file editarmature.c.

Initial value:
 {
    {1, "CLEAR", 0, "Clear Parent", ""},
    {2, "DISCONNECT", 0, "Disconnect Bone", ""},
    {0, NULL, 0, NULL, NULL}
}

Definition at line 3881 of file editarmature.c.

Initial value:
 {
    {ARM_PAR_CONNECT, "CONNECTED", 0, "Connected", ""},
    {ARM_PAR_OFFSET, "OFFSET", 0, "Keep Offset", ""},
    {0, NULL, 0, NULL, NULL}
}

Definition at line 3764 of file editarmature.c.