|
Blender V4.3
|
#include "MEM_guardedalloc.h"#include "BLI_math_color.h"#include "BLI_math_matrix.h"#include "BLI_math_vector_types.hh"#include "BKE_context.hh"#include "GPU_batch.hh"#include "GPU_batch_utils.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 "RNA_enum_types.hh"#include "WM_api.hh"#include "WM_types.hh"#include "ED_gizmo_library.hh"#include "ED_view3d.hh"#include "UI_interface_icons.hh"#include "../gizmo_library_intern.hh"Go to the source code of this file.
Classes | |
| struct | ButtonGizmo2D |
Functions | |
Button Gizmo API | |
| static void | GIZMO_GT_button_2d (wmGizmoType *gzt) |
| void | ED_gizmotypes_button_2d () |
Internal API | |
| #define | CIRCLE_RESOLUTION_3D 32 |
| static void | button2d_geom_draw_backdrop (const wmGizmo *gz, const float color[4], const float fill_alpha, const bool select, const float screen_scale) |
| static void | button2d_draw_intern (const bContext *C, wmGizmo *gz, const bool select, const bool highlight) |
| static void | gizmo_button2d_draw_select (const bContext *C, wmGizmo *gz, int select_id) |
| static void | gizmo_button2d_draw (const bContext *C, wmGizmo *gz) |
| static int | gizmo_button2d_test_select (bContext *C, wmGizmo *gz, const int mval[2]) |
| static int | gizmo_button2d_cursor_get (wmGizmo *gz) |
| static bool | gizmo_button2d_bounds (bContext *C, wmGizmo *gz, rcti *r_bounding_box) |
| static void | gizmo_button2d_free (wmGizmo *gz) |
| #define CIRCLE_RESOLUTION_3D 32 |
Definition at line 327 of file button2d_gizmo.cc.
Referenced by gizmo_button2d_bounds().
|
static |
Definition at line 122 of file button2d_gizmo.cc.
References ARRAY_SIZE, BLI_assert, button2d_geom_draw_backdrop(), copy_v3_fl(), CTX_wm_region_view3d(), ED_GIZMO_BUTTON_SHOW_BACKDROP, ED_GIZMO_BUTTON_SHOW_HELPLINE, ED_GIZMO_BUTTON_SHOW_OUTLINE, wmGizmoGroupType::flag, gizmo_color_get(), GPU_batch_draw(), GPU_batch_program_set_builtin(), GPU_batch_tris_from_poly_2d_encoded(), GPU_batch_uniform_1f, GPU_batch_uniform_2fv, GPU_batch_wire_from_poly_2d_encoded(), GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_line_smooth(), GPU_matrix_mul, GPU_matrix_pop(), GPU_matrix_push(), GPU_matrix_scale_2f(), GPU_matrix_translate_2f(), GPU_polygon_smooth(), GPU_PRIM_LINE_STRIP, GPU_SHADER_3D_POLYLINE_UNIFORM_COLOR, GPU_SHADER_3D_UNIFORM_COLOR, GPU_shader_uniform_4f(), GPU_vertformat_attr_add(), GPU_viewport_size_get_f(), ButtonGizmo2D::icon, ICON_DEFAULT_HEIGHT, ICON_DEFAULT_WIDTH, immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniform1f(), immUniform2fv(), immUniformColor4fv(), immVertex3fv(), immVertexFormat(), ButtonGizmo2D::is_init, wmGizmo::line_width, mat4_to_scale(), wmGizmo::matrix_basis, MEM_freeN(), MEM_mallocN, mul_m4_m4m4(), normalize_m4_m4(), wmGizmo::parent_gzgroup, pos, wmGizmo::ptr, rgb_to_grayscale(), RNA_enum_get(), RNA_float_get(), RNA_property_enum_get(), RNA_property_is_set(), RNA_property_string_get(), RNA_property_string_length(), RNA_struct_find_property(), select(), ButtonGizmo2D::shape_batch, transpose_m4(), wmGizmoGroup::type, UI_icon_draw_alpha(), UI_SCALE_FAC, UNPACK4, RegionView3D::viewmat, WM_gizmo_calc_matrix_final(), WM_gizmo_calc_matrix_final_no_offset(), WM_GIZMOGROUPTYPE_3D, and zero_v3().
Referenced by gizmo_button2d_draw(), and gizmo_button2d_draw_select().
|
static |
Definition at line 66 of file button2d_gizmo.cc.
References acosf, ceilf, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_SHADER_3D_POLYLINE_UNIFORM_COLOR, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), GPU_viewport_size_get_f(), imm_draw_circle_fill_3d(), imm_draw_circle_wire_3d(), immBindBuiltinProgram(), immUnbindProgram(), immUniform1f(), immUniform2fv(), immUniformColor4fv(), immVertexFormat(), int, wmGizmo::line_width, M_PI, max_ff(), min_ff(), pos, select(), UNPACK3, and UNUSED_VARS.
Referenced by button2d_draw_intern().
| void ED_gizmotypes_button_2d | ( | ) |
Definition at line 431 of file button2d_gizmo.cc.
References GIZMO_GT_button_2d(), and WM_gizmotype_append().
Referenced by ED_spacetypes_init().
Definition at line 328 of file button2d_gizmo.cc.
References CIRCLE_RESOLUTION_3D, CTX_wm_area(), CTX_wm_region(), ED_view3d_pixel_size_no_ui_scale(), ED_view3d_project_float_global(), wmGizmoGroupType::flag, mat4_to_scale(), wmGizmo::parent_gzgroup, wmGizmoGroup::type, UI_SCALE_FAC, V3D_PROJ_RET_OK, V3D_PROJ_TEST_NOP, WM_gizmo_calc_matrix_final(), WM_gizmo_calc_matrix_final_no_offset(), WM_GIZMOGROUPTYPE_3D, rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by GIZMO_GT_button_2d().
Definition at line 319 of file button2d_gizmo.cc.
References wmGizmo::ptr, RNA_boolean_get(), WM_CURSOR_DEFAULT, and WM_CURSOR_NSEW_SCROLL.
Referenced by GIZMO_GT_button_2d().
Definition at line 285 of file button2d_gizmo.cc.
References button2d_draw_intern(), GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, wmGizmo::state, and WM_GIZMO_STATE_HIGHLIGHT.
Referenced by GIZMO_GT_button_2d().
Definition at line 279 of file button2d_gizmo.cc.
References button2d_draw_intern(), and GPU_select_load_id().
Referenced by GIZMO_GT_button_2d().
|
static |
Definition at line 370 of file button2d_gizmo.cc.
References ARRAY_SIZE, and GPU_BATCH_DISCARD_SAFE.
Referenced by GIZMO_GT_button_2d().
Definition at line 294 of file button2d_gizmo.cc.
References copy_v2_v2(), gizmo_window_project_2d(), len_squared_v2(), wmGizmo::matrix_basis, mul_v2_fl(), wmGizmo::scale_final, and sub_v2_v2().
Referenced by GIZMO_GT_button_2d().
|
static |
Definition at line 385 of file button2d_gizmo.cc.
References wmGizmoType::cursor_get, wmGizmoType::draw, wmGizmoType::draw_select, ED_GIZMO_BUTTON_SHOW_BACKDROP, ED_GIZMO_BUTTON_SHOW_HELPLINE, ED_GIZMO_BUTTON_SHOW_OUTLINE, wmGizmoType::free, gizmo_button2d_bounds(), gizmo_button2d_cursor_get(), gizmo_button2d_draw(), gizmo_button2d_draw_select(), gizmo_button2d_free(), gizmo_button2d_test_select(), wmGizmoType::idname, PROP_BYTESTRING, PROP_ENUM, PROP_NONE, PROP_STRING, RNA_def_boolean(), RNA_def_enum_flag(), RNA_def_float(), RNA_def_property(), RNA_def_property_enum_items(), rna_enum_icon_items, wmGizmoType::screen_bounds_get, wmGizmoType::srna, wmGizmoType::struct_size, and wmGizmoType::test_select.
Referenced by ED_gizmotypes_button_2d().