Blender  V3.3
Functions | Variables
rna_constraint.c File Reference
#include <stdlib.h>
#include "BLI_math.h"
#include "MEM_guardedalloc.h"
#include "BLT_translation.h"
#include "DNA_action_types.h"
#include "DNA_constraint_types.h"
#include "DNA_modifier_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "RNA_define.h"
#include "RNA_enum_types.h"
#include "rna_internal.h"
#include "WM_types.h"
#include "ED_object.h"

Go to the source code of this file.

Functions

static void rna_def_constraint_headtail_common (StructRNA *srna)
 
static void rna_def_constraint_target_common (StructRNA *srna)
 
static void rna_def_constrainttarget (BlenderRNA *brna)
 
static void rna_def_constrainttarget_bone (BlenderRNA *brna)
 
static void rna_def_constraint_childof (BlenderRNA *brna)
 
static void rna_def_constraint_python (BlenderRNA *brna)
 
static void rna_def_constraint_armature_deform_targets (BlenderRNA *brna, PropertyRNA *cprop)
 
static void rna_def_constraint_armature_deform (BlenderRNA *brna)
 
static void rna_def_constraint_kinematic (BlenderRNA *brna)
 
static void rna_def_constraint_track_to (BlenderRNA *brna)
 
static void rna_def_constraint_locate_like (BlenderRNA *brna)
 
static void rna_def_constraint_rotate_like (BlenderRNA *brna)
 
static void rna_def_constraint_size_like (BlenderRNA *brna)
 
static void rna_def_constraint_same_volume (BlenderRNA *brna)
 
static void rna_def_constraint_transform_like (BlenderRNA *brna)
 
static void rna_def_constraint_minmax (BlenderRNA *brna)
 
static void rna_def_constraint_action (BlenderRNA *brna)
 
static void rna_def_constraint_locked_track (BlenderRNA *brna)
 
static void rna_def_constraint_follow_path (BlenderRNA *brna)
 
static void rna_def_constraint_stretch_to (BlenderRNA *brna)
 
static void rna_def_constraint_clamp_to (BlenderRNA *brna)
 
static void rna_def_constraint_transform (BlenderRNA *brna)
 
static void rna_def_constraint_location_limit (BlenderRNA *brna)
 
static void rna_def_constraint_rotation_limit (BlenderRNA *brna)
 
static void rna_def_constraint_size_limit (BlenderRNA *brna)
 
static void rna_def_constraint_distance_limit (BlenderRNA *brna)
 
static void rna_def_constraint_shrinkwrap (BlenderRNA *brna)
 
static void rna_def_constraint_damped_track (BlenderRNA *brna)
 
static void rna_def_constraint_spline_ik (BlenderRNA *brna)
 
static void rna_def_constraint_pivot (BlenderRNA *brna)
 
static void rna_def_constraint_follow_track (BlenderRNA *brna)
 
static void rna_def_constraint_camera_solver (BlenderRNA *brna)
 
static void rna_def_constraint_object_solver (BlenderRNA *brna)
 
static void rna_def_constraint_transform_cache (BlenderRNA *brna)
 
void RNA_def_constraint (BlenderRNA *brna)
 

Variables

const EnumPropertyItem rna_enum_constraint_type_items []
 
static const EnumPropertyItem target_space_pchan_items []
 
static const EnumPropertyItem owner_space_pchan_items []
 
static const EnumPropertyItem track_axis_items []
 
static const EnumPropertyItem euler_order_items []
 
static const EnumPropertyItem constraint_distance_items []
 

Function Documentation

◆ RNA_def_constraint()

void RNA_def_constraint ( BlenderRNA brna)

Definition at line 3441 of file rna_constraint.c.

References CONSTRAINT_ACTIVE, CONSTRAINT_DISABLE, CONSTRAINT_OFF, CONSTRAINT_OVERRIDE_LIBRARY_LOCAL, NA_RENAME, NC_OBJECT, ND_CONSTRAINT, NULL, owner_space_pchan_items, PROP_BOOLEAN, PROP_EDITABLE, PROP_ENUM, PROP_FACTOR, PROP_FLOAT, PROP_NO_DEG_UPDATE, PROP_NONE, PROP_POINTER, PROP_STRING, PROPOVERRIDE_OVERRIDABLE_LIBRARY, RNA_def_boolean(), rna_def_constraint_action(), rna_def_constraint_armature_deform(), rna_def_constraint_camera_solver(), rna_def_constraint_childof(), rna_def_constraint_clamp_to(), rna_def_constraint_damped_track(), rna_def_constraint_distance_limit(), rna_def_constraint_follow_path(), rna_def_constraint_follow_track(), rna_def_constraint_kinematic(), rna_def_constraint_locate_like(), rna_def_constraint_location_limit(), rna_def_constraint_locked_track(), rna_def_constraint_minmax(), rna_def_constraint_object_solver(), rna_def_constraint_pivot(), rna_def_constraint_python(), rna_def_constraint_rotate_like(), rna_def_constraint_rotation_limit(), rna_def_constraint_same_volume(), rna_def_constraint_shrinkwrap(), rna_def_constraint_size_like(), rna_def_constraint_size_limit(), rna_def_constraint_spline_ik(), rna_def_constraint_stretch_to(), rna_def_constraint_track_to(), rna_def_constraint_transform(), rna_def_constraint_transform_cache(), rna_def_constraint_transform_like(), rna_def_constrainttarget(), rna_def_constrainttarget_bone(), RNA_def_property(), RNA_def_property_boolean_negative_sdna(), RNA_def_property_boolean_sdna(), RNA_def_property_clear_flag(), RNA_def_property_enum_funcs(), RNA_def_property_enum_items(), RNA_def_property_enum_sdna(), RNA_def_property_flag(), RNA_def_property_float_sdna(), RNA_def_property_override_flag(), RNA_def_property_pointer_sdna(), RNA_def_property_range(), RNA_def_property_string_funcs(), RNA_def_property_string_sdna(), RNA_def_property_ui_icon(), RNA_def_property_ui_text(), RNA_def_property_update(), RNA_def_struct(), RNA_def_struct_name_property(), RNA_def_struct_path_func(), RNA_def_struct_refine_func(), RNA_def_struct_sdna(), RNA_def_struct_ui_icon(), RNA_def_struct_ui_text(), RNA_define_lib_overridable(), rna_enum_constraint_type_items, and target_space_pchan_items.

◆ rna_def_constraint_action()

static void rna_def_constraint_action ( BlenderRNA brna)
static

◆ rna_def_constraint_armature_deform()

static void rna_def_constraint_armature_deform ( BlenderRNA brna)
static

◆ rna_def_constraint_armature_deform_targets()

static void rna_def_constraint_armature_deform_targets ( BlenderRNA brna,
PropertyRNA cprop 
)
static

◆ rna_def_constraint_camera_solver()

static void rna_def_constraint_camera_solver ( BlenderRNA brna)
static

◆ rna_def_constraint_childof()

static void rna_def_constraint_childof ( BlenderRNA brna)
static

◆ rna_def_constraint_clamp_to()

static void rna_def_constraint_clamp_to ( BlenderRNA brna)
static

◆ rna_def_constraint_damped_track()

static void rna_def_constraint_damped_track ( BlenderRNA brna)
static

◆ rna_def_constraint_distance_limit()

static void rna_def_constraint_distance_limit ( BlenderRNA brna)
static

◆ rna_def_constraint_follow_path()

static void rna_def_constraint_follow_path ( BlenderRNA brna)
static

◆ rna_def_constraint_follow_track()

static void rna_def_constraint_follow_track ( BlenderRNA brna)
static

◆ rna_def_constraint_headtail_common()

static void rna_def_constraint_headtail_common ( StructRNA srna)
static

◆ rna_def_constraint_kinematic()

static void rna_def_constraint_kinematic ( BlenderRNA brna)
static

◆ rna_def_constraint_locate_like()

static void rna_def_constraint_locate_like ( BlenderRNA brna)
static

◆ rna_def_constraint_location_limit()

static void rna_def_constraint_location_limit ( BlenderRNA brna)
static

◆ rna_def_constraint_locked_track()

static void rna_def_constraint_locked_track ( BlenderRNA brna)
static

◆ rna_def_constraint_minmax()

static void rna_def_constraint_minmax ( BlenderRNA brna)
static

◆ rna_def_constraint_object_solver()

static void rna_def_constraint_object_solver ( BlenderRNA brna)
static

◆ rna_def_constraint_pivot()

static void rna_def_constraint_pivot ( BlenderRNA brna)
static

◆ rna_def_constraint_python()

static void rna_def_constraint_python ( BlenderRNA brna)
static

◆ rna_def_constraint_rotate_like()

static void rna_def_constraint_rotate_like ( BlenderRNA brna)
static

◆ rna_def_constraint_rotation_limit()

static void rna_def_constraint_rotation_limit ( BlenderRNA brna)
static

◆ rna_def_constraint_same_volume()

static void rna_def_constraint_same_volume ( BlenderRNA brna)
static

◆ rna_def_constraint_shrinkwrap()

static void rna_def_constraint_shrinkwrap ( BlenderRNA brna)
static

◆ rna_def_constraint_size_like()

static void rna_def_constraint_size_like ( BlenderRNA brna)
static

◆ rna_def_constraint_size_limit()

static void rna_def_constraint_size_limit ( BlenderRNA brna)
static

◆ rna_def_constraint_spline_ik()

static void rna_def_constraint_spline_ik ( BlenderRNA brna)
static

◆ rna_def_constraint_stretch_to()

static void rna_def_constraint_stretch_to ( BlenderRNA brna)
static

◆ rna_def_constraint_target_common()

static void rna_def_constraint_target_common ( StructRNA srna)
static

◆ rna_def_constraint_track_to()

static void rna_def_constraint_track_to ( BlenderRNA brna)
static

◆ rna_def_constraint_transform()

static void rna_def_constraint_transform ( BlenderRNA brna)
static

◆ rna_def_constraint_transform_cache()

static void rna_def_constraint_transform_cache ( BlenderRNA brna)
static

◆ rna_def_constraint_transform_like()

static void rna_def_constraint_transform_like ( BlenderRNA brna)
static

◆ rna_def_constrainttarget()

static void rna_def_constrainttarget ( BlenderRNA brna)
static

◆ rna_def_constrainttarget_bone()

static void rna_def_constrainttarget_bone ( BlenderRNA brna)
static

Variable Documentation

◆ constraint_distance_items

const EnumPropertyItem constraint_distance_items[]
static
Initial value:
= {
"LIMITDIST_INSIDE",
0,
"Inside",
"The object is constrained inside a virtual sphere around the target object, "
"with a radius defined by the limit distance"},
"LIMITDIST_OUTSIDE",
0,
"Outside",
"The object is constrained outside a virtual sphere around the target object, "
"with a radius defined by the limit distance"},
"LIMITDIST_ONSURFACE",
0,
"On Surface",
"The object is constrained on the surface of a virtual sphere around the target object, "
"with a radius defined by the limit distance"},
{0, NULL, 0, NULL, NULL},
}
@ LIMITDIST_INSIDE
@ LIMITDIST_OUTSIDE
@ LIMITDIST_ONSURFACE

Definition at line 823 of file rna_constraint.c.

Referenced by rna_def_constraint_distance_limit(), and rna_def_constraint_kinematic().

◆ euler_order_items

const EnumPropertyItem euler_order_items[]
static
Initial value:
= {
{CONSTRAINT_EULER_AUTO, "AUTO", 0, "Default", "Euler using the default rotation order"},
{CONSTRAINT_EULER_XYZ, "XYZ", 0, "XYZ Euler", "Euler using the XYZ rotation order"},
{CONSTRAINT_EULER_XZY, "XZY", 0, "XZY Euler", "Euler using the XZY rotation order"},
{CONSTRAINT_EULER_YXZ, "YXZ", 0, "YXZ Euler", "Euler using the YXZ rotation order"},
{CONSTRAINT_EULER_YZX, "YZX", 0, "YZX Euler", "Euler using the YZX rotation order"},
{CONSTRAINT_EULER_ZXY, "ZXY", 0, "ZXY Euler", "Euler using the ZXY rotation order"},
{CONSTRAINT_EULER_ZYX, "ZYX", 0, "ZYX Euler", "Euler using the ZYX rotation order"},
{0, NULL, 0, NULL, NULL},
}
@ CONSTRAINT_EULER_XZY
@ CONSTRAINT_EULER_YXZ
@ CONSTRAINT_EULER_ZYX
@ CONSTRAINT_EULER_AUTO
@ CONSTRAINT_EULER_ZXY
@ CONSTRAINT_EULER_YZX
@ CONSTRAINT_EULER_XYZ

Definition at line 269 of file rna_constraint.c.

Referenced by rna_def_constraint_rotate_like(), rna_def_constraint_rotation_limit(), and rna_def_constraint_transform().

◆ owner_space_pchan_items

const EnumPropertyItem owner_space_pchan_items[]
static
Initial value:
= {
"WORLD",
0,
"World Space",
"The constraint is applied relative to the world coordinate system"},
"CUSTOM",
0,
"Custom Space",
"The constraint is applied in local space of a custom object/bone/vertex group"},
"POSE",
0,
"Pose Space",
"The constraint is applied in Pose Space, the object transformation is ignored"},
"LOCAL_WITH_PARENT",
0,
"Local With Parent",
"The constraint is applied relative to the rest pose local coordinate system "
"of the bone, thus including the parent-induced transformation"},
"LOCAL",
0,
"Local Space",
"The constraint is applied relative to the local coordinate system of the object"},
{0, NULL, 0, NULL, NULL},
}
@ CONSTRAINT_SPACE_CUSTOM
@ CONSTRAINT_SPACE_POSE
@ CONSTRAINT_SPACE_WORLD
@ CONSTRAINT_SPACE_LOCAL
@ CONSTRAINT_SPACE_PARLOCAL
#define RNA_ENUM_ITEM_SEPR
Definition: RNA_types.h:483

Definition at line 228 of file rna_constraint.c.

Referenced by RNA_def_constraint(), and rna_def_constraint_shrinkwrap().

◆ rna_enum_constraint_type_items

const EnumPropertyItem rna_enum_constraint_type_items[]

◆ target_space_pchan_items

const EnumPropertyItem target_space_pchan_items[]
static

Definition at line 185 of file rna_constraint.c.

Referenced by RNA_def_constraint().

◆ track_axis_items

const EnumPropertyItem track_axis_items[]
static
Initial value:
= {
{TRACK_X, "TRACK_X", 0, "X", ""},
{TRACK_Y, "TRACK_Y", 0, "Y", ""},
{TRACK_Z, "TRACK_Z", 0, "Z", ""},
{TRACK_nX, "TRACK_NEGATIVE_X", 0, "-X", ""},
{TRACK_nY, "TRACK_NEGATIVE_Y", 0, "-Y", ""},
{TRACK_nZ, "TRACK_NEGATIVE_Z", 0, "-Z", ""},
{0, NULL, 0, NULL, NULL},
}

Definition at line 259 of file rna_constraint.c.

Referenced by rna_def_constraint_damped_track(), rna_def_constraint_locked_track(), rna_def_constraint_shrinkwrap(), and rna_def_constraint_track_to().