Blender V4.3
dial3d_gizmo.cc File Reference
#include "MEM_guardedalloc.h"
#include "BLI_math_matrix.h"
#include "BLI_math_rotation.h"
#include "BKE_context.hh"
#include "GPU_immediate.hh"
#include "GPU_immediate_util.hh"
#include "GPU_matrix.hh"
#include "GPU_select.hh"
#include "GPU_state.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "WM_api.hh"
#include "WM_types.hh"
#include "ED_gizmo_library.hh"
#include "ED_screen.hh"
#include "ED_transform.hh"
#include "ED_view3d.hh"
#include "../gizmo_library_intern.hh"

Go to the source code of this file.

Classes

struct  DialInteraction
 
struct  Dial3dParams
 

Functions

Dial Gizmo API
static void GIZMO_GT_dial_3d (wmGizmoType *gzt)
 
void ED_gizmotypes_dial_3d ()
 

Dial Gizmo

Circle shaped gizmo for circular interaction. Currently no separate handling, use with operator only.

3D Gizmo

  • matrix[0] is derived from Y and Z.
  • matrix[1] is 'up' when DialGizmo.use_start_y_axis is set.
  • matrix[2] is the axis the dial rotates around (all dials).
#define DIAL_WIDTH   1.0f
 
#define DIAL_CLIP_BIAS   0.02
 
static void dial_3d_draw_util (const float matrix_final[4][4], const float line_width, const float color[4], const bool select, Dial3dParams *params)
 
static void dial_geom_draw (const float color[4], const float line_width, const bool select, const float clip_plane_mat[4][4], const float clip_plane[4], const float arc_partial_angle, const float arc_inner_factor, const int draw_options)
 
static void dial_ghostarc_draw_helpline (const float angle, const float co_outer[3], const float color[4], const float line_width)
 
static void dial_ghostarc_draw_incremental_angle (const float incremental_angle, const float offset, const float angle_delta)
 
static void dial_ghostarc_draw (const float angle_ofs, float angle_delta, const float arc_inner_factor, const float color[4])
 
static void dial_ghostarc_get_angles (const wmGizmo *gz, const wmEvent *event, const ARegion *region, const float mat[4][4], const float co_outer[3], float *r_start, float *r_delta)
 
static void dial_ghostarc_draw_with_helplines (const float angle_ofs, const float angle_delta, const float arc_inner_factor, const float color_helpline[4], const int draw_options)
 
static void dial_draw_intern (const bContext *C, wmGizmo *gz, const bool select, const bool highlight, float clip_plane[4])
 
static void gizmo_dial_draw_select (const bContext *C, wmGizmo *gz, int select_id)
 
static void gizmo_dial_draw (const bContext *C, wmGizmo *gz)
 
static int gizmo_dial_modal (bContext *C, wmGizmo *gz, const wmEvent *event, eWM_GizmoFlagTweak tweak_flag)
 
static void gizmo_dial_exit (bContext *C, wmGizmo *gz, const bool cancel)
 
static void gizmo_dial_setup (wmGizmo *gz)
 
static int gizmo_dial_invoke (bContext *, wmGizmo *gz, const wmEvent *event)
 

Macro Definition Documentation

◆ DIAL_CLIP_BIAS

#define DIAL_CLIP_BIAS   0.02

Definition at line 77 of file dial3d_gizmo.cc.

Referenced by gizmo_dial_draw(), and gizmo_dial_draw_select().

◆ DIAL_WIDTH

Function Documentation

◆ dial_3d_draw_util()

static void dial_3d_draw_util ( const float matrix_final[4][4],
const float line_width,
const float color[4],
const bool select,
Dial3dParams * params )
static

◆ dial_draw_intern()

◆ dial_geom_draw()

◆ dial_ghostarc_draw()

◆ dial_ghostarc_draw_helpline()

◆ dial_ghostarc_draw_incremental_angle()

static void dial_ghostarc_draw_incremental_angle ( const float incremental_angle,
const float offset,
const float angle_delta )
static

◆ dial_ghostarc_draw_with_helplines()

static void dial_ghostarc_draw_with_helplines ( const float angle_ofs,
const float angle_delta,
const float arc_inner_factor,
const float color_helpline[4],
const int draw_options )
static

◆ dial_ghostarc_get_angles()

◆ ED_gizmotypes_dial_3d()

void ED_gizmotypes_dial_3d ( )

Definition at line 729 of file dial3d_gizmo.cc.

References GIZMO_GT_dial_3d(), and WM_gizmotype_append().

Referenced by ED_spacetypes_init().

◆ gizmo_dial_draw()

◆ gizmo_dial_draw_select()

static void gizmo_dial_draw_select ( const bContext * C,
wmGizmo * gz,
int select_id )
static

◆ gizmo_dial_exit()

◆ gizmo_dial_invoke()

◆ gizmo_dial_modal()

◆ gizmo_dial_setup()

static void gizmo_dial_setup ( wmGizmo * gz)
static

Definition at line 588 of file dial3d_gizmo.cc.

References copy_v3_v3(), and wmGizmo::matrix_basis.

Referenced by GIZMO_GT_dial_3d().

◆ GIZMO_GT_dial_3d()