Blender V5.0
DNA_constraint_types.h File Reference
#include "DNA_ID.h"
#include "DNA_defs.h"
#include "DNA_listBase.h"

Go to the source code of this file.

Classes

struct  bConstraint
struct  bConstraintTarget
struct  bKinematicConstraint
struct  bSplineIKConstraint
struct  bArmatureConstraint
struct  bTrackToConstraint
struct  bRotateLikeConstraint
struct  bLocateLikeConstraint
struct  bSizeLikeConstraint
struct  bSameVolumeConstraint
struct  bTransLikeConstraint
struct  bMinMaxConstraint
struct  bActionConstraint
struct  bLockTrackConstraint
struct  bDampTrackConstraint
struct  bFollowPathConstraint
struct  bStretchToConstraint
struct  bRigidBodyJointConstraint
struct  bClampToConstraint
struct  bChildOfConstraint
struct  bTransformConstraint
struct  bPivotConstraint
struct  bLocLimitConstraint
struct  bRotLimitConstraint
struct  bSizeLimitConstraint
struct  bDistLimitConstraint
struct  bShrinkwrapConstraint
struct  bFollowTrackConstraint
struct  bCameraSolverConstraint
struct  bObjectSolverConstraint
struct  bTransformCacheConstraint
struct  bGeometryAttributeConstraint

Macros

#define CON_SHRINKWRAP_PROJECT_CULL_MASK   (CON_SHRINKWRAP_PROJECT_CULL_FRONTFACE | CON_SHRINKWRAP_PROJECT_CULL_BACKFACE)

Typedefs

typedef struct bConstraint bConstraint
typedef struct bConstraintTarget bConstraintTarget
typedef enum eConstraintTargetFlag eConstraintTargetFlag
typedef enum eConstraintObType eConstraintObType
typedef struct bKinematicConstraint bKinematicConstraint
typedef enum eConstraint_IK_Type eConstraint_IK_Type
typedef struct bSplineIKConstraint bSplineIKConstraint
typedef struct bArmatureConstraint bArmatureConstraint
typedef struct bTrackToConstraint bTrackToConstraint
typedef struct bRotateLikeConstraint bRotateLikeConstraint
typedef struct bLocateLikeConstraint bLocateLikeConstraint
typedef struct bSizeLikeConstraint bSizeLikeConstraint
typedef struct bSameVolumeConstraint bSameVolumeConstraint
typedef struct bTransLikeConstraint bTransLikeConstraint
typedef struct bMinMaxConstraint bMinMaxConstraint
typedef struct bActionConstraint bActionConstraint
typedef struct bLockTrackConstraint bLockTrackConstraint
typedef struct bDampTrackConstraint bDampTrackConstraint
typedef struct bFollowPathConstraint bFollowPathConstraint
typedef struct bStretchToConstraint bStretchToConstraint
typedef struct bRigidBodyJointConstraint bRigidBodyJointConstraint
typedef struct bClampToConstraint bClampToConstraint
typedef struct bChildOfConstraint bChildOfConstraint
typedef struct bTransformConstraint bTransformConstraint
typedef struct bPivotConstraint bPivotConstraint
typedef struct bLocLimitConstraint bLocLimitConstraint
typedef struct bRotLimitConstraint bRotLimitConstraint
typedef struct bSizeLimitConstraint bSizeLimitConstraint
typedef struct bDistLimitConstraint bDistLimitConstraint
typedef struct bShrinkwrapConstraint bShrinkwrapConstraint
typedef struct bFollowTrackConstraint bFollowTrackConstraint
typedef struct bCameraSolverConstraint bCameraSolverConstraint
typedef struct bObjectSolverConstraint bObjectSolverConstraint
typedef struct bTransformCacheConstraint bTransformCacheConstraint
typedef enum eGeometryAttributeConstraint_Flags eGeometryAttributeConstraint_Flags
typedef struct bGeometryAttributeConstraint bGeometryAttributeConstraint
typedef enum Attribute_Domain Attribute_Domain
typedef enum Attribute_Data_Type Attribute_Data_Type
typedef enum Attribute_MixMode Attribute_MixMode
typedef enum eBConstraint_Types eBConstraint_Types
typedef enum eBConstraint_Flags eBConstraint_Flags
typedef enum eBConstraint_SpaceTypes eBConstraint_SpaceTypes
typedef enum eConstraint_EulerOrder eConstraint_EulerOrder
typedef enum eCopyRotation_Flags eCopyRotation_Flags
typedef enum eCopyRotation_MixMode eCopyRotation_MixMode
typedef enum eCopyLocation_Flags eCopyLocation_Flags
typedef enum eCopyScale_Flags eCopyScale_Flags
typedef enum eCopyTransforms_Flags eCopyTransforms_Flags
typedef enum eCopyTransforms_MixMode eCopyTransforms_MixMode
typedef enum eTransform_ToFrom eTransform_ToFrom
typedef enum eTransform_MixModeLoc eTransform_MixModeLoc
typedef enum eTransform_MixModeRot eTransform_MixModeRot
typedef enum eTransform_MixModeScale eTransform_MixModeScale
typedef enum eSameVolume_Axis eSameVolume_Axis
typedef enum eSameVolume_Mode eSameVolume_Mode
typedef enum eActionConstraint_Flags eActionConstraint_Flags
typedef enum eActionConstraint_MixMode eActionConstraint_MixMode
typedef enum eLockAxis_Modes eLockAxis_Modes
typedef enum eUpAxis_Modes eUpAxis_Modes
typedef enum eTrackToAxis_Modes eTrackToAxis_Modes
typedef enum eShrinkwrap_Flags eShrinkwrap_Flags
typedef enum eFollowPath_Flags eFollowPath_Flags
typedef enum eTrackTo_Flags eTrackTo_Flags
typedef enum eStretchTo_VolMode eStretchTo_VolMode
typedef enum eStretchTo_PlaneMode eStretchTo_PlaneMode
typedef enum eClampTo_Modes eClampTo_Modes
typedef enum eClampTo_Flags eClampTo_Flags
typedef enum eKinematic_Flags eKinematic_Flags
typedef enum eSplineIK_Flags eSplineIK_Flags
typedef enum eSplineIK_XZScaleModes eSplineIK_XZScaleModes
typedef enum eSplineIK_YScaleModes eSplineIK_YScaleModes
typedef enum eArmature_Flags eArmature_Flags
typedef enum eFloor_Flags eFloor_Flags
typedef enum eTransformLimits_Flags2 eTransformLimits_Flags2
typedef enum eTransformLimits_Flags eTransformLimits_Flags
typedef enum eRotLimit_Flags eRotLimit_Flags
typedef enum eDistLimit_Flag eDistLimit_Flag
typedef enum eDistLimit_Modes eDistLimit_Modes
typedef enum eChildOf_Flags eChildOf_Flags
typedef enum ePivotConstraint_Axis ePivotConstraint_Axis
typedef enum ePivotConstraint_Flag ePivotConstraint_Flag
typedef enum eFollowTrack_Flags eFollowTrack_Flags
typedef enum eFollowTrack_FrameMethod eFollowTrack_FrameMethod
typedef enum eCameraSolver_Flags eCameraSolver_Flags
typedef enum eObjectSolver_Flags eObjectSolver_Flags
typedef enum eStretchTo_Flags eStretchTo_Flags

Enumerations

enum  eConstraintTargetFlag { CONSTRAINT_TAR_TEMP = (1 << 0) , CONSTRAINT_TAR_CUSTOM_SPACE = (1 << 1) }
enum  eConstraintObType { CONSTRAINT_OBTYPE_OBJECT = 1 , CONSTRAINT_OBTYPE_BONE = 2 , CONSTRAINT_OBTYPE_VERT = 3 }
enum  eConstraint_IK_Type { CONSTRAINT_IK_COPYPOSE = 0 , CONSTRAINT_IK_DISTANCE = 1 }
enum  eGeometryAttributeConstraint_Flags { APPLY_TARGET_TRANSFORM = (1 << 0) , MIX_LOC = (1 << 1) , MIX_ROT = (1 << 2) , MIX_SCALE = (1 << 3) }
enum  Attribute_Domain {
  CON_ATTRIBUTE_DOMAIN_POINT = 0 , CON_ATTRIBUTE_DOMAIN_EDGE = 1 , CON_ATTRIBUTE_DOMAIN_FACE = 2 , CON_ATTRIBUTE_DOMAIN_FACE_CORNER = 3 ,
  CON_ATTRIBUTE_DOMAIN_CURVE = 4 , CON_ATTRIBUTE_DOMAIN_INSTANCE = 5
}
enum  Attribute_Data_Type { CON_ATTRIBUTE_VECTOR = 0 , CON_ATTRIBUTE_QUATERNION = 1 , CON_ATTRIBUTE_4X4MATRIX = 2 }
enum  Attribute_MixMode {
  CON_ATTRIBUTE_MIX_REPLACE = 0 , CON_ATTRIBUTE_MIX_BEFORE_SPLIT = 1 , CON_ATTRIBUTE_MIX_AFTER_SPLIT = 2 , CON_ATTRIBUTE_MIX_BEFORE_FULL = 3 ,
  CON_ATTRIBUTE_MIX_AFTER_FULL = 4
}
enum  eBConstraint_Types {
  CONSTRAINT_TYPE_NULL = 0 , CONSTRAINT_TYPE_CHILDOF = 1 , CONSTRAINT_TYPE_TRACKTO = 2 , CONSTRAINT_TYPE_KINEMATIC = 3 ,
  CONSTRAINT_TYPE_FOLLOWPATH = 4 , CONSTRAINT_TYPE_ROTLIMIT = 5 , CONSTRAINT_TYPE_LOCLIMIT = 6 , CONSTRAINT_TYPE_SIZELIMIT = 7 ,
  CONSTRAINT_TYPE_ROTLIKE = 8 , CONSTRAINT_TYPE_LOCLIKE = 9 , CONSTRAINT_TYPE_SIZELIKE = 10 , CONSTRAINT_TYPE_ACTION = 12 ,
  CONSTRAINT_TYPE_LOCKTRACK = 13 , CONSTRAINT_TYPE_DISTLIMIT = 14 , CONSTRAINT_TYPE_STRETCHTO = 15 , CONSTRAINT_TYPE_MINMAX = 16 ,
  CONSTRAINT_TYPE_CLAMPTO = 18 , CONSTRAINT_TYPE_TRANSFORM = 19 , CONSTRAINT_TYPE_SHRINKWRAP = 20 , CONSTRAINT_TYPE_DAMPTRACK = 21 ,
  CONSTRAINT_TYPE_SPLINEIK = 22 , CONSTRAINT_TYPE_TRANSLIKE = 23 , CONSTRAINT_TYPE_SAMEVOL = 24 , CONSTRAINT_TYPE_PIVOT = 25 ,
  CONSTRAINT_TYPE_FOLLOWTRACK = 26 , CONSTRAINT_TYPE_CAMERASOLVER = 27 , CONSTRAINT_TYPE_OBJECTSOLVER = 28 , CONSTRAINT_TYPE_TRANSFORM_CACHE = 29 ,
  CONSTRAINT_TYPE_ARMATURE = 30 , CONSTRAINT_TYPE_GEOMETRY_ATTRIBUTE = 31 , NUM_CONSTRAINT_TYPES
}
enum  eBConstraint_Flags {
  CONSTRAINT_DISABLE = (1 << 2) , CONSTRAINT_ACTIVE = (1 << 4) , CONSTRAINT_SPACEONCE = (1 << 6) , CONSTRAINT_OWN_IPO = (1 << 7) ,
  CONSTRAINT_OFF = (1 << 9) , CONSTRAINT_BBONE_SHAPE = (1 << 10) , CONSTRAINT_OVERRIDE_LIBRARY_LOCAL = (1 << 11) , CONSTRAINT_BBONE_SHAPE_FULL = (1 << 12)
}
enum  eBConstraint_SpaceTypes {
  CONSTRAINT_SPACE_WORLD = 0 , CONSTRAINT_SPACE_CUSTOM = 5 , CONSTRAINT_SPACE_LOCAL = 1 , CONSTRAINT_SPACE_POSE = 2 ,
  CONSTRAINT_SPACE_PARLOCAL = 3 , CONSTRAINT_SPACE_OWNLOCAL = 6 , CONSTRAINT_SPACE_INVALID = 4
}
enum  eConstraint_EulerOrder {
  CONSTRAINT_EULER_AUTO = 0 , CONSTRAINT_EULER_XYZ = 1 , CONSTRAINT_EULER_XZY = 2 , CONSTRAINT_EULER_YXZ = 3 ,
  CONSTRAINT_EULER_YZX = 4 , CONSTRAINT_EULER_ZXY = 5 , CONSTRAINT_EULER_ZYX = 6
}
enum  eCopyRotation_Flags {
  ROTLIKE_X = (1 << 0) , ROTLIKE_Y = (1 << 1) , ROTLIKE_Z = (1 << 2) , ROTLIKE_X_INVERT = (1 << 4) ,
  ROTLIKE_Y_INVERT = (1 << 5) , ROTLIKE_Z_INVERT = (1 << 6)
}
enum  eCopyRotation_MixMode {
  ROTLIKE_MIX_REPLACE = 0 , ROTLIKE_MIX_OFFSET = 1 , ROTLIKE_MIX_ADD = 2 , ROTLIKE_MIX_BEFORE = 3 ,
  ROTLIKE_MIX_AFTER = 4
}
enum  eCopyLocation_Flags {
  LOCLIKE_X = (1 << 0) , LOCLIKE_Y = (1 << 1) , LOCLIKE_Z = (1 << 2) , LOCLIKE_TIP = (1 << 3) ,
  LOCLIKE_X_INVERT = (1 << 4) , LOCLIKE_Y_INVERT = (1 << 5) , LOCLIKE_Z_INVERT = (1 << 6) , LOCLIKE_OFFSET = (1 << 7)
}
enum  eCopyScale_Flags {
  SIZELIKE_X = (1 << 0) , SIZELIKE_Y = (1 << 1) , SIZELIKE_Z = (1 << 2) , SIZELIKE_OFFSET = (1 << 3) ,
  SIZELIKE_MULTIPLY = (1 << 4) , SIZELIKE_UNIFORM = (1 << 5)
}
enum  eCopyTransforms_Flags { TRANSLIKE_REMOVE_TARGET_SHEAR = (1 << 0) }
enum  eCopyTransforms_MixMode {
  TRANSLIKE_MIX_REPLACE = 0 , TRANSLIKE_MIX_BEFORE = 1 , TRANSLIKE_MIX_AFTER = 2 , TRANSLIKE_MIX_BEFORE_SPLIT = 3 ,
  TRANSLIKE_MIX_AFTER_SPLIT = 4 , TRANSLIKE_MIX_BEFORE_FULL = 5 , TRANSLIKE_MIX_AFTER_FULL = 6
}
enum  eTransform_ToFrom { TRANS_LOCATION = 0 , TRANS_ROTATION = 1 , TRANS_SCALE = 2 }
enum  eTransform_MixModeLoc { TRANS_MIXLOC_ADD = 0 , TRANS_MIXLOC_REPLACE = 1 }
enum  eTransform_MixModeRot { TRANS_MIXROT_ADD = 0 , TRANS_MIXROT_REPLACE = 1 , TRANS_MIXROT_BEFORE = 2 , TRANS_MIXROT_AFTER = 3 }
enum  eTransform_MixModeScale { TRANS_MIXSCALE_REPLACE = 0 , TRANS_MIXSCALE_MULTIPLY = 1 }
enum  eSameVolume_Axis { SAMEVOL_X = 0 , SAMEVOL_Y = 1 , SAMEVOL_Z = 2 }
enum  eSameVolume_Mode { SAMEVOL_STRICT = 0 , SAMEVOL_UNIFORM = 1 , SAMEVOL_SINGLE_AXIS = 2 }
enum  eActionConstraint_Flags { ACTCON_BONE_USE_OBJECT_ACTION = (1 << 0) , ACTCON_USE_EVAL_TIME = (1 << 1) }
enum  eActionConstraint_MixMode {
  ACTCON_MIX_REPLACE = 6 , ACTCON_MIX_AFTER_FULL = 0 , ACTCON_MIX_BEFORE_FULL = 3 , ACTCON_MIX_AFTER = 1 ,
  ACTCON_MIX_BEFORE = 2 , ACTCON_MIX_AFTER_SPLIT = 4 , ACTCON_MIX_BEFORE_SPLIT = 5
}
enum  eLockAxis_Modes { LOCK_X = 0 , LOCK_Y = 1 , LOCK_Z = 2 }
enum  eUpAxis_Modes { UP_X = 0 , UP_Y = 1 , UP_Z = 2 }
enum  eTrackToAxis_Modes {
  TRACK_X = 0 , TRACK_Y = 1 , TRACK_Z = 2 , TRACK_nX = 3 ,
  TRACK_nY = 4 , TRACK_nZ = 5
}
enum  eShrinkwrap_Flags {
  CON_SHRINKWRAP_PROJECT_OPPOSITE = (1 << 0) , CON_SHRINKWRAP_PROJECT_INVERT_CULL = (1 << 1) , CON_SHRINKWRAP_TRACK_NORMAL = (1 << 2) , CON_SHRINKWRAP_PROJECT_CULL_FRONTFACE = (1 << 3) ,
  CON_SHRINKWRAP_PROJECT_CULL_BACKFACE = (1 << 4)
}
enum  eFollowPath_Flags { FOLLOWPATH_FOLLOW = (1 << 0) , FOLLOWPATH_STATIC = (1 << 1) , FOLLOWPATH_RADIUS = (1 << 2) }
enum  eTrackTo_Flags { TARGET_Z_UP = (1 << 0) }
enum  eStretchTo_VolMode { VOLUME_XZ = 0 , VOLUME_X = 1 , VOLUME_Z = 2 , NO_VOLUME = 3 }
enum  eStretchTo_PlaneMode { PLANE_X = 0 , SWING_Y = 1 , PLANE_Z = 2 }
enum  eClampTo_Modes { CLAMPTO_AUTO = 0 , CLAMPTO_X = 1 , CLAMPTO_Y = 2 , CLAMPTO_Z = 3 }
enum  eClampTo_Flags { CLAMPTO_CYCLIC = (1 << 0) }
enum  eKinematic_Flags {
  CONSTRAINT_IK_TIP = (1 << 0) , CONSTRAINT_IK_ROT = (1 << 1) , CONSTRAINT_IK_AUTO = (1 << 2) , CONSTRAINT_IK_TEMP = (1 << 3) ,
  CONSTRAINT_IK_STRETCH = (1 << 4) , CONSTRAINT_IK_POS = (1 << 5) , CONSTRAINT_IK_SETANGLE = (1 << 6) , CONSTRAINT_IK_GETANGLE = (1 << 7) ,
  CONSTRAINT_IK_NO_POS_X = (1 << 8) , CONSTRAINT_IK_NO_POS_Y = (1 << 9) , CONSTRAINT_IK_NO_POS_Z = (1 << 10) , CONSTRAINT_IK_NO_ROT_X = (1 << 11) ,
  CONSTRAINT_IK_NO_ROT_Y = (1 << 12) , CONSTRAINT_IK_NO_ROT_Z = (1 << 13) , CONSTRAINT_IK_TARGETAXIS = (1 << 14)
}
enum  eSplineIK_Flags {
  CONSTRAINT_SPLINEIK_BOUND = (1 << 0) , CONSTRAINT_SPLINEIK_NO_ROOT = (1 << 1) , CONSTRAINT_SPLINEIK_EVENSPLITS = (1 << 3) , CONSTRAINT_SPLINEIK_NO_CURVERAD = (1 << 4) ,
  CONSTRAINT_SPLINEIK_USE_BULGE_MIN = (1 << 5) , CONSTRAINT_SPLINEIK_USE_BULGE_MAX = (1 << 6) , CONSTRAINT_SPLINEIK_USE_ORIGINAL_SCALE = (1 << 7)
}
enum  eSplineIK_XZScaleModes { CONSTRAINT_SPLINEIK_XZS_NONE = 0 , CONSTRAINT_SPLINEIK_XZS_ORIGINAL = 1 , CONSTRAINT_SPLINEIK_XZS_INVERSE = 2 , CONSTRAINT_SPLINEIK_XZS_VOLUMETRIC = 3 }
enum  eSplineIK_YScaleModes { CONSTRAINT_SPLINEIK_YS_NONE = 0 , CONSTRAINT_SPLINEIK_YS_FIT_CURVE = 1 , CONSTRAINT_SPLINEIK_YS_ORIGINAL = 2 }
enum  eArmature_Flags { CONSTRAINT_ARMATURE_QUATERNION = (1 << 0) , CONSTRAINT_ARMATURE_ENVELOPE = (1 << 1) , CONSTRAINT_ARMATURE_CUR_LOCATION = (1 << 2) }
enum  eFloor_Flags { MINMAX_USEROT = (1 << 2) }
enum  eTransformLimits_Flags2 { LIMIT_TRANSFORM = (1 << 1) }
enum  eTransformLimits_Flags {
  LIMIT_XMIN = (1 << 0) , LIMIT_XMAX = (1 << 1) , LIMIT_YMIN = (1 << 2) , LIMIT_YMAX = (1 << 3) ,
  LIMIT_ZMIN = (1 << 4) , LIMIT_ZMAX = (1 << 5)
}
enum  eRotLimit_Flags { LIMIT_XROT = (1 << 0) , LIMIT_YROT = (1 << 1) , LIMIT_ZROT = (1 << 2) , LIMIT_ROT_LEGACY_BEHAVIOR = (1 << 3) }
enum  eDistLimit_Flag { LIMITDIST_USESOFT = (1 << 0) , LIMITDIST_TRANSFORM = (1 << 1) }
enum  eDistLimit_Modes { LIMITDIST_INSIDE = 0 , LIMITDIST_OUTSIDE = 1 , LIMITDIST_ONSURFACE = 2 }
enum  eChildOf_Flags {
  CHILDOF_LOCX = (1 << 0) , CHILDOF_LOCY = (1 << 1) , CHILDOF_LOCZ = (1 << 2) , CHILDOF_ROTX = (1 << 3) ,
  CHILDOF_ROTY = (1 << 4) , CHILDOF_ROTZ = (1 << 5) , CHILDOF_SIZEX = (1 << 6) , CHILDOF_SIZEY = (1 << 7) ,
  CHILDOF_SIZEZ = (1 << 8) , CHILDOF_ALL = 511 , CHILDOF_SET_INVERSE = (1 << 9)
}
enum  ePivotConstraint_Axis {
  PIVOTCON_AXIS_NONE = -1 , PIVOTCON_AXIS_X_NEG = 0 , PIVOTCON_AXIS_Y_NEG = 1 , PIVOTCON_AXIS_Z_NEG = 2 ,
  PIVOTCON_AXIS_X = 3 , PIVOTCON_AXIS_Y = 4 , PIVOTCON_AXIS_Z = 5
}
enum  ePivotConstraint_Flag { PIVOTCON_FLAG_OFFSET_ABS = (1 << 0) , PIVOTCON_FLAG_ROTACT_NEG = (1 << 1) }
enum  eFollowTrack_Flags { FOLLOWTRACK_ACTIVECLIP = (1 << 0) , FOLLOWTRACK_USE_3D_POSITION = (1 << 1) , FOLLOWTRACK_USE_UNDISTORTION = (1 << 2) }
enum  eFollowTrack_FrameMethod { FOLLOWTRACK_FRAME_STRETCH = 0 , FOLLOWTRACK_FRAME_FIT = 1 , FOLLOWTRACK_FRAME_CROP = 2 }
enum  eCameraSolver_Flags { CAMERASOLVER_ACTIVECLIP = (1 << 0) }
enum  eObjectSolver_Flags { OBJECTSOLVER_ACTIVECLIP = (1 << 0) , OBJECTSOLVER_SET_INVERSE = (1 << 1) }
enum  eStretchTo_Flags { STRETCHTOCON_USE_BULGE_MIN = (1 << 0) , STRETCHTOCON_USE_BULGE_MAX = (1 << 1) }

Detailed Description

Constraint DNA data.

Definition in file DNA_constraint_types.h.

Macro Definition Documentation

◆ CON_SHRINKWRAP_PROJECT_CULL_MASK

#define CON_SHRINKWRAP_PROJECT_CULL_MASK   (CON_SHRINKWRAP_PROJECT_CULL_FRONTFACE | CON_SHRINKWRAP_PROJECT_CULL_BACKFACE)

Definition at line 926 of file DNA_constraint_types.h.

Referenced by shrinkwrap_get_tarmat().

Typedef Documentation

◆ Attribute_Data_Type

◆ Attribute_Domain

◆ Attribute_MixMode

◆ bActionConstraint

typedef struct bActionConstraint bActionConstraint

◆ bArmatureConstraint

typedef struct bArmatureConstraint bArmatureConstraint

◆ bCameraSolverConstraint

typedef struct bCameraSolverConstraint bCameraSolverConstraint

◆ bChildOfConstraint

typedef struct bChildOfConstraint bChildOfConstraint

◆ bClampToConstraint

typedef struct bClampToConstraint bClampToConstraint

◆ bConstraint

typedef struct bConstraint bConstraint

A Constraint.

◆ bConstraintTarget

typedef struct bConstraintTarget bConstraintTarget

◆ bDampTrackConstraint

typedef struct bDampTrackConstraint bDampTrackConstraint

◆ bDistLimitConstraint

typedef struct bDistLimitConstraint bDistLimitConstraint

◆ bFollowPathConstraint

typedef struct bFollowPathConstraint bFollowPathConstraint

◆ bFollowTrackConstraint

typedef struct bFollowTrackConstraint bFollowTrackConstraint

◆ bGeometryAttributeConstraint

typedef struct bGeometryAttributeConstraint bGeometryAttributeConstraint

◆ bKinematicConstraint

typedef struct bKinematicConstraint bKinematicConstraint

◆ bLocateLikeConstraint

typedef struct bLocateLikeConstraint bLocateLikeConstraint

◆ bLockTrackConstraint

typedef struct bLockTrackConstraint bLockTrackConstraint

◆ bLocLimitConstraint

typedef struct bLocLimitConstraint bLocLimitConstraint

◆ bMinMaxConstraint

typedef struct bMinMaxConstraint bMinMaxConstraint

◆ bObjectSolverConstraint

typedef struct bObjectSolverConstraint bObjectSolverConstraint

◆ bPivotConstraint

typedef struct bPivotConstraint bPivotConstraint

◆ bRigidBodyJointConstraint

typedef struct bRigidBodyJointConstraint bRigidBodyJointConstraint

◆ bRotateLikeConstraint

typedef struct bRotateLikeConstraint bRotateLikeConstraint

◆ bRotLimitConstraint

typedef struct bRotLimitConstraint bRotLimitConstraint

◆ bSameVolumeConstraint

typedef struct bSameVolumeConstraint bSameVolumeConstraint

◆ bShrinkwrapConstraint

typedef struct bShrinkwrapConstraint bShrinkwrapConstraint

◆ bSizeLikeConstraint

typedef struct bSizeLikeConstraint bSizeLikeConstraint

◆ bSizeLimitConstraint

typedef struct bSizeLimitConstraint bSizeLimitConstraint

◆ bSplineIKConstraint

typedef struct bSplineIKConstraint bSplineIKConstraint

◆ bStretchToConstraint

typedef struct bStretchToConstraint bStretchToConstraint

◆ bTrackToConstraint

typedef struct bTrackToConstraint bTrackToConstraint

◆ bTransformCacheConstraint

typedef struct bTransformCacheConstraint bTransformCacheConstraint

◆ bTransformConstraint

typedef struct bTransformConstraint bTransformConstraint

◆ bTransLikeConstraint

typedef struct bTransLikeConstraint bTransLikeConstraint

◆ eActionConstraint_Flags

◆ eActionConstraint_MixMode

◆ eArmature_Flags

◆ eBConstraint_Flags

◆ eBConstraint_SpaceTypes

◆ eBConstraint_Types

◆ eCameraSolver_Flags

◆ eChildOf_Flags

◆ eClampTo_Flags

◆ eClampTo_Modes

◆ eConstraint_EulerOrder

◆ eConstraint_IK_Type

◆ eConstraintObType

◆ eConstraintTargetFlag

◆ eCopyLocation_Flags

◆ eCopyRotation_Flags

◆ eCopyRotation_MixMode

◆ eCopyScale_Flags

◆ eCopyTransforms_Flags

◆ eCopyTransforms_MixMode

◆ eDistLimit_Flag

◆ eDistLimit_Modes

◆ eFloor_Flags

◆ eFollowPath_Flags

◆ eFollowTrack_Flags

◆ eFollowTrack_FrameMethod

◆ eGeometryAttributeConstraint_Flags

◆ eKinematic_Flags

◆ eLockAxis_Modes

◆ eObjectSolver_Flags

◆ ePivotConstraint_Axis

Pivot Constraint

Restrictions for Pivot Constraint axis to consider for enabling constraint.

◆ ePivotConstraint_Flag

◆ eRotLimit_Flags

◆ eSameVolume_Axis

◆ eSameVolume_Mode

◆ eShrinkwrap_Flags

◆ eSplineIK_Flags

◆ eSplineIK_XZScaleModes

◆ eSplineIK_YScaleModes

◆ eStretchTo_Flags

◆ eStretchTo_PlaneMode

◆ eStretchTo_VolMode

◆ eTrackTo_Flags

◆ eTrackToAxis_Modes

◆ eTransform_MixModeLoc

◆ eTransform_MixModeRot

◆ eTransform_MixModeScale

◆ eTransform_ToFrom

◆ eTransformLimits_Flags

◆ eTransformLimits_Flags2

◆ eUpAxis_Modes

Enumeration Type Documentation

◆ Attribute_Data_Type

Enumerator
CON_ATTRIBUTE_VECTOR 
CON_ATTRIBUTE_QUATERNION 
CON_ATTRIBUTE_4X4MATRIX 

Definition at line 600 of file DNA_constraint_types.h.

◆ Attribute_Domain

Enumerator
CON_ATTRIBUTE_DOMAIN_POINT 
CON_ATTRIBUTE_DOMAIN_EDGE 
CON_ATTRIBUTE_DOMAIN_FACE 
CON_ATTRIBUTE_DOMAIN_FACE_CORNER 
CON_ATTRIBUTE_DOMAIN_CURVE 
CON_ATTRIBUTE_DOMAIN_INSTANCE 

Definition at line 590 of file DNA_constraint_types.h.

◆ Attribute_MixMode

Attribute Component Mix Mode

Enumerator
CON_ATTRIBUTE_MIX_REPLACE 
CON_ATTRIBUTE_MIX_BEFORE_SPLIT 
CON_ATTRIBUTE_MIX_AFTER_SPLIT 
CON_ATTRIBUTE_MIX_BEFORE_FULL 
CON_ATTRIBUTE_MIX_AFTER_FULL 

Definition at line 607 of file DNA_constraint_types.h.

◆ eActionConstraint_Flags

bActionConstraint.flag

Enumerator
ACTCON_BONE_USE_OBJECT_ACTION 
ACTCON_USE_EVAL_TIME 

Definition at line 862 of file DNA_constraint_types.h.

◆ eActionConstraint_MixMode

bActionConstraint.mix_mode

Enumerator
ACTCON_MIX_REPLACE 
ACTCON_MIX_AFTER_FULL 
ACTCON_MIX_BEFORE_FULL 
ACTCON_MIX_AFTER 
ACTCON_MIX_BEFORE 
ACTCON_MIX_AFTER_SPLIT 
ACTCON_MIX_BEFORE_SPLIT 

Definition at line 870 of file DNA_constraint_types.h.

◆ eArmature_Flags

bArmatureConstraint::flag

Enumerator
CONSTRAINT_ARMATURE_QUATERNION 

use dual quaternion blending

CONSTRAINT_ARMATURE_ENVELOPE 

use envelopes

CONSTRAINT_ARMATURE_CUR_LOCATION 

use current bone location

Definition at line 1038 of file DNA_constraint_types.h.

◆ eBConstraint_Flags

Enumerator
CONSTRAINT_DISABLE 
CONSTRAINT_ACTIVE 
CONSTRAINT_SPACEONCE 
CONSTRAINT_OWN_IPO 
CONSTRAINT_OFF 
CONSTRAINT_BBONE_SHAPE 
CONSTRAINT_OVERRIDE_LIBRARY_LOCAL 
CONSTRAINT_BBONE_SHAPE_FULL 

Definition at line 675 of file DNA_constraint_types.h.

◆ eBConstraint_SpaceTypes

Enumerator
CONSTRAINT_SPACE_WORLD 

Default for all - world-space.

CONSTRAINT_SPACE_CUSTOM 

For all - custom space.

CONSTRAINT_SPACE_LOCAL 

For objects (relative to parent/without parent influence), for bones (along normals of bone, without parent/rest-positions).

CONSTRAINT_SPACE_POSE 

For posechannels - pose space.

CONSTRAINT_SPACE_PARLOCAL 

For posechannels - local with parent.

CONSTRAINT_SPACE_OWNLOCAL 

For posechannels - local converted to the owner bone orientation.

CONSTRAINT_SPACE_INVALID 

For files from between 2.43-2.46 (should have been parlocal).

Definition at line 699 of file DNA_constraint_types.h.

◆ eBConstraint_Types

Enumerator
CONSTRAINT_TYPE_NULL 

Invalid/legacy constraint

CONSTRAINT_TYPE_CHILDOF 
CONSTRAINT_TYPE_TRACKTO 
CONSTRAINT_TYPE_KINEMATIC 
CONSTRAINT_TYPE_FOLLOWPATH 
CONSTRAINT_TYPE_ROTLIMIT 
CONSTRAINT_TYPE_LOCLIMIT 
CONSTRAINT_TYPE_SIZELIMIT 
CONSTRAINT_TYPE_ROTLIKE 
CONSTRAINT_TYPE_LOCLIKE 
CONSTRAINT_TYPE_SIZELIKE 
CONSTRAINT_TYPE_ACTION 
CONSTRAINT_TYPE_LOCKTRACK 
CONSTRAINT_TYPE_DISTLIMIT 
CONSTRAINT_TYPE_STRETCHTO 
CONSTRAINT_TYPE_MINMAX 

floor constraint

CONSTRAINT_TYPE_CLAMPTO 
CONSTRAINT_TYPE_TRANSFORM 

transformation (loc/rot/size -> loc/rot/size) constraint

CONSTRAINT_TYPE_SHRINKWRAP 

shrinkwrap (loc/rot) constraint

CONSTRAINT_TYPE_DAMPTRACK 

Tracking constraint that minimizes twisting

CONSTRAINT_TYPE_SPLINEIK 
CONSTRAINT_TYPE_TRANSLIKE 

Copy transform matrix

CONSTRAINT_TYPE_SAMEVOL 

Maintain volume during scaling

CONSTRAINT_TYPE_PIVOT 
CONSTRAINT_TYPE_FOLLOWTRACK 
CONSTRAINT_TYPE_CAMERASOLVER 
CONSTRAINT_TYPE_OBJECTSOLVER 
CONSTRAINT_TYPE_TRANSFORM_CACHE 
CONSTRAINT_TYPE_ARMATURE 
CONSTRAINT_TYPE_GEOMETRY_ATTRIBUTE 
NUM_CONSTRAINT_TYPES 

Definition at line 626 of file DNA_constraint_types.h.

◆ eCameraSolver_Flags

Enumerator
CAMERASOLVER_ACTIVECLIP 

Definition at line 1161 of file DNA_constraint_types.h.

◆ eChildOf_Flags

Enumerator
CHILDOF_LOCX 
CHILDOF_LOCY 
CHILDOF_LOCZ 
CHILDOF_ROTX 
CHILDOF_ROTY 
CHILDOF_ROTZ 
CHILDOF_SIZEX 
CHILDOF_SIZEY 
CHILDOF_SIZEZ 
CHILDOF_ALL 
CHILDOF_SET_INVERSE 

Definition at line 1101 of file DNA_constraint_types.h.

◆ eClampTo_Flags

Enumerator
CLAMPTO_CYCLIC 

Definition at line 965 of file DNA_constraint_types.h.

◆ eClampTo_Modes

Enumerator
CLAMPTO_AUTO 
CLAMPTO_X 
CLAMPTO_Y 
CLAMPTO_Z 

Definition at line 957 of file DNA_constraint_types.h.

◆ eConstraint_EulerOrder

Enumerator
CONSTRAINT_EULER_AUTO 

Automatic euler mode.

CONSTRAINT_EULER_XYZ 

Explicit euler rotation modes - must sync with BLI_math_rotation.h defines.

CONSTRAINT_EULER_XZY 
CONSTRAINT_EULER_YXZ 
CONSTRAINT_EULER_YZX 
CONSTRAINT_EULER_ZXY 
CONSTRAINT_EULER_ZYX 

Definition at line 720 of file DNA_constraint_types.h.

◆ eConstraint_IK_Type

Enumerator
CONSTRAINT_IK_COPYPOSE 

'standard' IK constraint: match position and/or orientation of target

CONSTRAINT_IK_DISTANCE 

maintain distance with target

Definition at line 147 of file DNA_constraint_types.h.

◆ eConstraintObType

Enumerator
CONSTRAINT_OBTYPE_OBJECT 

string is ""

CONSTRAINT_OBTYPE_BONE 

string is bone-name

CONSTRAINT_OBTYPE_VERT 

string is vertex-group name

Definition at line 97 of file DNA_constraint_types.h.

◆ eConstraintTargetFlag

Enumerator
CONSTRAINT_TAR_TEMP 

Temporary target-struct that needs to be freed after use.

CONSTRAINT_TAR_CUSTOM_SPACE 

Temporary target for the custom space reference.

Definition at line 89 of file DNA_constraint_types.h.

◆ eCopyLocation_Flags

bLocateLikeConstraint.flag

Enumerator
LOCLIKE_X 
LOCLIKE_Y 
LOCLIKE_Z 
LOCLIKE_TIP 

LOCLIKE_TIP is a deprecated option... use headtail=1.0f instead

LOCLIKE_X_INVERT 
LOCLIKE_Y_INVERT 
LOCLIKE_Z_INVERT 
LOCLIKE_OFFSET 

Definition at line 763 of file DNA_constraint_types.h.

◆ eCopyRotation_Flags

bRotateLikeConstraint.flag

Enumerator
ROTLIKE_X 
ROTLIKE_Y 
ROTLIKE_Z 
ROTLIKE_X_INVERT 
ROTLIKE_Y_INVERT 
ROTLIKE_Z_INVERT 

Definition at line 736 of file DNA_constraint_types.h.

◆ eCopyRotation_MixMode

bRotateLikeConstraint.mix_mode

Enumerator
ROTLIKE_MIX_REPLACE 
ROTLIKE_MIX_OFFSET 
ROTLIKE_MIX_ADD 
ROTLIKE_MIX_BEFORE 
ROTLIKE_MIX_AFTER 

Definition at line 749 of file DNA_constraint_types.h.

◆ eCopyScale_Flags

bSizeLikeConstraint.flag

Enumerator
SIZELIKE_X 
SIZELIKE_Y 
SIZELIKE_Z 
SIZELIKE_OFFSET 
SIZELIKE_MULTIPLY 
SIZELIKE_UNIFORM 

Definition at line 776 of file DNA_constraint_types.h.

◆ eCopyTransforms_Flags

bTransLikeConstraint.flag

Enumerator
TRANSLIKE_REMOVE_TARGET_SHEAR 

Definition at line 786 of file DNA_constraint_types.h.

◆ eCopyTransforms_MixMode

bTransLikeConstraint.mix_mode

Enumerator
TRANSLIKE_MIX_REPLACE 
TRANSLIKE_MIX_BEFORE 
TRANSLIKE_MIX_AFTER 
TRANSLIKE_MIX_BEFORE_SPLIT 
TRANSLIKE_MIX_AFTER_SPLIT 
TRANSLIKE_MIX_BEFORE_FULL 
TRANSLIKE_MIX_AFTER_FULL 

Definition at line 792 of file DNA_constraint_types.h.

◆ eDistLimit_Flag

Enumerator
LIMITDIST_USESOFT 
LIMITDIST_TRANSFORM 

Definition at line 1086 of file DNA_constraint_types.h.

◆ eDistLimit_Modes

Enumerator
LIMITDIST_INSIDE 
LIMITDIST_OUTSIDE 
LIMITDIST_ONSURFACE 

Definition at line 1094 of file DNA_constraint_types.h.

◆ eFloor_Flags

Enumerator
MINMAX_USEROT 

Definition at line 1048 of file DNA_constraint_types.h.

◆ eFollowPath_Flags

Enumerator
FOLLOWPATH_FOLLOW 
FOLLOWPATH_STATIC 
FOLLOWPATH_RADIUS 

Definition at line 930 of file DNA_constraint_types.h.

◆ eFollowTrack_Flags

Enumerator
FOLLOWTRACK_ACTIVECLIP 
FOLLOWTRACK_USE_3D_POSITION 
FOLLOWTRACK_USE_UNDISTORTION 

Definition at line 1148 of file DNA_constraint_types.h.

◆ eFollowTrack_FrameMethod

Enumerator
FOLLOWTRACK_FRAME_STRETCH 
FOLLOWTRACK_FRAME_FIT 
FOLLOWTRACK_FRAME_CROP 

Definition at line 1154 of file DNA_constraint_types.h.

◆ eGeometryAttributeConstraint_Flags

Enumerator
APPLY_TARGET_TRANSFORM 
MIX_LOC 
MIX_ROT 
MIX_SCALE 

Definition at line 566 of file DNA_constraint_types.h.

◆ eKinematic_Flags

Enumerator
CONSTRAINT_IK_TIP 
CONSTRAINT_IK_ROT 
CONSTRAINT_IK_AUTO 
CONSTRAINT_IK_TEMP 
CONSTRAINT_IK_STRETCH 
CONSTRAINT_IK_POS 
CONSTRAINT_IK_SETANGLE 
CONSTRAINT_IK_GETANGLE 
CONSTRAINT_IK_NO_POS_X 
CONSTRAINT_IK_NO_POS_Y 
CONSTRAINT_IK_NO_POS_Z 
CONSTRAINT_IK_NO_ROT_X 
CONSTRAINT_IK_NO_ROT_Y 
CONSTRAINT_IK_NO_ROT_Z 
CONSTRAINT_IK_TARGETAXIS 

Definition at line 970 of file DNA_constraint_types.h.

◆ eLockAxis_Modes

Enumerator
LOCK_X 
LOCK_Y 
LOCK_Z 

Definition at line 888 of file DNA_constraint_types.h.

◆ eObjectSolver_Flags

Enumerator
OBJECTSOLVER_ACTIVECLIP 
OBJECTSOLVER_SET_INVERSE 

Definition at line 1166 of file DNA_constraint_types.h.

◆ ePivotConstraint_Axis

Pivot Constraint

Restrictions for Pivot Constraint axis to consider for enabling constraint.

Enumerator
PIVOTCON_AXIS_NONE 

Do not consider this activity-clamping.

PIVOTCON_AXIS_X_NEG 

Consider -VE X-axis rotations.

PIVOTCON_AXIS_Y_NEG 

Consider -VE Y-axis rotations.

PIVOTCON_AXIS_Z_NEG 

Consider -VE Z-axis rotations.

PIVOTCON_AXIS_X 

Consider +VE X-axis rotations.

PIVOTCON_AXIS_Y 

Consider +VE Y-axis rotations.

PIVOTCON_AXIS_Z 

Consider +VE Z-axis rotations.

Definition at line 1121 of file DNA_constraint_types.h.

◆ ePivotConstraint_Flag

Enumerator
PIVOTCON_FLAG_OFFSET_ABS 
PIVOTCON_FLAG_ROTACT_NEG 

Definition at line 1141 of file DNA_constraint_types.h.

◆ eRotLimit_Flags

Enumerator
LIMIT_XROT 
LIMIT_YROT 
LIMIT_ZROT 
LIMIT_ROT_LEGACY_BEHAVIOR 

Definition at line 1073 of file DNA_constraint_types.h.

◆ eSameVolume_Axis

bSameVolumeConstraint.free_axis

Enumerator
SAMEVOL_X 
SAMEVOL_Y 
SAMEVOL_Z 

Definition at line 845 of file DNA_constraint_types.h.

◆ eSameVolume_Mode

bSameVolumeConstraint.mode

Enumerator
SAMEVOL_STRICT 
SAMEVOL_UNIFORM 
SAMEVOL_SINGLE_AXIS 

Definition at line 852 of file DNA_constraint_types.h.

◆ eShrinkwrap_Flags

Enumerator
CON_SHRINKWRAP_PROJECT_OPPOSITE 
CON_SHRINKWRAP_PROJECT_INVERT_CULL 
CON_SHRINKWRAP_TRACK_NORMAL 
CON_SHRINKWRAP_PROJECT_CULL_FRONTFACE 
CON_SHRINKWRAP_PROJECT_CULL_BACKFACE 

Definition at line 912 of file DNA_constraint_types.h.

◆ eSplineIK_Flags

bSplineIKConstraint::flag

Enumerator
CONSTRAINT_SPLINEIK_BOUND 

Chain has been attached to spline.

CONSTRAINT_SPLINEIK_NO_ROOT 

Root of chain is not influenced by the constraint.

CONSTRAINT_SPLINEIK_EVENSPLITS 

Evenly distribute the bones along the path regardless of length.

CONSTRAINT_SPLINEIK_NO_CURVERAD 

Don't adjust the X and Z scaling of the bones by the curve radius.

CONSTRAINT_SPLINEIK_USE_BULGE_MIN 

For "volumetric" XZ scale mode, limit the minimum or maximum scale values.

CONSTRAINT_SPLINEIK_USE_BULGE_MAX 
CONSTRAINT_SPLINEIK_USE_ORIGINAL_SCALE 

Apply volume preservation over original scaling of the bone.

Definition at line 993 of file DNA_constraint_types.h.

◆ eSplineIK_XZScaleModes

bSplineIKConstraint::xzScaleMode

Enumerator
CONSTRAINT_SPLINEIK_XZS_NONE 

No X/Z scaling.

CONSTRAINT_SPLINEIK_XZS_ORIGINAL 

Bones in the chain should take their X/Z scales from the original scaling.

CONSTRAINT_SPLINEIK_XZS_INVERSE 

X/Z scales are the inverse of the Y-scale.

CONSTRAINT_SPLINEIK_XZS_VOLUMETRIC 

X/Z scales are computed using a volume preserving technique (from Stretch To constraint).

Definition at line 1016 of file DNA_constraint_types.h.

◆ eSplineIK_YScaleModes

bSplineIKConstraint::yScaleMode

Enumerator
CONSTRAINT_SPLINEIK_YS_NONE 

No Y scaling.

CONSTRAINT_SPLINEIK_YS_FIT_CURVE 

Bones in the chain should be scaled to fit the length of the curve.

CONSTRAINT_SPLINEIK_YS_ORIGINAL 

Bones in the chain should take their y scales from the original scaling.

Definition at line 1028 of file DNA_constraint_types.h.

◆ eStretchTo_Flags

Enumerator
STRETCHTOCON_USE_BULGE_MIN 
STRETCHTOCON_USE_BULGE_MAX 

Definition at line 1173 of file DNA_constraint_types.h.

◆ eStretchTo_PlaneMode

Enumerator
PLANE_X 
SWING_Y 
PLANE_Z 

Definition at line 950 of file DNA_constraint_types.h.

◆ eStretchTo_VolMode

Enumerator
VOLUME_XZ 
VOLUME_X 
VOLUME_Z 
NO_VOLUME 

Definition at line 942 of file DNA_constraint_types.h.

◆ eTrackTo_Flags

Enumerator
TARGET_Z_UP 

Definition at line 937 of file DNA_constraint_types.h.

◆ eTrackToAxis_Modes

Enumerator
TRACK_X 
TRACK_Y 
TRACK_Z 
TRACK_nX 
TRACK_nY 
TRACK_nZ 

Definition at line 902 of file DNA_constraint_types.h.

◆ eTransform_MixModeLoc

bTransformConstraint.mix_mode_loc

Enumerator
TRANS_MIXLOC_ADD 
TRANS_MIXLOC_REPLACE 

Definition at line 817 of file DNA_constraint_types.h.

◆ eTransform_MixModeRot

bTransformConstraint.mix_mode_rot

Enumerator
TRANS_MIXROT_ADD 
TRANS_MIXROT_REPLACE 
TRANS_MIXROT_BEFORE 
TRANS_MIXROT_AFTER 

Definition at line 825 of file DNA_constraint_types.h.

◆ eTransform_MixModeScale

bTransformConstraint.mix_mode_scale

Enumerator
TRANS_MIXSCALE_REPLACE 
TRANS_MIXSCALE_MULTIPLY 

Definition at line 837 of file DNA_constraint_types.h.

◆ eTransform_ToFrom

Enumerator
TRANS_LOCATION 
TRANS_ROTATION 
TRANS_SCALE 

Definition at line 810 of file DNA_constraint_types.h.

◆ eTransformLimits_Flags

Enumerator
LIMIT_XMIN 
LIMIT_XMAX 
LIMIT_YMIN 
LIMIT_YMAX 
LIMIT_ZMIN 
LIMIT_ZMAX 

Definition at line 1063 of file DNA_constraint_types.h.

◆ eTransformLimits_Flags2

Enumerator
LIMIT_TRANSFORM 

Definition at line 1055 of file DNA_constraint_types.h.

◆ eUpAxis_Modes

Enumerator
UP_X 
UP_Y 
UP_Z 

Definition at line 895 of file DNA_constraint_types.h.