|
Blender V4.3
|
#include <algorithm>#include <cfloat>#include <climits>#include <cmath>#include <cstring>#include "MEM_guardedalloc.h"#include "DNA_scene_types.h"#include "DNA_userdef_types.h"#include "BLI_rect.h"#include "BLI_string.h"#include "BLI_timecode.h"#include "BLI_utildefines.h"#include "BLI_vector.hh"#include "GPU_immediate.hh"#include "GPU_matrix.hh"#include "GPU_state.hh"#include "WM_api.hh"#include "BLF_api.hh"#include "UI_interface.hh"#include "UI_view2d.hh"Go to the source code of this file.
Classes | |
| struct | ParallelLinesSet |
Macros | |
| #define | MIN_MAJOR_LINE_DISTANCE (U.v2d_min_gridsize * UI_SCALE_FAC) |
Typedefs | |
| using | PositionToString |
Functions | |
| static float | select_major_distance (const float *possible_distances, uint amount, float pixel_width, float view_width) |
| static uint | view2d_major_step_x__discrete (const View2D *v2d) |
| static float | view2d_major_step_x__continuous (const View2D *v2d) |
| static float | view2d_major_step_y__continuous (const View2D *v2d) |
| static float | view2d_major_step_x__time (const View2D *v2d, const Scene *scene) |
| static void | get_parallel_lines_draw_steps (const ParallelLinesSet *lines, float region_start, float region_end, float *r_first, uint *r_steps) |
| static void | draw_parallel_lines (const ParallelLinesSet *lines, const rctf *rect, const rcti *rect_mask, const uchar color[3], char direction) |
| static void | view2d_draw_lines_internal (const View2D *v2d, const ParallelLinesSet *lines, const uchar color[3], char direction) |
| static void | view2d_draw_lines (const View2D *v2d, float major_distance, bool display_minor_lines, char direction) |
| static void | draw_horizontal_scale_indicators (const ARegion *region, const View2D *v2d, float distance, const rcti *rect, PositionToString to_string, void *to_string_data, int colorid) |
| static void | draw_vertical_scale_indicators (const ARegion *region, const View2D *v2d, float distance, float display_offset, const rcti *rect, PositionToString to_string, void *to_string_data, int colorid) |
| static void | view_to_string__frame_number (void *, float v2d_pos, float, char *r_str, uint str_maxncpy) |
| static void | view_to_string__time (void *user_data, float v2d_pos, float v2d_step, char *r_str, uint str_maxncpy) |
| static void | view_to_string__value (void *, float v2d_pos, float v2d_step, char *r_str, uint str_maxncpy) |
| float | UI_view2d_grid_resolution_x__frames_or_seconds (const View2D *v2d, const Scene *scene, bool display_seconds) |
| float | UI_view2d_grid_resolution_y__values (const View2D *v2d) |
| void | UI_view2d_draw_lines_x__discrete_values (const View2D *v2d, bool display_minor_lines) |
| void | UI_view2d_draw_lines_x__values (const View2D *v2d) |
| void | UI_view2d_draw_lines_y__values (const View2D *v2d) |
| void | UI_view2d_draw_lines_x__discrete_time (const View2D *v2d, const Scene *scene, bool display_minor_lines) |
| void | UI_view2d_draw_lines_x__discrete_frames_or_seconds (const View2D *v2d, const Scene *scene, bool display_seconds, bool display_minor_lines) |
| void | UI_view2d_draw_lines_x__frames_or_seconds (const View2D *v2d, const Scene *scene, bool display_seconds) |
| static void | UI_view2d_draw_scale_x__discrete_values (const ARegion *region, const View2D *v2d, const rcti *rect, int colorid) |
| static void | UI_view2d_draw_scale_x__discrete_time (const ARegion *region, const View2D *v2d, const rcti *rect, const Scene *scene, int colorid) |
| static void | UI_view2d_draw_scale_x__values (const ARegion *region, const View2D *v2d, const rcti *rect, int colorid) |
| void | UI_view2d_draw_scale_y__values (const ARegion *region, const View2D *v2d, const rcti *rect, int colorid) |
| void | UI_view2d_draw_scale_y__block (const ARegion *region, const View2D *v2d, const rcti *rect, int colorid) |
| void | UI_view2d_draw_scale_x__discrete_frames_or_seconds (const ARegion *region, const View2D *v2d, const rcti *rect, const Scene *scene, bool display_seconds, int colorid) |
| void | UI_view2d_draw_scale_x__frames_or_seconds (const ARegion *region, const View2D *v2d, const rcti *rect, const Scene *scene, bool display_seconds, int colorid) |
Variables | |
| static const float | discrete_value_scales [] |
| static const float | continuous_value_scales [] |
| #define MIN_MAJOR_LINE_DISTANCE (U.v2d_min_gridsize * UI_SCALE_FAC) |
Definition at line 40 of file view2d_draw.cc.
Referenced by select_major_distance().
| using PositionToString |
Definition at line 265 of file view2d_draw.cc.
|
static |
Definition at line 268 of file view2d_draw.cc.
References abs(), BLF_batch_draw_begin(), BLF_batch_draw_end(), BLF_default(), BLF_draw_default(), BLF_width(), BLI_rcti_size_x(), ceil(), distance(), ParallelLinesSet::distance, get_parallel_lines_draw_steps(), GPU_matrix_pop_projection(), GPU_matrix_push_projection(), View2D::mask, max_ff(), ParallelLinesSet::offset, steps, to_string(), UI_FontThemeColor(), UI_SCALE_FAC, UI_view2d_region_to_view_x(), UI_view2d_scale_get_x(), UI_view2d_view_to_region_x(), UNLIKELY, wmOrtho2_region_pixelspace(), rcti::xmax, rcti::xmin, and rcti::ymin.
Referenced by UI_view2d_draw_scale_x__discrete_time(), UI_view2d_draw_scale_x__discrete_values(), and UI_view2d_draw_scale_x__values().
|
static |
| rect_mask | Region size in pixels. |
Definition at line 160 of file view2d_draw.cc.
References BLI_assert, BLI_rcti_size_x(), BLI_rcti_size_y(), ParallelLinesSet::distance, get_parallel_lines_draw_steps(), GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_LINES, GPU_SHADER_3D_POLYLINE_UNIFORM_COLOR, GPU_SHADER_3D_UNIFORM_COLOR, GPU_vertformat_attr_add(), GPU_viewport_size_get_f(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniform1f(), immUniform2fv(), immUniformColor3ubv(), immVertex2f(), immVertexFormat(), pos, steps, UNLIKELY, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by view2d_draw_lines_internal().
|
static |
Definition at line 341 of file view2d_draw.cc.
References BLF_batch_draw_begin(), BLF_batch_draw_end(), BLF_default(), BLF_disable(), BLF_draw_default(), BLF_enable(), BLF_height(), BLF_SHADOW, BLF_shadow(), BLF_shadow_offset(), BLI_rcti_size_y(), distance(), ParallelLinesSet::distance, get_parallel_lines_draw_steps(), GPU_matrix_pop_projection(), GPU_matrix_push_projection(), View2D::mask, ParallelLinesSet::offset, Outline, steps, TH_BACK, to_string(), UI_FontThemeColor(), UI_GetThemeColor4fv(), UI_SCALE_FAC, UI_view2d_region_to_view_y(), UI_view2d_scale_get_y(), UI_view2d_view_to_region_y(), UNLIKELY, wmOrtho2_region_pixelspace(), rcti::xmin, rcti::ymax, and rcti::ymin.
Referenced by UI_view2d_draw_scale_y__block(), and UI_view2d_draw_scale_y__values().
|
static |
Definition at line 131 of file view2d_draw.cc.
References BLI_assert, ceilf, ParallelLinesSet::distance, floorf, and ParallelLinesSet::offset.
Referenced by draw_horizontal_scale_indicators(), draw_parallel_lines(), and draw_vertical_scale_indicators().
|
static |
Definition at line 42 of file view2d_draw.cc.
References BLI_assert, distance(), IS_EQF, and MIN_MAJOR_LINE_DISTANCE.
Referenced by view2d_major_step_x__continuous(), view2d_major_step_x__discrete(), view2d_major_step_x__time(), and view2d_major_step_y__continuous().
| void UI_view2d_draw_lines_x__discrete_frames_or_seconds | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| bool | display_minor_lines ) |
Definition at line 495 of file view2d_draw.cc.
References UI_view2d_draw_lines_x__discrete_time(), and UI_view2d_draw_lines_x__discrete_values().
Referenced by action_main_region_draw(), dopesheet_region_draw(), draw_timeline_grid(), and nla_main_region_draw().
| void UI_view2d_draw_lines_x__discrete_time | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_minor_lines ) |
Definition at line 486 of file view2d_draw.cc.
References view2d_draw_lines(), and view2d_major_step_x__time().
Referenced by UI_view2d_draw_lines_x__discrete_frames_or_seconds(), and UI_view2d_draw_lines_x__frames_or_seconds().
| void UI_view2d_draw_lines_x__discrete_values | ( | const View2D * | v2d, |
| bool | display_minor_lines ) |
Definition at line 467 of file view2d_draw.cc.
References view2d_draw_lines(), and view2d_major_step_x__discrete().
Referenced by UI_view2d_draw_lines_x__discrete_frames_or_seconds().
| void UI_view2d_draw_lines_x__frames_or_seconds | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_seconds ) |
Definition at line 508 of file view2d_draw.cc.
References UI_view2d_draw_lines_x__discrete_time(), and UI_view2d_draw_lines_x__values().
Referenced by graph_main_region_draw().
| void UI_view2d_draw_lines_x__values | ( | const View2D * | v2d | ) |
Definition at line 474 of file view2d_draw.cc.
References view2d_draw_lines(), and view2d_major_step_x__continuous().
Referenced by clip_draw_graph(), and UI_view2d_draw_lines_x__frames_or_seconds().
| void UI_view2d_draw_lines_y__values | ( | const View2D * | v2d | ) |
Definition at line 480 of file view2d_draw.cc.
References view2d_draw_lines(), and view2d_major_step_y__continuous().
Referenced by clip_draw_graph(), and graph_main_region_draw().
| void UI_view2d_draw_scale_x__discrete_frames_or_seconds | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| int | colorid ) |
Definition at line 570 of file view2d_draw.cc.
References UI_view2d_draw_scale_x__discrete_time(), and UI_view2d_draw_scale_x__discrete_values().
Referenced by ED_time_scrub_draw().
|
static |
Definition at line 533 of file view2d_draw.cc.
References draw_horizontal_scale_indicators(), view2d_major_step_x__time(), and view_to_string__time().
Referenced by UI_view2d_draw_scale_x__discrete_frames_or_seconds(), and UI_view2d_draw_scale_x__frames_or_seconds().
|
static |
Definition at line 523 of file view2d_draw.cc.
References draw_horizontal_scale_indicators(), view2d_major_step_x__discrete(), and view_to_string__frame_number().
Referenced by UI_view2d_draw_scale_x__discrete_frames_or_seconds().
| void UI_view2d_draw_scale_x__frames_or_seconds | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| const Scene * | scene, | ||
| bool | display_seconds, | ||
| int | colorid ) |
Definition at line 585 of file view2d_draw.cc.
References UI_view2d_draw_scale_x__discrete_time(), and UI_view2d_draw_scale_x__values().
Referenced by ED_time_scrub_draw().
|
static |
Definition at line 541 of file view2d_draw.cc.
References draw_horizontal_scale_indicators(), view2d_major_step_x__continuous(), and view_to_string__value().
Referenced by UI_view2d_draw_scale_x__frames_or_seconds().
| void UI_view2d_draw_scale_y__block | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| int | colorid ) |
Definition at line 561 of file view2d_draw.cc.
References draw_vertical_scale_indicators(), and view_to_string__value().
| void UI_view2d_draw_scale_y__values | ( | const ARegion * | region, |
| const View2D * | v2d, | ||
| const rcti * | rect, | ||
| int | colorid ) |
Scale indicator text drawing.
Definition at line 551 of file view2d_draw.cc.
References draw_vertical_scale_indicators(), view2d_major_step_y__continuous(), and view_to_string__value().
Referenced by graph_main_region_draw_overlay(), and graph_region_draw().
| float UI_view2d_grid_resolution_x__frames_or_seconds | ( | const View2D * | v2d, |
| const Scene * | scene, | ||
| bool | display_seconds ) |
Definition at line 449 of file view2d_draw.cc.
References view2d_major_step_x__continuous(), and view2d_major_step_x__time().
Referenced by snap_increment_apply().
Definition at line 459 of file view2d_draw.cc.
References view2d_major_step_y__continuous().
Referenced by snap_increment_apply().
|
static |
Definition at line 238 of file view2d_draw.cc.
References ParallelLinesSet::distance, ParallelLinesSet::offset, TH_GRID, UI_GetThemeColor3ubv(), UI_GetThemeColorShade3ubv(), and view2d_draw_lines_internal().
Referenced by UI_view2d_draw_lines_x__discrete_time(), UI_view2d_draw_lines_x__discrete_values(), UI_view2d_draw_lines_x__values(), and UI_view2d_draw_lines_y__values().
|
static |
Definition at line 227 of file view2d_draw.cc.
References View2D::cur, draw_parallel_lines(), GPU_matrix_pop_projection(), GPU_matrix_push_projection(), View2D::mask, and UI_view2d_view_ortho().
Referenced by view2d_draw_lines().
Definition at line 79 of file view2d_draw.cc.
References ARRAY_SIZE, BLI_rctf_size_x(), BLI_rcti_size_x(), continuous_value_scales, View2D::cur, View2D::mask, and select_major_distance().
Referenced by UI_view2d_draw_lines_x__values(), UI_view2d_draw_scale_x__values(), and UI_view2d_grid_resolution_x__frames_or_seconds().
Definition at line 71 of file view2d_draw.cc.
References ARRAY_SIZE, BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::cur, discrete_value_scales, View2D::mask, and select_major_distance().
Referenced by UI_view2d_draw_lines_x__discrete_values(), and UI_view2d_draw_scale_x__discrete_values().
Definition at line 95 of file view2d_draw.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BLI_rctf_size_x(), BLI_rcti_size_x(), View2D::cur, blender::Vector< T, InlineBufferCapacity, Allocator >::data(), distance(), FPS, View2D::mask, pow(), select_major_distance(), and blender::Vector< T, InlineBufferCapacity, Allocator >::size().
Referenced by UI_view2d_draw_lines_x__discrete_time(), UI_view2d_draw_scale_x__discrete_time(), and UI_view2d_grid_resolution_x__frames_or_seconds().
Definition at line 87 of file view2d_draw.cc.
References ARRAY_SIZE, BLI_rctf_size_y(), BLI_rcti_size_y(), continuous_value_scales, View2D::cur, View2D::mask, and select_major_distance().
Referenced by UI_view2d_draw_lines_y__values(), UI_view2d_draw_scale_y__values(), and UI_view2d_grid_resolution_y__values().
|
static |
Definition at line 409 of file view2d_draw.cc.
References BLI_snprintf().
Referenced by UI_view2d_draw_scale_x__discrete_values().
|
static |
Definition at line 415 of file view2d_draw.cc.
References BLI_timecode_string_from_time(), FPS, and USER_TIMECODE_MINIMAL.
Referenced by UI_view2d_draw_scale_x__discrete_time().
|
static |
Definition at line 429 of file view2d_draw.cc.
References BLI_snprintf().
Referenced by UI_view2d_draw_scale_x__values(), UI_view2d_draw_scale_y__block(), and UI_view2d_draw_scale_y__values().
|
static |
Definition at line 67 of file view2d_draw.cc.
Referenced by view2d_major_step_x__continuous(), and view2d_major_step_y__continuous().
|
static |
Definition at line 64 of file view2d_draw.cc.
Referenced by view2d_major_step_x__discrete().