Blender  V3.3
Classes | Macros | Typedefs | Functions | Variables
view2d_draw.cc File Reference
#include <cfloat>
#include <climits>
#include <cmath>
#include <cstring>
#include "MEM_guardedalloc.h"
#include "DNA_scene_types.h"
#include "DNA_userdef_types.h"
#include "BLI_math.h"
#include "BLI_rect.h"
#include "BLI_string.h"
#include "BLI_timecode.h"
#include "BLI_utildefines.h"
#include "BLI_vector.hh"
#include "GPU_immediate.h"
#include "GPU_matrix.h"
#include "GPU_state.h"
#include "WM_api.h"
#include "BLF_api.h"
#include "UI_interface.h"
#include "UI_view2d.h"
#include "interface_intern.h"

Go to the source code of this file.

Classes

struct  ParallelLinesSet
 

Macros

#define MIN_MAJOR_LINE_DISTANCE   (U.v2d_min_gridsize * UI_DPI_FAC)
 

Typedefs

using PositionToString = void(*)(void *user_data, float v2d_pos, float v2d_step, uint max_len, char *r_str)
 

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 *UNUSED(user_data), float v2d_pos, float UNUSED(v2d_step), uint max_len, char *r_str)
 
static void view_to_string__time (void *user_data, float v2d_pos, float v2d_step, uint max_len, char *r_str)
 
static void view_to_string__value (void *UNUSED(user_data), float v2d_pos, float v2d_step, uint max_len, char *r_str)
 
float UI_view2d_grid_resolution_x__frames_or_seconds (const struct View2D *v2d, const struct Scene *scene, bool display_seconds)
 
float UI_view2d_grid_resolution_y__values (const struct 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 struct ARegion *region, const struct View2D *v2d, const struct rcti *rect, const struct Scene *scene, bool display_seconds, int colorid)
 
void UI_view2d_draw_scale_x__frames_or_seconds (const struct ARegion *region, const struct View2D *v2d, const struct rcti *rect, const struct Scene *scene, bool display_seconds, int colorid)
 

Variables

static const float discrete_value_scales []
 
static const float continuous_value_scales []
 

Macro Definition Documentation

◆ MIN_MAJOR_LINE_DISTANCE

#define MIN_MAJOR_LINE_DISTANCE   (U.v2d_min_gridsize * UI_DPI_FAC)

Definition at line 41 of file view2d_draw.cc.

Typedef Documentation

◆ PositionToString

using PositionToString = void (*)(void *user_data, float v2d_pos, float v2d_step, uint max_len, char *r_str)

Definition at line 267 of file view2d_draw.cc.

Function Documentation

◆ draw_horizontal_scale_indicators()

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

◆ draw_parallel_lines()

static void draw_parallel_lines ( const ParallelLinesSet lines,
const rctf rect,
const rcti rect_mask,
const uchar  color[3],
char  direction 
)
static

◆ draw_vertical_scale_indicators()

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

◆ get_parallel_lines_draw_steps()

static void get_parallel_lines_draw_steps ( const ParallelLinesSet lines,
float  region_start,
float  region_end,
float r_first,
uint r_steps 
)
static

◆ select_major_distance()

static float select_major_distance ( const float possible_distances,
uint  amount,
float  pixel_width,
float  view_width 
)
static

◆ UI_view2d_draw_lines_x__discrete_frames_or_seconds()

void UI_view2d_draw_lines_x__discrete_frames_or_seconds ( const View2D v2d,
const Scene scene,
bool  display_seconds,
bool  display_minor_lines 
)

◆ UI_view2d_draw_lines_x__discrete_time()

void UI_view2d_draw_lines_x__discrete_time ( const View2D v2d,
const Scene scene,
bool  display_minor_lines 
)

◆ UI_view2d_draw_lines_x__discrete_values()

void UI_view2d_draw_lines_x__discrete_values ( const View2D v2d,
bool  display_minor_lines 
)

◆ UI_view2d_draw_lines_x__frames_or_seconds()

void UI_view2d_draw_lines_x__frames_or_seconds ( const View2D v2d,
const Scene scene,
bool  display_seconds 
)

◆ UI_view2d_draw_lines_x__values()

void UI_view2d_draw_lines_x__values ( const View2D v2d)

◆ UI_view2d_draw_lines_y__values()

void UI_view2d_draw_lines_y__values ( const View2D v2d)

Definition at line 481 of file view2d_draw.cc.

References view2d_draw_lines(), and view2d_major_step_y__continuous().

◆ UI_view2d_draw_scale_x__discrete_frames_or_seconds()

void UI_view2d_draw_scale_x__discrete_frames_or_seconds ( const struct ARegion region,
const struct View2D v2d,
const struct rcti rect,
const struct Scene scene,
bool  display_seconds,
int  colorid 
)

◆ UI_view2d_draw_scale_x__discrete_time()

static void UI_view2d_draw_scale_x__discrete_time ( const ARegion region,
const View2D v2d,
const rcti rect,
const Scene scene,
int  colorid 
)
static

◆ UI_view2d_draw_scale_x__discrete_values()

static void UI_view2d_draw_scale_x__discrete_values ( const ARegion region,
const View2D v2d,
const rcti rect,
int  colorid 
)
static

◆ UI_view2d_draw_scale_x__frames_or_seconds()

void UI_view2d_draw_scale_x__frames_or_seconds ( const struct ARegion region,
const struct View2D v2d,
const struct rcti rect,
const struct Scene scene,
bool  display_seconds,
int  colorid 
)

◆ UI_view2d_draw_scale_x__values()

static void UI_view2d_draw_scale_x__values ( const ARegion region,
const View2D v2d,
const rcti rect,
int  colorid 
)
static

◆ UI_view2d_draw_scale_y__block()

void UI_view2d_draw_scale_y__block ( const ARegion region,
const View2D v2d,
const rcti rect,
int  colorid 
)

Definition at line 562 of file view2d_draw.cc.

References draw_vertical_scale_indicators(), and view_to_string__value().

◆ UI_view2d_draw_scale_y__values()

void UI_view2d_draw_scale_y__values ( const ARegion region,
const View2D v2d,
const rcti rect,
int  colorid 
)

◆ UI_view2d_grid_resolution_x__frames_or_seconds()

float UI_view2d_grid_resolution_x__frames_or_seconds ( const struct View2D v2d,
const struct Scene scene,
bool  display_seconds 
)

◆ UI_view2d_grid_resolution_y__values()

float UI_view2d_grid_resolution_y__values ( const struct View2D v2d)

Definition at line 460 of file view2d_draw.cc.

References view2d_major_step_y__continuous().

Referenced by snap_increment_apply().

◆ view2d_draw_lines()

static void view2d_draw_lines ( const View2D v2d,
float  major_distance,
bool  display_minor_lines,
char  direction 
)
static

◆ view2d_draw_lines_internal()

static void view2d_draw_lines_internal ( const View2D v2d,
const ParallelLinesSet lines,
const uchar  color[3],
char  direction 
)
static

◆ view2d_major_step_x__continuous()

static float view2d_major_step_x__continuous ( const View2D v2d)
static

◆ view2d_major_step_x__discrete()

static uint view2d_major_step_x__discrete ( const View2D v2d)
static

◆ view2d_major_step_x__time()

static float view2d_major_step_x__time ( const View2D v2d,
const Scene scene 
)
static

◆ view2d_major_step_y__continuous()

static float view2d_major_step_y__continuous ( const View2D v2d)
static

◆ view_to_string__frame_number()

static void view_to_string__frame_number ( void UNUSEDuser_data,
float  v2d_pos,
float   UNUSEDv2d_step,
uint  max_len,
char *  r_str 
)
static

Definition at line 410 of file view2d_draw.cc.

References BLI_snprintf().

Referenced by UI_view2d_draw_scale_x__discrete_values().

◆ view_to_string__time()

static void view_to_string__time ( void user_data,
float  v2d_pos,
float  v2d_step,
uint  max_len,
char *  r_str 
)
static

◆ view_to_string__value()

static void view_to_string__value ( void UNUSEDuser_data,
float  v2d_pos,
float  v2d_step,
uint  max_len,
char *  r_str 
)
static

Variable Documentation

◆ continuous_value_scales

const float continuous_value_scales[]
static
Initial value:
= {0.01, 0.02, 0.05, 0.1, 0.2, 0.5, 1, 2,
5, 10, 20, 50, 100, 200, 500, 1000,
2000, 5000, 10000, 20000, 50000, 100000}

Definition at line 68 of file view2d_draw.cc.

Referenced by view2d_major_step_x__continuous(), and view2d_major_step_y__continuous().

◆ discrete_value_scales

const float discrete_value_scales[]
static
Initial value:
= {
1, 2, 5, 10, 20, 50, 100, 200, 500, 1000, 2000, 5000, 10000, 20000, 50000, 100000}

Definition at line 65 of file view2d_draw.cc.

Referenced by view2d_major_step_x__discrete().