Blender  V2.93
Macros | Functions
BLI_rect.h File Reference
#include "BLI_compiler_compat.h"
#include "BLI_sys_types.h"
#include "DNA_vec_types.h"

Go to the source code of this file.

Macros

#define print_rctf_id(rect)   print_rctf(STRINGIFY(rect), rect)
 
#define print_rcti_id(rect)   print_rcti(STRINGIFY(rect), rect)
 

Functions

bool BLI_rcti_is_empty (const struct rcti *rect)
 
bool BLI_rctf_is_empty (const struct rctf *rect)
 
void BLI_rctf_init (struct rctf *rect, float xmin, float xmax, float ymin, float ymax)
 
void BLI_rcti_init (struct rcti *rect, int xmin, int xmax, int ymin, int ymax)
 
bool BLI_rctf_is_valid (const struct rctf *rect)
 
bool BLI_rcti_is_valid (const struct rcti *rect)
 
void BLI_rctf_sanitize (struct rctf *rect)
 
void BLI_rcti_sanitize (struct rcti *rect)
 
void BLI_rctf_init_pt_radius (struct rctf *rect, const float xy[2], float size)
 
void BLI_rcti_init_pt_radius (struct rcti *rect, const int xy[2], int size)
 
void BLI_rcti_init_minmax (struct rcti *rect)
 
void BLI_rctf_init_minmax (struct rctf *rect)
 
void BLI_rcti_do_minmax_v (struct rcti *rect, const int xy[2])
 
void BLI_rctf_do_minmax_v (struct rctf *rect, const float xy[2])
 
void BLI_rctf_transform_pt_v (const rctf *dst, const rctf *src, float xy_dst[2], const float xy_src[2])
 
void BLI_rctf_transform_calc_m4_pivot_min_ex (const rctf *dst, const rctf *src, float matrix[4][4], uint x, uint y)
 
void BLI_rctf_transform_calc_m4_pivot_min (const rctf *dst, const rctf *src, float matrix[4][4])
 
void BLI_rctf_translate (struct rctf *rect, float x, float y)
 
void BLI_rcti_translate (struct rcti *rect, int x, int y)
 
void BLI_rcti_recenter (struct rcti *rect, int x, int y)
 
void BLI_rctf_recenter (struct rctf *rect, float x, float y)
 
void BLI_rcti_resize (struct rcti *rect, int x, int y)
 
void BLI_rcti_resize_x (struct rcti *rect, int x)
 
void BLI_rcti_resize_y (struct rcti *rect, int y)
 
void BLI_rcti_pad (struct rcti *rect, int pad_x, int pad_y)
 
void BLI_rctf_pad (struct rctf *rect, float pad_x, float pad_y)
 
void BLI_rctf_resize (struct rctf *rect, float x, float y)
 
void BLI_rctf_resize_x (struct rctf *rect, float x)
 
void BLI_rctf_resize_y (struct rctf *rect, float y)
 
void BLI_rcti_scale (rcti *rect, const float scale)
 
void BLI_rctf_scale (rctf *rect, const float scale)
 
void BLI_rctf_pad_y (struct rctf *rect, const float boundary_size, const float pad_min, const float pad_max)
 
void BLI_rctf_interp (struct rctf *rect, const struct rctf *rect_a, const struct rctf *rect_b, const float fac)
 
bool BLI_rctf_clamp_pt_v (const struct rctf *rect, float xy[2])
 
bool BLI_rcti_clamp_pt_v (const struct rcti *rect, int xy[2])
 
bool BLI_rctf_clamp (struct rctf *rect, const struct rctf *rect_bounds, float r_xy[2])
 
bool BLI_rcti_clamp (struct rcti *rect, const struct rcti *rect_bounds, int r_xy[2])
 
bool BLI_rctf_compare (const struct rctf *rect_a, const struct rctf *rect_b, const float limit)
 
bool BLI_rcti_compare (const struct rcti *rect_a, const struct rcti *rect_b)
 
bool BLI_rctf_isect (const struct rctf *src1, const struct rctf *src2, struct rctf *dest)
 
bool BLI_rcti_isect (const struct rcti *src1, const struct rcti *src2, struct rcti *dest)
 
bool BLI_rctf_isect_rect_x (const struct rctf *src1, const struct rctf *src2, float range_x[2])
 
bool BLI_rctf_isect_rect_y (const struct rctf *src1, const struct rctf *src2, float range_y[2])
 
bool BLI_rcti_isect_rect_x (const struct rcti *src1, const struct rcti *src2, int range_x[2])
 
bool BLI_rcti_isect_rect_y (const struct rcti *src1, const struct rcti *src2, int range_y[2])
 
bool BLI_rcti_isect_x (const rcti *rect, const int x)
 
bool BLI_rcti_isect_y (const rcti *rect, const int y)
 
bool BLI_rcti_isect_pt (const struct rcti *rect, const int x, const int y)
 
bool BLI_rcti_isect_pt_v (const struct rcti *rect, const int xy[2])
 
bool BLI_rctf_isect_x (const rctf *rect, const float x)
 
bool BLI_rctf_isect_y (const rctf *rect, const float y)
 
bool BLI_rctf_isect_pt (const struct rctf *rect, const float x, const float y)
 
bool BLI_rctf_isect_pt_v (const struct rctf *rect, const float xy[2])
 
int BLI_rcti_length_x (const rcti *rect, const int x)
 
int BLI_rcti_length_y (const rcti *rect, const int y)
 
float BLI_rctf_length_x (const rctf *rect, const float x)
 
float BLI_rctf_length_y (const rctf *rect, const float y)
 
bool BLI_rcti_isect_segment (const struct rcti *rect, const int s1[2], const int s2[2])
 
bool BLI_rctf_isect_segment (const struct rctf *rect, const float s1[2], const float s2[2])
 
bool BLI_rcti_isect_circle (const struct rcti *rect, const float xy[2], const float radius)
 
bool BLI_rctf_isect_circle (const struct rctf *rect, const float xy[2], const float radius)
 
bool BLI_rcti_inside_rcti (const rcti *rct_a, const rcti *rct_b)
 
bool BLI_rctf_inside_rctf (const rctf *rct_a, const rctf *rct_b)
 
void BLI_rcti_union (struct rcti *rct1, const struct rcti *rct2)
 
void BLI_rctf_union (struct rctf *rct1, const struct rctf *rct2)
 
void BLI_rcti_rctf_copy (struct rcti *dst, const struct rctf *src)
 
void BLI_rctf_rcti_copy (struct rctf *dst, const struct rcti *src)
 
void BLI_rcti_rctf_copy_floor (struct rcti *dst, const struct rctf *src)
 
void BLI_rcti_rctf_copy_round (struct rcti *dst, const struct rctf *src)
 
void BLI_rctf_rotate_expand (rctf *dst, const rctf *src, const float angle)
 
void print_rctf (const char *str, const struct rctf *rect)
 
void print_rcti (const char *str, const struct rcti *rect)
 
BLI_INLINE float BLI_rcti_cent_x_fl (const struct rcti *rct)
 
BLI_INLINE float BLI_rcti_cent_y_fl (const struct rcti *rct)
 
BLI_INLINE int BLI_rcti_cent_x (const struct rcti *rct)
 
BLI_INLINE int BLI_rcti_cent_y (const struct rcti *rct)
 
BLI_INLINE float BLI_rctf_cent_x (const struct rctf *rct)
 
BLI_INLINE float BLI_rctf_cent_y (const struct rctf *rct)
 
BLI_INLINE int BLI_rcti_size_x (const struct rcti *rct)
 
BLI_INLINE int BLI_rcti_size_y (const struct rcti *rct)
 
BLI_INLINE float BLI_rctf_size_x (const struct rctf *rct)
 
BLI_INLINE float BLI_rctf_size_y (const struct rctf *rct)
 

Macro Definition Documentation

◆ print_rctf_id

#define print_rctf_id (   rect)    print_rctf(STRINGIFY(rect), rect)

Definition at line 125 of file BLI_rect.h.

◆ print_rcti_id

#define print_rcti_id (   rect)    print_rcti(STRINGIFY(rect), rect)

Definition at line 126 of file BLI_rect.h.

Function Documentation

◆ BLI_rctf_cent_x()

BLI_INLINE float BLI_rctf_cent_x ( const struct rctf rct)

◆ BLI_rctf_cent_y()

BLI_INLINE float BLI_rctf_cent_y ( const struct rctf rct)

◆ BLI_rctf_clamp()

bool BLI_rctf_clamp ( struct rctf rect,
const struct rctf rect_bounds,
float  r_xy[2] 
)

Referenced by gpencil_zoom_level_set().

◆ BLI_rctf_clamp_pt_v()

bool BLI_rctf_clamp_pt_v ( const struct rctf rect,
float  xy[2] 
)

◆ BLI_rctf_compare()

bool BLI_rctf_compare ( const struct rctf rect_a,
const struct rctf rect_b,
const float  limit 
)

◆ BLI_rctf_do_minmax_v()

void BLI_rctf_do_minmax_v ( struct rctf rect,
const float  xy[2] 
)

Definition at line 544 of file rct.c.

References rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

Referenced by BKE_maskrasterize_handle_init().

◆ BLI_rctf_init()

void BLI_rctf_init ( struct rctf rect,
float  xmin,
float  xmax,
float  ymin,
float  ymax 
)

◆ BLI_rctf_init_minmax()

void BLI_rctf_init_minmax ( struct rctf rect)

◆ BLI_rctf_init_pt_radius()

void BLI_rctf_init_pt_radius ( struct rctf rect,
const float  xy[2],
float  size 
)

Definition at line 500 of file rct.c.

References size(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

Referenced by ED_imbuf_sample_draw(), and node_find_indicated_socket().

◆ BLI_rctf_inside_rctf()

bool BLI_rctf_inside_rctf ( const rctf rct_a,
const rctf rct_b 
)

is rct_b inside rct_a

Definition at line 221 of file rct.c.

References rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

Referenced by blf_glyph_render(), and node_box_select_exec().

◆ BLI_rctf_interp()

void BLI_rctf_interp ( struct rctf rect,
const struct rctf rect_a,
const struct rctf rect_b,
const float  fac 
)

◆ BLI_rctf_is_empty()

bool BLI_rctf_is_empty ( const struct rctf rect)

Referenced by node_draw_basis().

◆ BLI_rctf_is_valid()

bool BLI_rctf_is_valid ( const struct rctf rect)

◆ BLI_rctf_isect()

bool BLI_rctf_isect ( const struct rctf src1,
const struct rctf src2,
struct rctf dest 
)

◆ BLI_rctf_isect_circle()

bool BLI_rctf_isect_circle ( const struct rctf rect,
const float  xy[2],
const float  radius 
)

Referenced by node_circleselect_exec().

◆ BLI_rctf_isect_pt()

bool BLI_rctf_isect_pt ( const struct rctf rect,
const float  x,
const float  y 
)

◆ BLI_rctf_isect_pt_v()

bool BLI_rctf_isect_pt_v ( const struct rctf rect,
const float  xy[2] 
)

◆ BLI_rctf_isect_rect_x()

bool BLI_rctf_isect_rect_x ( const struct rctf src1,
const struct rctf src2,
float  range_x[2] 
)

Referenced by ui_handler_region_menu().

◆ BLI_rctf_isect_rect_y()

bool BLI_rctf_isect_rect_y ( const struct rctf src1,
const struct rctf src2,
float  range_y[2] 
)

Referenced by ui_handler_region_menu().

◆ BLI_rctf_isect_segment()

bool BLI_rctf_isect_segment ( const struct rctf rect,
const float  s1[2],
const float  s2[2] 
)

◆ BLI_rctf_isect_x()

bool BLI_rctf_isect_x ( const rctf rect,
const float  x 
)

Definition at line 114 of file rct.c.

References x, and rctf::xmax.

Referenced by ed_marker_box_select_exec(), ED_region_overlap_isect_x(), and node_link_insert_offset_ntree().

◆ BLI_rctf_isect_y()

bool BLI_rctf_isect_y ( const rctf rect,
const float  y 
)

Definition at line 125 of file rct.c.

References y, and rctf::ymax.

Referenced by ED_region_overlap_isect_y(), and node_link_insert_offset_ntree().

◆ BLI_rctf_length_x()

float BLI_rctf_length_x ( const rctf rect,
const float  x 
)

Definition at line 196 of file rct.c.

References x, rctf::xmax, and rctf::xmin.

◆ BLI_rctf_length_y()

float BLI_rctf_length_y ( const rctf rect,
const float  y 
)

Definition at line 207 of file rct.c.

References y, rctf::ymax, and rctf::ymin.

◆ BLI_rctf_pad()

void BLI_rctf_pad ( struct rctf rect,
float  pad_x,
float  pad_y 
)

Definition at line 654 of file rct.c.

References rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

Referenced by ED_uvedit_pack_islands_multi().

◆ BLI_rctf_pad_y()

void BLI_rctf_pad_y ( struct rctf rect,
const float  boundary_size,
const float  pad_min,
const float  pad_max 
)

Definition at line 706 of file rct.c.

References BLI_assert, BLI_rctf_size_y(), rctf::ymax, and rctf::ymin.

Referenced by graphkeys_viewall().

◆ BLI_rctf_rcti_copy()

void BLI_rctf_rcti_copy ( struct rctf dst,
const struct rcti src 
)

◆ BLI_rctf_recenter()

void BLI_rctf_recenter ( struct rctf rect,
float  x,
float  y 
)

◆ BLI_rctf_resize()

void BLI_rctf_resize ( struct rctf rect,
float  x,
float  y 
)

◆ BLI_rctf_resize_x()

void BLI_rctf_resize_x ( struct rctf rect,
float  x 
)

Definition at line 662 of file rct.c.

References BLI_rctf_cent_x(), x, rctf::xmax, and rctf::xmin.

◆ BLI_rctf_resize_y()

void BLI_rctf_resize_y ( struct rctf rect,
float  y 
)

Definition at line 668 of file rct.c.

References BLI_rctf_cent_y(), y, rctf::ymax, and rctf::ymin.

◆ BLI_rctf_rotate_expand()

void BLI_rctf_rotate_expand ( rctf dst,
const rctf src,
const float  angle 
)

Expand the rectangle to fit a rotated src.

Definition at line 1112 of file rct.c.

References angle(), BLI_rctf_cent_x(), BLI_rctf_cent_y(), cosf, fabsf, MAX2, ROTATE_SINCOS, sinf, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

◆ BLI_rctf_sanitize()

void BLI_rctf_sanitize ( rctf rect)

Ensure X-min and Y-min are less than or equal to X-max and Y-max, respectively.

Definition at line 476 of file rct.c.

References BLI_assert, BLI_rctf_is_valid(), SWAP, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.

Referenced by BLI_rctf_init().

◆ BLI_rctf_scale()

void BLI_rctf_scale ( rctf rect,
const float  scale 
)

◆ BLI_rctf_size_x()

BLI_INLINE float BLI_rctf_size_x ( const struct rctf rct)

Definition at line 161 of file BLI_rect.h.

References rctf::xmax, and rctf::xmin.

Referenced by actkeys_viewall(), ANIM_center_frame(), annotation_stroke_convertcoords(), areas_do_frame_follow(), BKE_curvemapping_changed(), BKE_curveprofile_update(), BKE_image_get_size(), blf_font_width(), blf_font_width_and_height(), BLI_rctf_scale(), BLI_rctf_transform_calc_m4_pivot_min_ex(), BLI_rcti_rctf_copy(), button_activate_init(), camera_frame_fit_calc_from_data(), clipx_rctf(), colorband_buttons_layout(), convertViewVec2D(), convertViewVec2D_mask(), createTransActionData(), curvemap_buttons_zoom_in(), curvemap_buttons_zoom_out(), CurveProfile_buttons_zoom_in(), CurveProfile_buttons_zoom_out(), do_text_effect(), dopesheet_view_all_exec(), draw_fcurve_active_vertex(), draw_fcurve_modifier_controls_envelope(), draw_fcurve_selected_keyframe_vertices(), draw_nla_main_data(), draw_seq_strip(), draw_seq_strips(), draw_udim_label(), draw_udim_tile_grids(), drawPropCircle(), drawWalkPixel(), ED_clip_graph_center_current_frame(), ED_fileselect_init_layout(), ED_fileselect_layout_numfiles(), ed_marker_move_modal(), ED_mask_draw_region(), ED_region_panels_layout_ex(), ED_space_clip_get_zoom(), ED_space_image_get_size(), ED_space_image_get_zoom(), ED_uvedit_pack_islands_multi(), ED_view3d_calc_camera_border_size(), ED_view3d_calc_render_border(), ED_view3d_update_viewmat(), file_draw_invalid_library_hint(), find_nearest_seq(), flushTransNodes(), gizmo_node_crop_prop_matrix_get(), gizmo_render_border_prop_matrix_get(), gpencil_point_3d_to_xy(), gpencil_point_to_xy(), gpencil_point_to_xy_fl(), gpencil_strokepoint_convertcoords(), initFlyInfo(), layer_bucket_init(), nlaedit_viewall(), node_circleselect_exec(), node_draw_frame_label(), node_draw_hidden(), node_draw_preview(), NodeToTransData(), print_rctf(), RE_GetCameraWindowWithOverscan(), region_scale_modal(), render_border_exec(), screen_animation_region_tag_redraw(), scroller_activate_init(), sequencer_box_select_exec(), sequencer_preview_get_rect(), sima_zoom_set_from_bounds(), smooth_view_rect_to_fac(), snode_setup_v2d(), space_node_view_flag(), square_rctf(), TargetSnapOffset(), ui_block_align_but_to_region(), ui_block_bounds_calc(), ui_block_bounds_calc_centered(), ui_block_bounds_calc_popup(), ui_block_bounds_calc_text(), ui_block_func_POPOVER(), ui_block_func_POPUP(), ui_but_can_align(), ui_but_drag_init(), ui_but_update_ex(), ui_do_but_COLORBAND(), ui_do_but_GRIP(), ui_do_but_SCROLL(), ui_do_but_SLI(), ui_draw_anti_tria_rect(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_item_size(), ui_numedit_but_COLORBAND(), ui_numedit_but_CURVE(), ui_numedit_but_CURVEPROFILE(), ui_numedit_but_HSVCIRCLE(), ui_numedit_but_HSVCUBE(), ui_numedit_but_SLI(), ui_numedit_but_TRACKPREVIEW(), ui_numedit_but_UNITVEC(), ui_numedit_set_active(), ui_pie_handler(), ui_popup_block_position(), ui_popup_block_refresh(), ui_searchbox_create_generic(), ui_textedit_set_cursor_pos_foreach_glyph(), ui_view2d_curRect_validate_resize(), UI_view2d_offset(), UI_view2d_region_to_view_rctf(), UI_view2d_region_to_view_x(), UI_view2d_scale_get_inverse(), UI_view2d_scale_get_x(), UI_view2d_scrollers_calc(), UI_view2d_view_ortho(), UI_view2d_view_to_region(), UI_view2d_view_to_region_clip(), UI_view2d_view_to_region_fl(), UI_view2d_view_to_region_rcti(), UI_view2d_view_to_region_rcti_clip(), UI_view2d_view_to_region_x(), view2d_major_step_x__continuous(), view2d_major_step_x__discrete(), view2d_major_step_x__time(), view2d_map_cur_using_mask(), view2d_masks(), view3d_camera_border(), view3d_winmatrix_set(), view_all_exec(), view_borderzoom_exec(), view_ghost_border_exec(), view_pan_init(), view_zoomdrag_apply(), view_zoomdrag_invoke(), view_zoomdrag_modal(), view_zoomstep_apply_ex(), widget_draw_text_underline_calc_center_x(), and WIDGETGROUP_camera_view_draw_prepare().

◆ BLI_rctf_size_y()

BLI_INLINE float BLI_rctf_size_y ( const struct rctf rct)

Definition at line 165 of file BLI_rect.h.

References rctf::ymax, and rctf::ymin.

Referenced by ANIM_channel_draw_widgets(), annotation_stroke_convertcoords(), BKE_curvemapping_changed(), BKE_curveprofile_update(), BKE_image_get_size(), blf_font_height(), blf_font_width_and_height(), BLI_rctf_pad_y(), BLI_rctf_scale(), BLI_rctf_transform_calc_m4_pivot_min_ex(), BLI_rcti_rctf_copy(), button_activate_init(), camera_frame_fit_calc_from_data(), clipy_rctf(), console_main_region_init(), convertViewVec2D(), convertViewVec2D_mask(), createTransActionData(), curvemap_buttons_zoom_in(), curvemap_buttons_zoom_out(), CurveProfile_buttons_zoom_in(), CurveProfile_buttons_zoom_out(), draw_seq_strip(), draw_udim_tile_grids(), drawPropCircle(), drawWalkPixel(), ED_fileselect_init_layout(), ED_fileselect_layout_numfiles(), ED_mask_draw_region(), ED_region_generic_tools_region_snap_size(), ED_space_clip_get_zoom(), ED_space_image_get_size(), ED_space_image_get_zoom(), ED_uvedit_pack_islands_multi(), ED_view3d_calc_camera_border_size(), ED_view3d_calc_render_border(), ED_view3d_update_viewmat(), file_draw_string_multiline(), flushTransNodes(), gizmo_node_crop_prop_matrix_get(), gizmo_render_border_prop_matrix_get(), gpencil_point_3d_to_xy(), gpencil_point_to_xy(), gpencil_point_to_xy_fl(), gpencil_strokepoint_convertcoords(), initFlyInfo(), layer_bucket_init(), node_draw_hidden(), node_draw_preview(), NodeToTransData(), print_rctf(), RE_GetCameraWindowWithOverscan(), render_border_exec(), scroller_activate_init(), sequencer_preview_get_rect(), sequencer_view_selected_exec(), sima_zoom_set_from_bounds(), smooth_view_rect_to_fac(), space_node_view_flag(), square_rctf(), TargetSnapOffset(), ui_block_align_but_to_region(), ui_block_bounds_calc_centered(), ui_block_bounds_calc_popup(), ui_but_can_align(), ui_but_drag_init(), ui_but_extra_operator_icon_mouse_over_get(), ui_do_but_GRIP(), ui_do_but_SCROLL(), ui_do_drag(), ui_draw_anti_tria_rect(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HISTOGRAM(), ui_draw_dropshadow(), ui_item_size(), ui_numedit_but_CURVE(), ui_numedit_but_CURVEPROFILE(), ui_numedit_but_HSVCIRCLE(), ui_numedit_but_HSVCUBE(), ui_numedit_but_SLI(), ui_numedit_but_TRACKPREVIEW(), ui_numedit_set_active(), ui_pie_handler(), ui_popup_block_position(), ui_popup_block_refresh(), ui_searchbox_create_generic(), ui_view2d_curRect_validate_resize(), UI_view2d_offset(), UI_view2d_region_to_view_rctf(), UI_view2d_region_to_view_y(), UI_view2d_scale_get_inverse(), UI_view2d_scale_get_y(), UI_view2d_scrollers_calc(), UI_view2d_view_ortho(), UI_view2d_view_to_region(), UI_view2d_view_to_region_clip(), UI_view2d_view_to_region_fl(), UI_view2d_view_to_region_rcti(), UI_view2d_view_to_region_rcti_clip(), UI_view2d_view_to_region_y(), view2d_major_step_y__continuous(), view2d_map_cur_using_mask(), view2d_masks(), view3d_camera_border(), view3d_winmatrix_set(), view_all_exec(), view_borderzoom_exec(), view_ghost_border_exec(), view_pan_init(), view_zoomdrag_apply(), view_zoomdrag_invoke(), view_zoomdrag_modal(), view_zoomstep_apply_ex(), and WIDGETGROUP_camera_view_draw_prepare().

◆ BLI_rctf_transform_calc_m4_pivot_min()

void BLI_rctf_transform_calc_m4_pivot_min ( const rctf dst,
const rctf src,
float  matrix[4][4] 
)

◆ BLI_rctf_transform_calc_m4_pivot_min_ex()

void BLI_rctf_transform_calc_m4_pivot_min_ex ( const rctf dst,
const rctf src,
float  matrix[4][4],
uint  x,
uint  y 
)

Calculate a 4x4 matrix representing the transformation between two rectangles.

Note
Multiplying a vector by this matrix does not give the same value as BLI_rctf_transform_pt_v.

Definition at line 579 of file rct.c.

References BLI_assert, BLI_rctf_size_x(), BLI_rctf_size_y(), unit_m4(), x, rctf::xmin, y, and rctf::ymin.

Referenced by BLI_rctf_transform_calc_m4_pivot_min().

◆ BLI_rctf_transform_pt_v()

void BLI_rctf_transform_pt_v ( const rctf dst,
const rctf src,
float  xy_dst[2],
const float  xy_src[2] 
)

◆ BLI_rctf_translate()

void BLI_rctf_translate ( struct rctf rect,
float  x,
float  y 
)

◆ BLI_rctf_union()

void BLI_rctf_union ( struct rctf rct1,
const struct rctf rct2 
)

◆ BLI_rcti_cent_x()

BLI_INLINE int BLI_rcti_cent_x ( const struct rcti rct)

◆ BLI_rcti_cent_x_fl()

BLI_INLINE float BLI_rcti_cent_x_fl ( const struct rcti rct)

◆ BLI_rcti_cent_y()

BLI_INLINE int BLI_rcti_cent_y ( const struct rcti rct)

◆ BLI_rcti_cent_y_fl()

BLI_INLINE float BLI_rcti_cent_y_fl ( const struct rcti rct)

◆ BLI_rcti_clamp()

bool BLI_rcti_clamp ( struct rcti rect,
const struct rcti rect_bounds,
int  r_xy[2] 
)

◆ BLI_rcti_clamp_pt_v()

bool BLI_rcti_clamp_pt_v ( const struct rcti rect,
int  xy[2] 
)

◆ BLI_rcti_compare()

bool BLI_rcti_compare ( const struct rcti rect_a,
const struct rcti rect_b 
)

◆ BLI_rcti_do_minmax_v()

void BLI_rcti_do_minmax_v ( struct rcti rect,
const int  xy[2] 
)

◆ BLI_rcti_init()

void BLI_rcti_init ( struct rcti rect,
int  xmin,
int  xmax,
int  ymin,
int  ymax 
)

◆ BLI_rcti_init_minmax()

void BLI_rcti_init_minmax ( struct rcti rect)

◆ BLI_rcti_init_pt_radius()

void BLI_rcti_init_pt_radius ( struct rcti rect,
const int  xy[2],
int  size 
)

◆ BLI_rcti_inside_rcti()

bool BLI_rcti_inside_rcti ( const rcti rct_a,
const rcti rct_b 
)

Definition at line 226 of file rct.c.

References rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.

Referenced by ui_tooltip_create_with_data().

◆ BLI_rcti_is_empty()

bool BLI_rcti_is_empty ( const struct rcti rect)

◆ BLI_rcti_is_valid()

bool BLI_rcti_is_valid ( const struct rcti rect)

◆ BLI_rcti_isect()

bool BLI_rcti_isect ( const struct rcti src1,
const struct rcti src2,
struct rcti dest 
)

◆ BLI_rcti_isect_circle()

bool BLI_rcti_isect_circle ( const struct rcti rect,
const float  xy[2],
const float  radius 
)

◆ BLI_rcti_isect_pt()

bool BLI_rcti_isect_pt ( const struct rcti rect,
const int  x,
const int  y 
)

◆ BLI_rcti_isect_pt_v()

bool BLI_rcti_isect_pt_v ( const struct rcti rect,
const int  xy[2] 
)

◆ BLI_rcti_isect_rect_x()

bool BLI_rcti_isect_rect_x ( const struct rcti src1,
const struct rcti src2,
int  range_x[2] 
)

◆ BLI_rcti_isect_rect_y()

bool BLI_rcti_isect_rect_y ( const struct rcti src1,
const struct rcti src2,
int  range_y[2] 
)

◆ BLI_rcti_isect_segment()

bool BLI_rcti_isect_segment ( const struct rcti rect,
const int  s1[2],
const int  s2[2] 
)

◆ BLI_rcti_isect_x()

bool BLI_rcti_isect_x ( const rcti rect,
const int  x 
)

Definition at line 58 of file rct.c.

References x, and rcti::xmax.

◆ BLI_rcti_isect_y()

bool BLI_rcti_isect_y ( const rcti rect,
const int  y 
)

Definition at line 69 of file rct.c.

References y, and rcti::ymax.

◆ BLI_rcti_length_x()

int BLI_rcti_length_x ( const rcti rect,
const int  x 
)
Returns
shortest distance from rect to x/y (0 if inside)

Definition at line 174 of file rct.c.

References x, rcti::xmax, and rcti::xmin.

Referenced by area_actionzone_refresh_xy(), and file_box_select_find_last_selected().

◆ BLI_rcti_length_y()

int BLI_rcti_length_y ( const rcti rect,
const int  y 
)

Definition at line 185 of file rct.c.

References y, rcti::ymax, and rcti::ymin.

Referenced by area_actionzone_refresh_xy(), and file_box_select_find_last_selected().

◆ BLI_rcti_pad()

void BLI_rcti_pad ( struct rcti rect,
int  pad_x,
int  pad_y 
)

Definition at line 646 of file rct.c.

References rcti::xmax, rcti::xmin, rcti::ymax, and rcti::ymin.

Referenced by view_edge_pan_modal().

◆ BLI_rcti_rctf_copy()

void BLI_rcti_rctf_copy ( struct rcti dst,
const struct rctf src 
)

◆ BLI_rcti_rctf_copy_floor()

void BLI_rcti_rctf_copy_floor ( struct rcti dst,
const struct rctf src 
)

◆ BLI_rcti_rctf_copy_round()

void BLI_rcti_rctf_copy_round ( struct rcti dst,
const struct rctf src 
)

◆ BLI_rcti_recenter()

void BLI_rcti_recenter ( struct rcti rect,
int  x,
int  y 
)

Definition at line 612 of file rct.c.

References BLI_rcti_cent_x(), BLI_rcti_cent_y(), BLI_rcti_translate(), x, and y.

◆ BLI_rcti_resize()

void BLI_rcti_resize ( struct rcti rect,
int  x,
int  y 
)

◆ BLI_rcti_resize_x()

void BLI_rcti_resize_x ( struct rcti rect,
int  x 
)

Definition at line 626 of file rct.c.

References BLI_rcti_cent_x(), x, rcti::xmax, and rcti::xmin.

Referenced by view3d_zoom_border_exec(), and wm_window_check_size().

◆ BLI_rcti_resize_y()

void BLI_rcti_resize_y ( struct rcti rect,
int  y 
)

Definition at line 632 of file rct.c.

References BLI_rcti_cent_y(), y, rcti::ymax, and rcti::ymin.

Referenced by view3d_zoom_border_exec(), and wm_window_check_size().

◆ BLI_rcti_sanitize()

void BLI_rcti_sanitize ( struct rcti rect)

◆ BLI_rcti_scale()

void BLI_rcti_scale ( rcti rect,
const float  scale 
)

◆ BLI_rcti_size_x()

BLI_INLINE int BLI_rcti_size_x ( const struct rcti rct)

Definition at line 153 of file BLI_rect.h.

References rcti::xmax, and rcti::xmin.

Referenced by actkeys_box_select_exec(), ANIM_channel_draw(), ANIM_channel_draw_widgets(), area_calc_totrct(), area_max_regionsize(), BLI_rcti_scale(), calctrackballvec(), clip_draw_dopesheet_main(), clip_view_calculate_view_selection(), convertViewVec2D(), convertViewVec2D_mask(), createTransActionData(), draw_filled_lasso(), draw_horizontal_scale_indicators(), draw_keylist(), draw_nla_main_data(), draw_parallel_lines(), draw_seq_strips(), draw_udim_label(), draw_udim_tile_grids(), drawPropCircle(), DRW_draw_select_loop(), DRW_select_buffer_find_nearest_to_point(), DRW_select_buffer_read(), ED_image_draw_info(), ed_marker_move_modal(), ED_mask_draw_region(), ED_preview_draw(), ed_preview_draw_rect(), ED_region_info_draw_multiline(), ED_screen_draw_edges(), ED_space_clip_get_zoom(), ED_space_image_get_zoom(), ED_time_scrub_channel_search_draw(), ED_view3d_update_viewmat(), EEVEE_cryptomatte_render_result(), EEVEE_lookdev_init(), eevee_render_color_result(), find_nearest_seq(), blender::compositor::MemoryBuffer::getWidth(), GPENCIL_render_init(), GPENCIL_render_result_combined(), GPENCIL_render_result_z(), GPU_select_buffer_stride_realign(), gpu_select_pick_begin(), gpu_select_query_begin(), GPU_viewport_bind(), GPU_viewport_draw_to_screen_ex(), graphkeys_box_select_exec(), image_buffer_rect_update(), image_main_region_set_view2d(), image_rect_update(), image_view_all(), IMB_rect_crop(), movieclip_main_area_set_view2d(), nla_action_draw_keyframes(), nlaedit_box_select_exec(), node_circleselect_exec(), outliner_draw_tree(), paint_draw_tex_overlay(), print_rcti(), rct_fits(), re_init_resolution(), RE_parts_init(), rect_crop_16bytes(), rect_crop_4bytes(), rect_subregion_stride_calc(), region_rect_recursive(), region_scale_modal(), region_update_rect(), render_result_new(), reset_exec(), round_box__edges(), sclip_zoom_set(), screen_geom_vertices_scale_pass(), scroller_activate_init(), sequencer_box_select_exec(), sequencer_preview_get_rect(), sequencer_view_zoom_ratio_exec(), shape_preset_init_trias_ex(), shape_preset_trias_from_rect_menu(), sima_zoom_set(), sima_zoom_set_from_bounds(), ui_block_to_window_fl(), ui_but_contains_point_px_icon(), ui_draw_but(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HSV_v(), ui_draw_but_HSVCIRCLE(), ui_draw_but_IMAGE(), ui_draw_but_UNITVEC(), ui_draw_gradient(), ui_draw_menu_item(), ui_draw_preview_item(), UI_draw_widget_scroll(), UI_fontstyle_draw_ex(), UI_fontstyle_draw_rotated(), ui_hsvcircle_pos_from_vals(), ui_hsvcircle_vals_from_pos(), ui_hsvcube_pos_from_vals(), ui_searchbox_butrect(), ui_searchbox_create_generic(), ui_searchbox_region_draw_cb(), ui_searchbox_region_draw_cb__operator(), ui_text_clip_cursor(), ui_text_clip_middle(), ui_text_clip_middle_protect_right(), ui_text_clip_right_label(), ui_tooltip_create_with_data(), UI_view2d_curRect_reset(), ui_view2d_curRect_validate_resize(), UI_view2d_region_to_view_rctf(), UI_view2d_region_to_view_x(), UI_view2d_scale_get_inverse(), UI_view2d_scale_get_x(), UI_view2d_scrollers_calc(), UI_view2d_scrollers_draw(), UI_view2d_view_ortho(), UI_view2d_view_restore(), UI_view2d_view_to_region(), UI_view2d_view_to_region_clip(), UI_view2d_view_to_region_fl(), UI_view2d_view_to_region_rcti(), UI_view2d_view_to_region_rcti_clip(), UI_view2d_view_to_region_x(), ui_window_to_block_fl(), view2d_major_step_x__continuous(), view2d_major_step_x__discrete(), view2d_major_step_x__time(), view2d_map_cur_using_mask(), view3d_opengl_read_Z_pixels(), view3d_update_depths_rect(), view3d_zoom_border_exec(), view_all_exec(), view_pan_init(), view_zoomdrag_modal(), view_zoomstep_apply_ex(), widget_draw_preview(), widget_draw_text_icon(), widget_numbut_draw(), widget_numslider(), widget_optionbut(), widget_progressbar(), widget_scroll(), wm_draw_region_blend(), wm_gesture_evaluate(), wm_paintcursor_draw(), wm_window_check_size(), WM_window_open(), wmGetProjectionMatrix(), wmPartialViewport(), wmViewport(), workbench_render(), and workbench_render_result_z().

◆ BLI_rcti_size_y()

BLI_INLINE int BLI_rcti_size_y ( const struct rcti rct)

Definition at line 157 of file BLI_rect.h.

References rcti::ymax, and rcti::ymin.

Referenced by actkeys_box_select_exec(), actkeys_viewall(), area_calc_totrct(), area_max_regionsize(), BLI_rcti_scale(), calctrackballvec(), clip_draw_dopesheet_channels(), clip_draw_dopesheet_main(), clip_view_calculate_view_selection(), convertViewVec2D(), convertViewVec2D_mask(), createTransActionData(), draw_filled_lasso(), draw_keylist(), draw_parallel_lines(), draw_seq_strip(), draw_udim_tile_grids(), draw_vertical_scale_indicators(), drawPropCircle(), DRW_draw_select_loop(), DRW_select_buffer_read(), ED_mask_draw_region(), ED_node_socket_draw(), ED_preview_draw(), ed_preview_draw_rect(), ED_region_generic_tools_region_snap_size(), ED_region_info_draw_multiline(), ED_screen_draw_edges(), ED_space_clip_get_zoom(), ED_space_image_get_zoom(), ED_view3d_update_viewmat(), EEVEE_cryptomatte_render_result(), eevee_render_color_result(), blender::compositor::MemoryBuffer::getHeight(), GPENCIL_render_init(), GPENCIL_render_result_combined(), GPENCIL_render_result_z(), GPU_select_buffer_stride_realign(), gpu_select_pick_begin(), gpu_select_query_begin(), GPU_viewport_bind(), GPU_viewport_draw_to_screen_ex(), graphkeys_box_select_exec(), image_buffer_rect_update(), image_main_region_set_view2d(), image_rect_update(), image_view_all(), IMB_rect_crop(), movieclip_main_area_set_view2d(), nla_action_draw_keyframes(), nlaedit_box_select_exec(), nlaedit_viewall(), outliner_item_rename(), outliner_scroll_page_exec(), outliner_show_active_exec(), paint_draw_tex_overlay(), panel_draw_aligned_widgets(), print_rcti(), rct_fits(), re_init_resolution(), RE_parts_init(), rect_crop_16bytes(), rect_crop_4bytes(), rect_subregion_stride_calc(), region_rect_recursive(), region_update_rect(), render_result_new(), reset_exec(), round_box__edges(), round_box_shadow_edges(), sclip_zoom_set(), screen_geom_vertices_scale_pass(), scroller_activate_init(), sequencer_preview_get_rect(), sequencer_view_zoom_ratio_exec(), shape_preset_init_trias_ex(), shape_preset_trias_from_rect_checkmark(), shape_preset_trias_from_rect_menu(), sima_zoom_set(), sima_zoom_set_from_bounds(), ui_block_to_window_fl(), ui_but_contains_point_px_icon(), ui_do_drag(), ui_draw_but(), ui_draw_but_COLORBAND(), ui_draw_but_CURVE(), ui_draw_but_CURVEPROFILE(), ui_draw_but_HSV_v(), ui_draw_but_HSVCIRCLE(), ui_draw_but_IMAGE(), ui_draw_but_UNITVEC(), ui_draw_colorband_handle(), ui_draw_gradient(), ui_draw_menu_item(), ui_draw_separator(), UI_draw_widget_scroll(), UI_fontstyle_draw_ex(), UI_fontstyle_draw_rotated(), ui_hsvcircle_pos_from_vals(), ui_hsvcircle_vals_from_pos(), ui_hsvcube_pos_from_vals(), UI_panel_category_draw_all(), ui_searchbox_butrect(), ui_searchbox_create_generic(), ui_tooltip_create_with_data(), UI_view2d_curRect_reset(), ui_view2d_curRect_validate_resize(), UI_view2d_region_to_view_rctf(), UI_view2d_region_to_view_y(), UI_view2d_scale_get_inverse(), UI_view2d_scale_get_y(), UI_view2d_scrollers_calc(), UI_view2d_scrollers_draw(), UI_view2d_text_cache_draw(), UI_view2d_view_ortho(), UI_view2d_view_restore(), UI_view2d_view_to_region(), UI_view2d_view_to_region_clip(), UI_view2d_view_to_region_fl(), UI_view2d_view_to_region_rcti(), UI_view2d_view_to_region_rcti_clip(), UI_view2d_view_to_region_y(), ui_window_to_block_fl(), view2d_major_step_y__continuous(), view2d_map_cur_using_mask(), view3d_opengl_read_Z_pixels(), view3d_update_depths_rect(), view3d_zoom_border_exec(), view_all_exec(), view_pan_init(), view_scrollup_exec(), view_zoomdrag_modal(), view_zoomstep_apply_ex(), widget_draw_preview(), widget_draw_text_icon(), widget_icon_has_anim(), widget_menu_radial_itembut(), widget_menubut(), widget_numbut_draw(), widget_numslider(), widget_optionbut(), widget_progressbar(), widget_scroll(), widget_softshadow(), wm_draw_region_blend(), wm_gesture_evaluate(), wm_paintcursor_draw(), wm_window_check_size(), WM_window_open(), wmGetProjectionMatrix(), wmPartialViewport(), wmViewport(), workbench_render(), and workbench_render_result_z().

◆ BLI_rcti_translate()

void BLI_rcti_translate ( struct rcti rect,
int  x,
int  y 
)

◆ BLI_rcti_union()

void BLI_rcti_union ( struct rcti rct1,
const struct rcti rct2 
)

◆ print_rctf()

void print_rctf ( const char *  str,
const struct rctf rect 
)

◆ print_rcti()

void print_rcti ( const char *  str,
const struct rcti rect 
)