Blender  V2.93
Classes | Macros
transform_gizmo_3d.c File Reference
#include <float.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "DNA_armature_types.h"
#include "DNA_curve_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_lattice_types.h"
#include "DNA_meta_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_view3d_types.h"
#include "BLI_array_utils.h"
#include "BLI_listbase.h"
#include "BLI_math.h"
#include "BLI_utildefines.h"
#include "BKE_action.h"
#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_curve.h"
#include "BKE_editmesh.h"
#include "BKE_global.h"
#include "BKE_gpencil.h"
#include "BKE_layer.h"
#include "BKE_object.h"
#include "BKE_paint.h"
#include "BKE_pointcache.h"
#include "BKE_scene.h"
#include "DEG_depsgraph.h"
#include "WM_api.h"
#include "WM_message.h"
#include "WM_types.h"
#include "wm.h"
#include "ED_armature.h"
#include "ED_gizmo_library.h"
#include "ED_gizmo_utils.h"
#include "ED_gpencil.h"
#include "ED_object.h"
#include "ED_particle.h"
#include "ED_screen.h"
#include "ED_view3d.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "transform.h"
#include "transform_convert.h"
#include "transform_snap.h"
#include "MEM_guardedalloc.h"
#include "GPU_state.h"

Go to the source code of this file.

Classes

struct  GizmoGroup
 
struct  XFormCageWidgetGroup
 
struct  XFormShearWidgetGroup
 

Macros

#define MAN_AXIS_RANGE_TRANS_START   MAN_AXIS_TRANS_X
 
#define MAN_AXIS_RANGE_TRANS_END   (MAN_AXIS_TRANS_ZX + 1)
 
#define MAN_AXIS_RANGE_ROT_START   MAN_AXIS_ROT_X
 
#define MAN_AXIS_RANGE_ROT_END   (MAN_AXIS_ROT_T + 1)
 
#define MAN_AXIS_RANGE_SCALE_START   MAN_AXIS_SCALE_X
 
#define MAN_AXIS_RANGE_SCALE_END   (MAN_AXIS_SCALE_ZX + 1)
 
#define FOREACH_EDIT_OBJECT_BEGIN(ob_iter, use_mat_local)
 
#define FOREACH_EDIT_OBJECT_END()
 
#define GIZMO_NEW_ARROW(v, draw_style)
 
#define GIZMO_NEW_DIAL(v, draw_options)
 
#define GIZMO_NEW_PRIM(v, draw_style)
 

Functions

Transform Gizmo
static GizmoGroupgizmogroup_init (wmGizmoGroup *gzgroup)
 
static int gizmo_modal (bContext *C, wmGizmo *widget, const wmEvent *event, eWM_GizmoFlagTweak UNUSED(tweak_flag))
 
static void gizmogroup_init_properties_from_twtype (wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_gizmo_setup (const bContext *C, wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_gizmo_refresh (const bContext *C, wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_gizmo_message_subscribe (const bContext *C, wmGizmoGroup *gzgroup, struct wmMsgBus *mbus)
 
static void WIDGETGROUP_gizmo_draw_prepare (const bContext *C, wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_gizmo_invoke_prepare (const bContext *C, wmGizmoGroup *gzgroup, wmGizmo *gz, const wmEvent *UNUSED(event))
 
static bool WIDGETGROUP_gizmo_poll_generic (View3D *v3d)
 
static bool WIDGETGROUP_gizmo_poll_context (const struct bContext *C, struct wmGizmoGroupType *UNUSED(gzgt))
 
static bool WIDGETGROUP_gizmo_poll_tool (const struct bContext *C, struct wmGizmoGroupType *gzgt)
 
void VIEW3D_GGT_xform_gizmo (wmGizmoGroupType *gzgt)
 
void VIEW3D_GGT_xform_gizmo_context (wmGizmoGroupType *gzgt)
 
Scale Cage Gizmo
static bool WIDGETGROUP_xform_cage_poll (const bContext *C, wmGizmoGroupType *gzgt)
 
static void WIDGETGROUP_xform_cage_setup (const bContext *UNUSED(C), wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_xform_cage_refresh (const bContext *C, wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_xform_cage_message_subscribe (const bContext *C, wmGizmoGroup *gzgroup, struct wmMsgBus *mbus)
 
static void WIDGETGROUP_xform_cage_draw_prepare (const bContext *C, wmGizmoGroup *gzgroup)
 
void VIEW3D_GGT_xform_cage (wmGizmoGroupType *gzgt)
 
Transform Shear Gizmo
static bool WIDGETGROUP_xform_shear_poll (const bContext *C, wmGizmoGroupType *gzgt)
 
static void WIDGETGROUP_xform_shear_setup (const bContext *UNUSED(C), wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_xform_shear_refresh (const bContext *C, wmGizmoGroup *gzgroup)
 
static void WIDGETGROUP_xform_shear_message_subscribe (const bContext *C, wmGizmoGroup *gzgroup, struct wmMsgBus *mbus)
 
static void WIDGETGROUP_xform_shear_draw_prepare (const bContext *C, wmGizmoGroup *gzgroup)
 
void VIEW3D_GGT_xform_shear (wmGizmoGroupType *gzgt)
 

3D Transform Gizmo

Used for 3D View

#define MAN_TRANS_X   (1 << 0)
 
#define MAN_TRANS_Y   (1 << 1)
 
#define MAN_TRANS_Z   (1 << 2)
 
#define MAN_TRANS_C   (MAN_TRANS_X | MAN_TRANS_Y | MAN_TRANS_Z)
 
#define MAN_ROT_X   (1 << 3)
 
#define MAN_ROT_Y   (1 << 4)
 
#define MAN_ROT_Z   (1 << 5)
 
#define MAN_ROT_C   (MAN_ROT_X | MAN_ROT_Y | MAN_ROT_Z)
 
#define MAN_SCALE_X   (1 << 8)
 
#define MAN_SCALE_Y   (1 << 9)
 
#define MAN_SCALE_Z   (1 << 10)
 
#define MAN_SCALE_C   (MAN_SCALE_X | MAN_SCALE_Y | MAN_SCALE_Z)
 
enum  {
  MAN_AXIS_TRANS_X = 0 , MAN_AXIS_TRANS_Y , MAN_AXIS_TRANS_Z , MAN_AXIS_TRANS_C ,
  MAN_AXIS_TRANS_XY , MAN_AXIS_TRANS_YZ , MAN_AXIS_TRANS_ZX , MAN_AXIS_ROT_X ,
  MAN_AXIS_ROT_Y , MAN_AXIS_ROT_Z , MAN_AXIS_ROT_C , MAN_AXIS_ROT_T ,
  MAN_AXIS_SCALE_X , MAN_AXIS_SCALE_Y , MAN_AXIS_SCALE_Z , MAN_AXIS_SCALE_C ,
  MAN_AXIS_SCALE_XY , MAN_AXIS_SCALE_YZ , MAN_AXIS_SCALE_ZX , MAN_AXIS_LAST = MAN_AXIS_SCALE_ZX + 1
}
 
enum  { MAN_AXES_ALL = 0 , MAN_AXES_TRANSLATE , MAN_AXES_ROTATE , MAN_AXES_SCALE }
 
typedef struct GizmoGroup GizmoGroup
 
struct {
   float   min
 
   float   max
 
g_tw_axis_range [2]
 

Utilities

#define MAN_ITER_AXES_BEGIN(axis, axis_idx)
 
#define MAN_ITER_AXES_END
 
static wmGizmogizmo_get_axis_from_index (const GizmoGroup *ggd, const short axis_idx)
 
static short gizmo_get_axis_type (const int axis_idx)
 
static uint gizmo_orientation_axis (const int axis_idx, bool *r_is_plane)
 
static bool gizmo_is_axis_visible (const RegionView3D *rv3d, const int twtype, const float idot[3], const int axis_type, const int axis_idx)
 
static void gizmo_get_axis_color (const int axis_idx, const float idot[3], float r_col[4], float r_col_hi[4])
 
static void gizmo_get_axis_constraint (const int axis_idx, bool r_axis[3])
 
static void reset_tw_center (struct TransformBounds *tbounds)
 
static void calc_tw_center (struct TransformBounds *tbounds, const float co[3])
 
static void calc_tw_center_with_matrix (struct TransformBounds *tbounds, const float co[3], const bool use_matrix, const float matrix[4][4])
 
static void protectflag_to_drawflags (short protectflag, short *drawflags)
 
static void protectflag_to_drawflags_pchan (RegionView3D *rv3d, const bPoseChannel *pchan, short orientation_index)
 
static void protectflag_to_drawflags_ebone (RegionView3D *rv3d, const EditBone *ebo)
 
static void axis_angle_to_gimbal_axis (float gmat[3][3], const float axis[3], const float angle)
 
static bool test_rotmode_euler (short rotmode)
 
bool gimbal_axis (Object *ob, float gmat[3][3])
 
int ED_transform_calc_gizmo_stats (const bContext *C, const struct TransformCalcParams *params, struct TransformBounds *tbounds)
 
static void gizmo_get_idot (RegionView3D *rv3d, float r_idot[3])
 
static void gizmo_prepare_mat (const bContext *C, RegionView3D *rv3d, const struct TransformBounds *tbounds)
 
static void gizmo_line_range (const int twtype, const short axis_type, float *r_start, float *r_len)
 
static void gizmo_xform_message_subscribe (wmGizmoGroup *gzgroup, struct wmMsgBus *mbus, Scene *scene, bScreen *screen, ScrArea *area, ARegion *region, const void *type_fn)
 
void drawDial3d (const TransInfo *t)
 

Macro Definition Documentation

◆ FOREACH_EDIT_OBJECT_BEGIN

#define FOREACH_EDIT_OBJECT_BEGIN (   ob_iter,
  use_mat_local 
)
Value:
{ \
invert_m4_m4(obedit->imat, obedit->obmat); \
uint objects_len = 0; \
view_layer, CTX_wm_view3d(C), &objects_len); \
for (uint ob_index = 0; ob_index < objects_len; ob_index++) { \
Object *ob_iter = objects[ob_index]; \
const bool use_mat_local = (ob_iter != obedit);
struct View3D * CTX_wm_view3d(const bContext *C)
Definition: context.c:760
#define BKE_view_layer_array_from_objects_in_edit_mode(view_layer, v3d, r_len)
Definition: BKE_layer.h:420
unsigned int uint
Definition: BLI_sys_types.h:83
#define C
Definition: RandGen.cpp:39

◆ FOREACH_EDIT_OBJECT_END

#define FOREACH_EDIT_OBJECT_END ( )
Value:
} \
MEM_freeN(objects); \
} \
((void)0)

◆ GIZMO_NEW_ARROW

#define GIZMO_NEW_ARROW (   v,
  draw_style 
)
Value:
{ \
ggd->gizmos[v] = WM_gizmo_new_ptr(gzt_arrow, gzgroup, NULL); \
RNA_enum_set(ggd->gizmos[v]->ptr, "draw_style", draw_style); \
} \
((void)0)
ATTR_WARN_UNUSED_RESULT const BMVert * v
wmGizmo * WM_gizmo_new_ptr(const wmGizmoType *gzt, wmGizmoGroup *gzgroup, PointerRNA *properties)
Definition: wm_gizmo.c:96

◆ GIZMO_NEW_DIAL

#define GIZMO_NEW_DIAL (   v,
  draw_options 
)
Value:
{ \
ggd->gizmos[v] = WM_gizmo_new_ptr(gzt_dial, gzgroup, NULL); \
RNA_enum_set(ggd->gizmos[v]->ptr, "draw_options", draw_options); \
} \
((void)0)

◆ GIZMO_NEW_PRIM

#define GIZMO_NEW_PRIM (   v,
  draw_style 
)
Value:
{ \
ggd->gizmos[v] = WM_gizmo_new_ptr(gzt_prim, gzgroup, NULL); \
RNA_enum_set(ggd->gizmos[v]->ptr, "draw_style", draw_style); \
} \
((void)0)

◆ MAN_AXIS_RANGE_ROT_END

#define MAN_AXIS_RANGE_ROT_END   (MAN_AXIS_ROT_T + 1)

Definition at line 135 of file transform_gizmo_3d.c.

◆ MAN_AXIS_RANGE_ROT_START

#define MAN_AXIS_RANGE_ROT_START   MAN_AXIS_ROT_X

Definition at line 134 of file transform_gizmo_3d.c.

◆ MAN_AXIS_RANGE_SCALE_END

#define MAN_AXIS_RANGE_SCALE_END   (MAN_AXIS_SCALE_ZX + 1)

Definition at line 145 of file transform_gizmo_3d.c.

◆ MAN_AXIS_RANGE_SCALE_START

#define MAN_AXIS_RANGE_SCALE_START   MAN_AXIS_SCALE_X

Definition at line 144 of file transform_gizmo_3d.c.

◆ MAN_AXIS_RANGE_TRANS_END

#define MAN_AXIS_RANGE_TRANS_END   (MAN_AXIS_TRANS_ZX + 1)

Definition at line 127 of file transform_gizmo_3d.c.

◆ MAN_AXIS_RANGE_TRANS_START

#define MAN_AXIS_RANGE_TRANS_START   MAN_AXIS_TRANS_X

Definition at line 126 of file transform_gizmo_3d.c.

◆ MAN_ITER_AXES_BEGIN

#define MAN_ITER_AXES_BEGIN (   axis,
  axis_idx 
)
Value:
{ \
wmGizmo *axis; \
int axis_idx; \
for (axis_idx = 0; axis_idx < MAN_AXIS_LAST; axis_idx++) { \
axis = gizmo_get_axis_from_index(ggd, axis_idx);
@ MAN_AXIS_LAST
static wmGizmo * gizmo_get_axis_from_index(const GizmoGroup *ggd, const short axis_idx)

Definition at line 180 of file transform_gizmo_3d.c.

◆ MAN_ITER_AXES_END

#define MAN_ITER_AXES_END
Value:
} \
} \
((void)0)

Definition at line 187 of file transform_gizmo_3d.c.

◆ MAN_ROT_C

#define MAN_ROT_C   (MAN_ROT_X | MAN_ROT_Y | MAN_ROT_Z)

Definition at line 98 of file transform_gizmo_3d.c.

◆ MAN_ROT_X

#define MAN_ROT_X   (1 << 3)

Definition at line 95 of file transform_gizmo_3d.c.

◆ MAN_ROT_Y

#define MAN_ROT_Y   (1 << 4)

Definition at line 96 of file transform_gizmo_3d.c.

◆ MAN_ROT_Z

#define MAN_ROT_Z   (1 << 5)

Definition at line 97 of file transform_gizmo_3d.c.

◆ MAN_SCALE_C

#define MAN_SCALE_C   (MAN_SCALE_X | MAN_SCALE_Y | MAN_SCALE_Z)

Definition at line 103 of file transform_gizmo_3d.c.

◆ MAN_SCALE_X

#define MAN_SCALE_X   (1 << 8)

Definition at line 100 of file transform_gizmo_3d.c.

◆ MAN_SCALE_Y

#define MAN_SCALE_Y   (1 << 9)

Definition at line 101 of file transform_gizmo_3d.c.

◆ MAN_SCALE_Z

#define MAN_SCALE_Z   (1 << 10)

Definition at line 102 of file transform_gizmo_3d.c.

◆ MAN_TRANS_C

#define MAN_TRANS_C   (MAN_TRANS_X | MAN_TRANS_Y | MAN_TRANS_Z)

Definition at line 93 of file transform_gizmo_3d.c.

◆ MAN_TRANS_X

#define MAN_TRANS_X   (1 << 0)

Definition at line 90 of file transform_gizmo_3d.c.

◆ MAN_TRANS_Y

#define MAN_TRANS_Y   (1 << 1)

Definition at line 91 of file transform_gizmo_3d.c.

◆ MAN_TRANS_Z

#define MAN_TRANS_Z   (1 << 2)

Definition at line 92 of file transform_gizmo_3d.c.

Typedef Documentation

◆ GizmoGroup

typedef struct GizmoGroup GizmoGroup

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
MAN_AXIS_TRANS_X 
MAN_AXIS_TRANS_Y 
MAN_AXIS_TRANS_Z 
MAN_AXIS_TRANS_C 
MAN_AXIS_TRANS_XY 
MAN_AXIS_TRANS_YZ 
MAN_AXIS_TRANS_ZX 
MAN_AXIS_ROT_X 
MAN_AXIS_ROT_Y 
MAN_AXIS_ROT_Z 
MAN_AXIS_ROT_C 
MAN_AXIS_ROT_T 
MAN_AXIS_SCALE_X 
MAN_AXIS_SCALE_Y 
MAN_AXIS_SCALE_Z 
MAN_AXIS_SCALE_C 
MAN_AXIS_SCALE_XY 
MAN_AXIS_SCALE_YZ 
MAN_AXIS_SCALE_ZX 
MAN_AXIS_LAST 

Definition at line 117 of file transform_gizmo_3d.c.

◆ anonymous enum

anonymous enum
Enumerator
MAN_AXES_ALL 
MAN_AXES_TRANSLATE 
MAN_AXES_ROTATE 
MAN_AXES_SCALE 

Definition at line 151 of file transform_gizmo_3d.c.

Function Documentation

◆ axis_angle_to_gimbal_axis()

static void axis_angle_to_gimbal_axis ( float  gmat[3][3],
const float  axis[3],
const float  angle 
)
static

◆ calc_tw_center()

static void calc_tw_center ( struct TransformBounds tbounds,
const float  co[3] 
)
static

◆ calc_tw_center_with_matrix()

static void calc_tw_center_with_matrix ( struct TransformBounds tbounds,
const float  co[3],
const bool  use_matrix,
const float  matrix[4][4] 
)
static

Definition at line 466 of file transform_gizmo_3d.c.

References calc_tw_center(), and mul_v3_m4v3().

Referenced by ED_transform_calc_gizmo_stats().

◆ drawDial3d()

void drawDial3d ( const TransInfo t)

◆ ED_transform_calc_gizmo_stats()

int ED_transform_calc_gizmo_stats ( const bContext C,
const struct TransformCalcParams params,
struct TransformBounds tbounds 
)

Definition at line 638 of file transform_gizmo_3d.c.

References Freestyle::a, blender::compositor::area(), TransformBounds::axis, TransformBounds::axis_max, TransformBounds::axis_min, BASACT, BASE_SELECTED, BASE_SELECTED_EDITABLE, Nurb::bezt, bGPDcurve_point::bezt, BEZT_ISSEL_IDX, BKE_curve_editNurbs_get(), BKE_editmesh_from_object(), BKE_gpencil_layer_is_editable(), BKE_gpencil_layer_transform_matrix_get(), BKE_object_boundbox_get(), BKE_object_pose_array_get(), BKE_scene_orientation_get_index(), BMEditMesh::bm, bm, BM_elem_flag_test, BM_ELEM_HIDDEN, BM_ELEM_SELECT, BM_ITER_MESH, BM_VERTS_OF_MESH, bPoseChannel::bone, BONE_CONNECTED, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONE_TRANSFORM, Nurb::bp, C, calc_tw_center(), calc_tw_center_with_matrix(), TransformBounds::center, bPose::chanbase, PTCacheEditKey::co, BMVert::co, copy_m3_m3(), copy_m3_m4(), copy_m4_m3(), copy_v3_v3(), CTX_data_edit_object(), CTX_data_expect_evaluated_depsgraph(), CTX_data_gpencil_data(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_area(), CTX_wm_region(), CU_BEZIER, CURVE_HANDLE_NONE, bGPDcurve::curve_points, Lattice::def, depsgraph, EBONE_VISIBLE, ED_gpencil_stroke_can_use(), ED_transform_calc_orientation_from_type_ex(), bArmature::edbo, MetaBall::editelems, Lattice::editlatt, ELEM, BezTriple::f1, BPoint::f1, BezTriple::f2, BezTriple::f3, ListBase::first, PTCacheEditKey::flag, PTCacheEditPoint::flag, Bone::flag, bGPDspoint::flag, bGPDcurve_point::flag, bGPDcurve::flag, Base::flag, FOREACH_EDIT_OBJECT_BEGIN, FOREACH_EDIT_OBJECT_END, GP_CURVE_POINT_SELECT, GP_CURVE_SELECT, GP_SPOINT_SELECT, GP_STROKE_SELECT, GPENCIL_ANY_MODE, GPENCIL_CURVE_EDIT_SESSIONS_ON, View3DOverlay::handle_display, if(), Object::imat, invert_m3(), invert_m4_m4(), PTCacheEditPoint::keys, EditLatt::latt, bGPdata::layers, LISTBASE_FOREACH, TransformBounds::max, MEM_freeN, TransformBounds::min, Object::mode, mul_m3_m3m3(), mul_m4_m4m4(), mul_m4_v3(), mul_v3_fl(), mul_v3_m4v3(), bPoseChannel::next, Nurb::next, Base::next, normalize_m3(), NULL, OB_ARMATURE, OB_CURVE, OB_LATTICE, OB_MBALL, OB_MESH, OB_MODE_ALL_PAINT, OB_MODE_EDIT, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE, OB_MODE_SCULPT, OB_SURF, OBACT, Base::object, ViewLayer::object_bases, Object::obmat, View3D::overlay, params, PE_get_current(), PEK_SELECT, PEK_USE_WCO, PEP_HIDE, SculptSession::pivot_pos, Nurb::pntsu, Lattice::pntsu, Nurb::pntsv, Lattice::pntsv, Lattice::pntsw, PTCacheEdit::points, Object::pose, bPoseChannel::pose_head, Object::protectflag, protectflag_to_drawflags(), protectflag_to_drawflags_ebone(), protectflag_to_drawflags_pchan(), ARegion::regiondata, reset_tw_center(), SCE_ORIENT_DEFAULT, scene, Object::sculpt, SELECT, TFM_ROTATION, Scene::toolsettings, bGPDcurve::tot_curve_points, PTCacheEdit::totpoint, BMesh::totvertsel, transform_convert_pose_transflags_update(), ToolSettings::transform_pivot_point, RegionView3D::tw_axis_matrix, RegionView3D::tw_axis_max, RegionView3D::tw_axis_min, RegionView3D::twdrawflag, RegionView3D::twmat, Nurb::type, Object::type, unit_m3(), unit_m4(), V3D_AROUND_CENTER_BOUNDS, V3D_AROUND_LOCAL_ORIGINS, V3D_ORIENT_GLOBAL, BezTriple::vec, BPoint::vec, BoundBox::vec, PTCacheEditKey::world_co, bGPDspoint::x, and zero_v3().

Referenced by gizmo_modal(), WIDGETGROUP_gizmo_refresh(), WIDGETGROUP_xform_cage_refresh(), and WIDGETGROUP_xform_shear_refresh().

◆ gimbal_axis()

bool gimbal_axis ( Object ob,
float  gmat[3][3] 
)

◆ gizmo_get_axis_color()

static void gizmo_get_axis_color ( const int  axis_idx,
const float  idot[3],
float  r_col[4],
float  r_col_hi[4] 
)
static

◆ gizmo_get_axis_constraint()

static void gizmo_get_axis_constraint ( const int  axis_idx,
bool  r_axis[3] 
)
static

◆ gizmo_get_axis_from_index()

static wmGizmo* gizmo_get_axis_from_index ( const GizmoGroup ggd,
const short  axis_idx 
)
static

◆ gizmo_get_axis_type()

static short gizmo_get_axis_type ( const int  axis_idx)
static

◆ gizmo_get_idot()

static void gizmo_get_idot ( RegionView3D rv3d,
float  r_idot[3] 
)
static

◆ gizmo_is_axis_visible()

static bool gizmo_is_axis_visible ( const RegionView3D rv3d,
const int  twtype,
const float  idot[3],
const int  axis_type,
const int  axis_idx 
)
static

◆ gizmo_line_range()

static void gizmo_line_range ( const int  twtype,
const short  axis_type,
float r_start,
float r_len 
)
static

Sets up r_start and r_len to define arrow line range. Needed to adjust line drawing for combined gizmo axis types.

Definition at line 1143 of file transform_gizmo_3d.c.

References MAN_AXES_SCALE, MAN_AXES_TRANSLATE, V3D_GIZMO_SHOW_OBJECT_ROTATE, V3D_GIZMO_SHOW_OBJECT_SCALE, and V3D_GIZMO_SHOW_OBJECT_TRANSLATE.

Referenced by WIDGETGROUP_gizmo_refresh().

◆ gizmo_modal()

static int gizmo_modal ( bContext C,
wmGizmo widget,
const wmEvent event,
eWM_GizmoFlagTweak   UNUSEDtweak_flag 
)
static

◆ gizmo_orientation_axis()

static uint gizmo_orientation_axis ( const int  axis_idx,
bool *  r_is_plane 
)
static

◆ gizmo_prepare_mat()

static void gizmo_prepare_mat ( const bContext C,
RegionView3D rv3d,
const struct TransformBounds tbounds 
)
static

◆ gizmo_xform_message_subscribe()

static void gizmo_xform_message_subscribe ( wmGizmoGroup gzgroup,
struct wmMsgBus mbus,
Scene scene,
bScreen screen,
ScrArea area,
ARegion region,
const void *  type_fn 
)
static

◆ gizmogroup_init()

static GizmoGroup* gizmogroup_init ( wmGizmoGroup gzgroup)
static

◆ gizmogroup_init_properties_from_twtype()

static void gizmogroup_init_properties_from_twtype ( wmGizmoGroup gzgroup)
static

◆ protectflag_to_drawflags()

static void protectflag_to_drawflags ( short  protectflag,
short *  drawflags 
)
static

◆ protectflag_to_drawflags_ebone()

static void protectflag_to_drawflags_ebone ( RegionView3D rv3d,
const EditBone ebo 
)
static

◆ protectflag_to_drawflags_pchan()

static void protectflag_to_drawflags_pchan ( RegionView3D rv3d,
const bPoseChannel pchan,
short  orientation_index 
)
static

◆ reset_tw_center()

static void reset_tw_center ( struct TransformBounds tbounds)
static

◆ test_rotmode_euler()

static bool test_rotmode_euler ( short  rotmode)
static

Definition at line 563 of file transform_gizmo_3d.c.

References ELEM, ROT_MODE_AXISANGLE, and ROT_MODE_QUAT.

Referenced by gimbal_axis().

◆ VIEW3D_GGT_xform_cage()

void VIEW3D_GGT_xform_cage ( wmGizmoGroupType gzgt)

◆ VIEW3D_GGT_xform_gizmo()

void VIEW3D_GGT_xform_gizmo ( wmGizmoGroupType gzgt)

◆ VIEW3D_GGT_xform_gizmo_context()

void VIEW3D_GGT_xform_gizmo_context ( wmGizmoGroupType gzgt)

◆ VIEW3D_GGT_xform_shear()

void VIEW3D_GGT_xform_shear ( wmGizmoGroupType gzgt)

◆ WIDGETGROUP_gizmo_draw_prepare()

static void WIDGETGROUP_gizmo_draw_prepare ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_gizmo_invoke_prepare()

static void WIDGETGROUP_gizmo_invoke_prepare ( const bContext C,
wmGizmoGroup gzgroup,
wmGizmo gz,
const wmEvent UNUSEDevent 
)
static

◆ WIDGETGROUP_gizmo_message_subscribe()

static void WIDGETGROUP_gizmo_message_subscribe ( const bContext C,
wmGizmoGroup gzgroup,
struct wmMsgBus mbus 
)
static

◆ WIDGETGROUP_gizmo_poll_context()

static bool WIDGETGROUP_gizmo_poll_context ( const struct bContext C,
struct wmGizmoGroupType UNUSEDgzgt 
)
static

◆ WIDGETGROUP_gizmo_poll_generic()

static bool WIDGETGROUP_gizmo_poll_generic ( View3D v3d)
static

◆ WIDGETGROUP_gizmo_poll_tool()

static bool WIDGETGROUP_gizmo_poll_tool ( const struct bContext C,
struct wmGizmoGroupType gzgt 
)
static

◆ WIDGETGROUP_gizmo_refresh()

static void WIDGETGROUP_gizmo_refresh ( const bContext C,
wmGizmoGroup gzgroup 
)
static

Definition at line 1664 of file transform_gizmo_3d.c.

References GizmoGroup::all_hidden, blender::compositor::area(), TransformBounds::axis, BKE_scene_orientation_get_index_from_flag(), C, CTX_data_scene(), CTX_wm_area(), CTX_wm_region(), wmGizmoGroup::customdata, ED_transform_calc_gizmo_stats(), gizmo_get_axis_type(), gizmo_line_range(), gizmo_orientation_axis(), gizmo_prepare_mat(), View3D::gizmo_show_object, gizmogroup_init_properties_from_twtype(), GizmoGroup::gizmos, len, MAN_AXIS_RANGE_ROT_END, MAN_AXIS_RANGE_ROT_START, MAN_AXIS_RANGE_TRANS_END, MAN_AXIS_RANGE_TRANS_START, MAN_AXIS_ROT_X, MAN_AXIS_ROT_Y, MAN_AXIS_ROT_Z, MAN_AXIS_SCALE_X, MAN_AXIS_SCALE_XY, MAN_AXIS_SCALE_Y, MAN_AXIS_SCALE_YZ, MAN_AXIS_SCALE_Z, MAN_AXIS_SCALE_ZX, MAN_AXIS_TRANS_X, MAN_AXIS_TRANS_XY, MAN_AXIS_TRANS_Y, MAN_AXIS_TRANS_YZ, MAN_AXIS_TRANS_Z, MAN_AXIS_TRANS_ZX, MAN_ITER_AXES_BEGIN, MAN_ITER_AXES_END, NULL, ARegion::regiondata, RNA_float_set(), SCE_WORKSPACE_TOOL_FALLBACK, scene, wmGizmo::select_bias, Scene::toolsettings, RegionView3D::twmat, GizmoGroup::twtype, GizmoGroup::twtype_init, GizmoGroup::twtype_prev, wmGizmoGroup::use_fallback_keymap, GizmoGroup::use_twtype_refresh, V3D_GIZMO_SHOW_OBJECT_ROTATE, V3D_GIZMO_SHOW_OBJECT_SCALE, WM_GIZMO_DRAW_OFFSET_SCALE, WM_gizmo_set_flag(), WM_gizmo_set_matrix_location(), WM_gizmo_set_matrix_offset_location(), WM_gizmo_set_matrix_rotation_from_yz_axis(), WM_gizmo_set_matrix_rotation_from_z_axis(), and ToolSettings::workspace_tool_type.

Referenced by VIEW3D_GGT_xform_gizmo(), VIEW3D_GGT_xform_gizmo_context(), and WIDGETGROUP_gizmo_draw_prepare().

◆ WIDGETGROUP_gizmo_setup()

static void WIDGETGROUP_gizmo_setup ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_cage_draw_prepare()

static void WIDGETGROUP_xform_cage_draw_prepare ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_cage_message_subscribe()

static void WIDGETGROUP_xform_cage_message_subscribe ( const bContext C,
wmGizmoGroup gzgroup,
struct wmMsgBus mbus 
)
static

◆ WIDGETGROUP_xform_cage_poll()

static bool WIDGETGROUP_xform_cage_poll ( const bContext C,
wmGizmoGroupType gzgt 
)
static

◆ WIDGETGROUP_xform_cage_refresh()

static void WIDGETGROUP_xform_cage_refresh ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_cage_setup()

static void WIDGETGROUP_xform_cage_setup ( const bContext UNUSEDC,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_shear_draw_prepare()

static void WIDGETGROUP_xform_shear_draw_prepare ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_shear_message_subscribe()

static void WIDGETGROUP_xform_shear_message_subscribe ( const bContext C,
wmGizmoGroup gzgroup,
struct wmMsgBus mbus 
)
static

◆ WIDGETGROUP_xform_shear_poll()

static bool WIDGETGROUP_xform_shear_poll ( const bContext C,
wmGizmoGroupType gzgt 
)
static

◆ WIDGETGROUP_xform_shear_refresh()

static void WIDGETGROUP_xform_shear_refresh ( const bContext C,
wmGizmoGroup gzgroup 
)
static

◆ WIDGETGROUP_xform_shear_setup()

static void WIDGETGROUP_xform_shear_setup ( const bContext UNUSEDC,
wmGizmoGroup gzgroup 
)
static

Variable Documentation

◆ 

struct { ... } g_tw_axis_range[2]
Initial value:
= {
{0.02f, 0.1f},
{0.175f, 0.25f},
}

Referenced by gizmo_get_axis_color(), and gizmo_is_axis_visible().

◆ max

Definition at line 107 of file transform_gizmo_3d.c.

Referenced by actkeys_previewrange_exec(), actkeys_viewall(), btAxisSweep3Internal< BP_FP_INT_TYPE >::addHandle(), Freestyle::AppView::AddModel(), FallbackTransform::applyRGB(), Freestyle::AppView::AppView(), arg_handle_python_exit_code_set(), arg_handle_threads_set(), arrayModifier_doArray(), Freestyle::OccluderSource::averageOccluderArea(), bevelinside(), BKE_boundbox_alloc_unit(), BKE_boundbox_init_from_minmax(), BKE_curve_boundbox_get(), BKE_curve_center_bounds(), BKE_curve_minmax(), BKE_curve_texspace_calc(), BKE_displist_minmax(), BKE_editmesh_cache_calc_minmax(), BKE_editmesh_cage_boundbox_get(), BKE_fcurve_calc_range(), BKE_gpencil_centroid_3d(), BKE_hair_boundbox_get(), BKE_lattice_center_bounds(), BKE_lattice_minmax(), BKE_lattice_minmax_dl(), BKE_mask_spline_feather_collapse_inner_loops(), BKE_mball_center_bounds(), BKE_mball_minmax(), BKE_mball_minmax_ex(), BKE_mball_texspace_calc(), BKE_mesh_boundbox_get(), BKE_mesh_center_bounds(), BKE_mesh_texspace_calc(), BKE_mesh_wrapper_minmax(), BKE_nlastrip_within_bounds(), BKE_nurb_minmax(), BKE_object_boundbox_calc_from_mesh(), BKE_pbvh_bounding_box(), BKE_pointcloud_boundbox_get(), BKE_tracking_marker_pattern_minmax(), BKE_volume_boundbox_get(), blackbody_temperature_to_rgb_table(), blender_camera_from_object(), Freestyle::BlenderStrokeRenderer::BlenderStrokeRenderer(), BLI_convexhull_aabb_fit_hull_2d(), bm_corners_to_loops_ex(), BM_face_calc_bounds_expand(), BM_face_calc_center_bounds(), BM_face_calc_center_bounds_vcos(), BM_face_uv_minmax(), bm_vert_pair_best_face_get(), bm_vert_pair_share_best_splittable_face_cb(), bmo_average_vert_facedata_exec(), bmo_collapsecon_do_layer(), boundbox_armature(), boundbox_displist_object(), boundbox_gpencil(), boundbox_lattice(), Hair::Curve::bounds_grow(), box_minmax_bounds_m4(), BPy_BMElem_PySeq_As_Array(), BPy_BMElem_PySeq_As_Array_FAST(), BPy_FloatProperty(), BPy_FloatVectorProperty(), BPy_IntProperty(), BPy_IntVectorProperty(), brush_edit_init(), bsdf_microfacet_multi_ggx_glass_fresnel_setup(), bsdf_microfacet_multi_ggx_glass_sample(), bsdf_microfacet_multi_ggx_glass_setup(), bsdf_oren_nayar_get_intensity(), bsdf_principled_hair_sample(), blender::deg::DepsgraphNodeBuilder::build_object(), blender::compositor::KeyingScreenOperation::buildVoronoiTriangulation(), bundle_midpoint(), bvh_aligned_node_intersect(), bvh_unaligned_node_intersect_child(), calc_action_range(), Subpatch::calc_num_inner_verts(), Subpatch::calc_num_triangles(), calc_ortho_extent(), calculate_collision_balls(), calculate_principled_diffuse_brdf(), calculateCenterBound(), Freestyle::GridDensityProvider::calculateQuickProscenium(), Hair::Curve::cardinal_keys_for_step(), Clamp(), blender::nodes::clamp_attribute(), clamp_axis_max_v3(), clamp_f(), clamp_float_to_int(), clamp_i(), clamp_v2(), clamp_v2_v2v2(), clamp_v3(), clamp_v3_v3v3(), clamp_v4(), clamp_v4_v4v4(), blender::nodes::clamp_value(), clamp_z(), clampis_uint(), clip_view_calculate_view_selection(), clipUVTransform(), SVMCompiler::CompilerState::CompilerState(), btConvexHullInternal::compute(), BVHUnaligned::compute_node_transform(), blender::LoadFactor::compute_total_and_usable_slots(), ClampNode::constant_fold(), BVHBuild::create_leaf_node(), BVHBuild::create_object_leaf_nodes(), create_subd_mesh(), GeometryManager::create_volume_mesh(), Freestyle::crossesProscenium(), CubeTriangleIsect::CubeTriangleIsect(), cuboid_do(), curvebounds(), curvemap_minmax_curve(), CustomData_data_dominmax(), CustomData_data_initminmax(), D_ggx(), D_ggx_aniso(), CPUDevice::denoise_openimagedenoise(), CPUDevice::denoising_accumulate(), CPUDevice::denoising_non_local_means(), Freestyle::AppView::DetachModel(), blender::compositor::PlaneDistortWarpImageOperation::determineDependingAreaOfInterest(), device_only_memory< T >::device_only_memory(), LightManager::device_update_background(), LightManager::device_update_points(), diagonalize(), QuadDice::dice(), direction_to_mirrorball(), dirty_mask_apply_task_cb(), dist_to_rect(), distribute_grid(), do_2d_mapping(), draw_distortion(), draw_spline_points(), DRW_culling_min_max_test(), DRW_debug_m4_as_bbox(), drw_sculpt_generate_calls(), dynamic_paint_create_uv_surface_direct_cb(), dynamicPaint_createUVSurface(), ED_armature_origin_set(), ED_gizmo_arrow3d_set_ui_range(), ED_gpencil_layer_frames_select_box(), ED_markers_get_minmax(), ED_mask_selected_minmax(), ED_masklayer_frames_select_box(), ED_uvedit_center_multi(), ED_view3d_clipping_clamp_minmax(), edbm_point_normals_modal(), edge_pan_speed(), eevee_lightprobes_culling_test(), EEVEE_shadows_caster_register(), MEM_CacheLimiter< T >::enforce_limits(), libmv::euclidean_resection::EuclideanResectionEPnP(), libmv::euclidean_resection::EuclideanResectionPPnP(), blender::io::alembic::export_startjob(), blender::io::usd::export_startjob(), fcm_envelope_evaluate(), filter_calculate_scale(), filter_calculate_scale_sse(), float4_store_half(), float_uint(), libmv::FloatArrayToScaledByteArray(), fresnel_dielectric(), libmv::FundamentalToEssential(), TileManager::gen_tiles(), VolumeMeshBuilder::generate_vertices_and_quads(), blender::nodes::geo_node_bounding_box_exec(), blender::nodes::geo_node_mesh_primitive_line_exec(), blender::nodes::geo_node_triangulate_exec(), BlenderSync::get_buffer_params(), get_divider(), blender::string_search::get_fuzzy_match_errors(), GeometryNode::get_group(), get_index_column_width(), get_keyframe_extents(), Scene::get_max_closure_count(), blender::io::alembic::get_min_max_time(), blender::io::alembic::get_min_max_time_ex(), Device::get_multi_device(), TileManager::get_neighbor_index(), get_nlastrip_extents(), get_nlm_coords_window(), ShaderManager::get_requested_features(), ShaderManager::get_requested_graph_features(), DeviceTask::get_subtask_count(), Subpatch::get_vert_along_grid_edge(), blender::io::alembic::get_weight_and_index(), Freestyle::Geometry::Polygon< Point >::getBBox(), Freestyle::AppView::GetFocalLength(), BVHNode::getSubtreeSize(), CBlendThumb::GetThumbnail(), GHOST_WindowWin32::GHOST_WindowWin32(), gizmo2d_xform_refresh(), gizmo_value_from_offset(), gpencil_find_end_of_stroke_idx(), GPENCIL_OT_vertex_color_brightness_contrast(), gpencil_snap_cursor_to_sel(), gpu_shader_math(), gpu_shader_mix_rgb(), gpu_str_skip_token(), graphkeys_previewrange_exec(), BoundBox::grow(), BoundBox::grow_safe(), image_view_selected_exec(), IMB_exr_add_channel(), IMB_exr_channel_rect(), import_startjob(), Freestyle::GeomUtils::include2dSeg2dArea(), iTaSC::WSDLSSolver::init(), iTaSC::WDLSSolver::init(), initTimeSlide(), InnerNode::InnerNode(), Freestyle::Grid::insertOccluder(), intersect(), BoundBox::intersect(), Freestyle::GeomUtils::intersect2dSeg2dArea(), invert_m4_m4_fallback(), libmv::InvertNukeDistortionModel(), isect_aabb_v3(), isect_tri_tri_v3_ex(), kdtree2d_isect_tri(), kdtree2d_isect_tri_recursive(), kernel_filter_combine_halves(), kernel_filter_construct_transform(), kernel_filter_detect_outliers(), kernel_filter_divide_shadow(), kernel_filter_finalize(), kernel_filter_get_feature(), kernel_filter_nlm_blur(), kernel_filter_nlm_calc_weight(), kernel_filter_nlm_construct_gramian(), kernel_filter_nlm_update_output(), kernel_ies_interp(), Hair::Curve::keys_for_step(), layerDoMinMax_mloop_origspace(), layerDoMinMax_mloopcol(), layerDoMinMax_mloopuv(), layerDoMinMax_propcol(), layerInitMinMax_mloop_origspace(), layerInitMinMax_mloopcol(), layerInitMinMax_mloopuv(), layerInitMinMax_propcol(), light_spread_attenuation(), light_spread_clamp_area_light(), linear_solver_ensure_matrix_construct(), DenoiseTask::load_input_pixels(), OIIOImageLoader::load_metadata(), Session::map_neighbor_tiles(), markers_selectkeys_between(), mask_filter_task_cb(), match_texture_space_exec(), math_trimatrix_cholesky(), math_vector_max(), mathutils_rna_vector_set(), mv::Tracks::MaxClip(), mv::Tracks::MaxFrame(), libmv::Tracks::MaxImage(), mv::Tracks::MaxTrack(), libmv::Tracks::MaxTrack(), merge(), mesh_init_origspace(), mf_eval_phase_glass(), mf_eval_phase_glossy(), mf_ggx_aniso_pdf(), mf_ggx_pdf(), mf_glass_pdf(), mf_lambda(), mf_sampleP22_11(), libmv::Dogleg< Function, Jacobian, Solver >::minimize(), libmv::LevenbergMarquardt< Function, Jacobian, Solver >::minimize(), minmax_v2v2_v2(), minmax_v3_v3v3(), minmax_v3v3_v3(), minmax_v4v4_v4(), blender::gpu::GLTexture::mip_range_set(), mirrorball_to_direction(), modifyMesh(), mouse_on_rect(), TileManager::next(), nlaedit_previewrange_exec(), nlm_blur_horizontal(), NODE_DEFINE(), node_get_selected_minmax(), node_group_make_from_selected(), node_group_make_insert_selected(), node_shader_gpu_tex_mapping(), blender::dot::NodeWithSocketsRef::NodeWithSocketsRef(), object_motion_steps(), object_origin_set_exec(), object_warp_transverts(), object_warp_transverts_minmax_x(), object_warp_verts_exec(), Freestyle::BoxGrid::OccluderData::OccluderData(), overhang_remap(), Freestyle::GeomUtils::overlapTriangleBox(), OVERLAY_bounds(), PAINT_OT_vertex_color_brightness_contrast(), paint_stroke_integrate_overlap(), parse_int_clamp(), parse_int_range_relative_clamp(), parse_int_range_relative_clamp_n(), parse_int_relative_clamp(), parse_int_strict_range(), particle_intersect_mesh(), particle_system_minmax(), particles_fluid_step(), PE_minmax(), point_density_texture_space(), pose_brush_grow_factor_task_cb_ex(), DiagSplit::post_split(), mv::PredictMarkerPosition(), project_paint_bucket_bounds(), project_paint_delayed_face_init(), prop_subscript_ass_array_slice__float_recursive(), prop_subscript_ass_array_slice__int_recursive(), radial_control_invoke(), blender::nodes::random_value_in_range(), blender::nodes::randomize_attribute(), blender::nodes::randomize_attribute_on_component(), BVHBuild::range_within_max_leaf_size(), ratiod(), ratiof(), ray_triangle_intersect(), RB_shape_trimesh_update(), RE_point_density_sample(), rect_clip(), rect_light_sample(), btAxisSweep3Internal< BP_FP_INT_TYPE >::removeHandle(), blender::bke::calc_edges::reserve_hash_maps(), DualConInputReader::reset(), rgb_to_hsv(), RNA_def_property_range(), RNA_def_property_ui_range(), RNA_property_float_clamp(), RNA_property_int_clamp(), sample_cos_hemisphere(), blender::nodes::sample_mesh_surface(), sample_uniform_hemisphere(), QuadDice::scale_factor(), scopes_update_cb(), scopes_update_reduce(), screen_geom_area_map_find_active_scredge(), screen_geom_vertices_scale_pass(), select_cache_populate(), selected_boundbox(), blender::io::gpencil::GpencilIO::selected_objects_boundbox_calc(), selected_tracking_boundbox(), libmv::SelectKeyframesBasedOnGRICAndVariance(), seq_time_update_meta_strip(), SeqTransDataBounds(), session_print(), TileManager::set_samples(), TileManager::set_tiles(), DenoisingTask::setup_denoising_buffer(), sh_node_clamp_expand_in_mf_network(), shader_bsdf_alpha(), shader_prepare_closures(), shift_cos_in(), smoothmin(), snap_bound_box_check_dist(), snap_curs_to_sel_ex(), soft_range_round_down(), soft_range_round_up(), spline_under_mouse_get(), SVMCompiler::stack_find_offset(), statvis_calc_distort(), statvis_calc_overhang(), statvis_calc_sharp(), statvis_calc_thickness(), EdgeDice::stitch_triangles(), subsurface_color_pow(), subsurface_random_walk(), svm_brightness_contrast(), svm_mix_light(), svm_node_clamp(), svm_node_hsv(), svm_node_min_max(), svm_node_normal_map(), svm_node_principled_volume(), svm_node_set_bump(), svm_node_wavelength(), svm_vector_math(), Mesh::tessellate(), TEST(), text_cursor_set_to_pos_wrapped(), text_get_cursor_rel(), thickness_remap(), transform_decompose(), triangle_light_pdf(), triangle_light_sample(), blender::nodes::try_dispatch_float_math_fl_fl_to_fl(), txt_wrap_move_bol(), txt_wrap_move_eol(), ui_def_but(), ui_def_but_rna(), ui_def_but_rna_propname(), ui_draw_but_HSV_v(), ui_handle_list_event(), ui_numedit_but_HSVCUBE(), ui_selectcontext_apply(), uiDefBut(), uiDefButBit(), uiDefButBitC(), uiDefButBitF(), uiDefButBitI(), uiDefButBitS(), uiDefButC(), uiDefButF(), uiDefButI(), uiDefButR(), uiDefButR_prop(), uiDefButS(), uiDefIconBut(), uiDefIconButBit(), uiDefIconButBitC(), uiDefIconButBitF(), uiDefIconButBitI(), uiDefIconButBitS(), uiDefIconButC(), uiDefIconButF(), uiDefIconButI(), uiDefIconButR(), uiDefIconButR_prop(), uiDefIconButS(), uiDefIconTextBut(), uiDefIconTextButBit(), uiDefIconTextButBitC(), uiDefIconTextButBitF(), uiDefIconTextButBitI(), uiDefIconTextButBitS(), uiDefIconTextButC(), uiDefIconTextButF(), uiDefIconTextButI(), uiDefIconTextButR(), uiDefIconTextButR_prop(), uiDefIconTextButS(), blender::nodes::update_elimination_mask_based_on_density_factors(), BlenderSession::update_resumable_tile_manager(), BVHNode::update_time(), btAxisSweep3Internal< BP_FP_INT_TYPE >::updateHandle(), iTaSC::Armature::updateJoint(), util_hash_to_float(), util_image_resize_pixels(), uv_map_clip_correct_multi(), uv_weld_align(), view3d_all_exec(), view3d_boundbox_clip_m4(), view3d_from_minmax(), view3d_from_minmax_multi(), view3d_localview_init(), view3d_object_calc_minmax(), viewselected_exec(), voronoi_distance_2d(), voronoi_distance_3d(), voronoi_distance_4d(), WIDGETGROUP_camera_refresh(), Camera::world_to_raster_size(), wrap(), wrapf(), xml_read_mesh(), Freestyle::AppView::zfar(), and Freestyle::AppView::znear().

◆ min

Definition at line 107 of file transform_gizmo_3d.c.

Referenced by gizmo_is_axis_visible().