Blender V2.61 - r43446
Functions

transform_orientations.c File Reference

#include <string.h>
#include <ctype.h>
#include "MEM_guardedalloc.h"
#include "DNA_armature_types.h"
#include "DNA_curve_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_view3d_types.h"
#include "BKE_armature.h"
#include "BKE_curve.h"
#include "BKE_context.h"
#include "BKE_report.h"
#include "BLI_math.h"
#include "BLI_blenlib.h"
#include "BLI_editVert.h"
#include "BLI_utildefines.h"
#include "BLF_translation.h"
#include "ED_armature.h"
#include "ED_mesh.h"
#include "RNA_define.h"
#include "UI_interface.h"
#include "transform.h"

Go to the source code of this file.

Functions

void BIF_clearTransformOrientation (bContext *C)
static TransformOrientationfindOrientationName (ListBase *lb, const char *name)
static int uniqueOrientationNameCheck (void *arg, const char *name)
static void uniqueOrientationName (ListBase *lb, char *name)
void BIF_createTransformOrientation (bContext *C, ReportList *reports, char *name, int use, int overwrite)
TransformOrientationcreateObjectSpace (bContext *C, ReportList *UNUSED(reports), char *name, int overwrite)
TransformOrientationcreateBoneSpace (bContext *C, ReportList *reports, char *name, int overwrite)
TransformOrientationcreateMeshSpace (bContext *C, ReportList *reports, char *name, int overwrite)
int createSpaceNormal (float mat[3][3], float normal[3])
int createSpaceNormalTangent (float mat[3][3], float normal[3], float tangent[3])
TransformOrientationaddMatrixSpace (bContext *C, float mat[3][3], char name[], int overwrite)
void BIF_removeTransformOrientation (bContext *C, TransformOrientation *target)
void BIF_removeTransformOrientationIndex (bContext *C, int index)
void BIF_selectTransformOrientation (bContext *C, TransformOrientation *target)
void BIF_selectTransformOrientationValue (bContext *C, int orientation)
EnumPropertyItemBIF_enumTransformOrientation (bContext *C)
const char * BIF_menustringTransformOrientation (const bContext *C, const char *title)
int BIF_countTransformOrientation (const bContext *C)
void applyTransformOrientation (const bContext *C, float mat[3][3], char *name)
static int count_bone_select (bArmature *arm, ListBase *lb, int do_it)
void initTransformOrientation (bContext *C, TransInfo *t)
int getTransformOrientation (const bContext *C, float normal[3], float plane[3], int activeOnly)
void ED_getTransformOrientationMatrix (const bContext *C, float orientation_mat[][3], int activeOnly)

Detailed Description

Definition in file transform_orientations.c.


Function Documentation

TransformOrientation* addMatrixSpace ( bContext C,
float  mat[3][3],
char  name[],
int  overwrite 
) [read]
void applyTransformOrientation ( const bContext C,
float  mat[3][3],
char *  name 
)
void BIF_clearTransformOrientation ( bContext C)
int BIF_countTransformOrientation ( const bContext C)
void BIF_createTransformOrientation ( bContext C,
ReportList reports,
char *  name,
int  use,
int  overwrite 
)
EnumPropertyItem* BIF_enumTransformOrientation ( bContext C) [read]
const char* BIF_menustringTransformOrientation ( const bContext C,
const char *  title 
)
void BIF_removeTransformOrientation ( bContext C,
TransformOrientation target 
)
void BIF_removeTransformOrientationIndex ( bContext C,
int  index 
)
void BIF_selectTransformOrientation ( bContext C,
TransformOrientation target 
)
void BIF_selectTransformOrientationValue ( bContext C,
int  orientation 
)

Definition at line 368 of file transform_orientations.c.

References CTX_wm_view3d(), and View3D::twmode.

Referenced by select_orientation_exec().

static int count_bone_select ( bArmature arm,
ListBase lb,
int  do_it 
) [static]
TransformOrientation* createBoneSpace ( bContext C,
ReportList reports,
char *  name,
int  overwrite 
) [read]
TransformOrientation* createMeshSpace ( bContext C,
ReportList reports,
char *  name,
int  overwrite 
) [read]
TransformOrientation* createObjectSpace ( bContext C,
ReportList UNUSEDreports,
char *  name,
int  overwrite 
)
int createSpaceNormal ( float  mat[3][3],
float  normal[3] 
)
int createSpaceNormalTangent ( float  mat[3][3],
float  normal[3],
float  tangent[3] 
)
void ED_getTransformOrientationMatrix ( const bContext C,
float  orientation_mat[][3],
int  activeOnly 
)
static TransformOrientation* findOrientationName ( ListBase lb,
const char *  name 
) [static]
int getTransformOrientation ( const bContext C,
float  normal[3],
float  plane[3],
int  activeOnly 
)

Definition at line 560 of file transform_orientations.c.

References add_v3_v3(), Scene::base, Nurb::bezt, bPoseChannel::bone, BONE_SELECTED, BONE_TRANSFORM, bArmature::bonebase, bPose::chanbase, EditVert::co, copy_m3_m4(), copy_v3_v3(), count_bone_select(), cross_v3_v3v3(), CTX_data_edit_object(), CTX_data_scene(), CTX_wm_view3d(), CU_BEZIER, curve_editnurbs(), Object::data, bArmature::edbo, EditMesh::edges, Mesh::edit_mesh, EDITEDGE, editelems, EDITFACE, EDITVERT, ELEM, EM_editselection_normal(), EM_editselection_plane(), EM_get_actSelection(), EditEdge::f, EditVert::f, EditFace::f, BezTriple::f1, BezTriple::f2, BezTriple::f3, EditMesh::faces, ListBase::first, Object::flag, Bone::flag, EditBone::flag, MetaElem::flag, EditBone::head, invert_m3_m3(), EditBone::layer, bArmature::layer, Object::mode, mul_m3_v3(), mul_mat3_m4_v3(), EditFace::n, negate_v3(), negate_v3_v3(), Base::next, bPoseChannel::next, EditBone::next, MetaElem::next, Nurb::next, EditEdge::next, EditVert::next, EditFace::next, EditVert::no, normalize_v3(), NULL, OB_ARMATURE, OB_CURVE, OB_MBALL, OB_MESH, OB_MODE_ALL_PAINT, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE, OB_SURF, OBACT, Base::object, Object::obmat, ORIENTATION_EDGE, ORIENTATION_FACE, ORIENTATION_NONE, ORIENTATION_NORMAL, ORIENTATION_VERT, Nurb::pntsu, Object::pose, bPoseChannel::pose_mat, MetaElem::quat, quat_to_mat4(), EditBone::roll, SELECT, sub_v3_v3v3(), EditBone::tail, TESTBASELIB, EditMesh::totedgesel, EditMesh::totfacesel, EditMesh::totvertsel, transpose_m3(), Nurb::type, EditSelection::type, Object::type, EditEdge::v1, EditFace::v1, EditEdge::v2, EditFace::v2, BezTriple::vec, vec_roll_to_mat3(), and EditMesh::verts.

void initTransformOrientation ( bContext C,
TransInfo t 
)
static void uniqueOrientationName ( ListBase lb,
char *  name 
) [static]

Definition at line 100 of file transform_orientations.c.

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

Referenced by addMatrixSpace().

static int uniqueOrientationNameCheck ( void *  arg,
const char *  name 
) [static]

Definition at line 95 of file transform_orientations.c.

References findOrientationName(), and NULL.

Referenced by uniqueOrientationName().