diff options
author | Campbell Barton <ideasman42@gmail.com> | 2020-10-27 06:13:35 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-10-27 06:13:35 +0300 |
commit | 5e8c1355403bd83f0d1cf5705f825adb1ccf47d8 (patch) | |
tree | 5e0c1df6f058f4a02718e2e2619bdf15af8dd529 /source/blender/blenlib | |
parent | 716af6a4701fe4d6a664deb77b2fafe88bcd1708 (diff) | |
parent | 66800a1deb2dc9e6cd13690a5246fbbea45c16b0 (diff) |
Merge branch 'blender-v2.91-release'
Diffstat (limited to 'source/blender/blenlib')
-rw-r--r-- | source/blender/blenlib/BLI_rect.h | 4 | ||||
-rw-r--r-- | source/blender/blenlib/intern/rct.c | 24 |
2 files changed, 28 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_rect.h b/source/blender/blenlib/BLI_rect.h index 1d15a10ebc0..1d742e2c28a 100644 --- a/source/blender/blenlib/BLI_rect.h +++ b/source/blender/blenlib/BLI_rect.h @@ -62,8 +62,12 @@ 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_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, diff --git a/source/blender/blenlib/intern/rct.c b/source/blender/blenlib/intern/rct.c index f952b62cb61..bec5f0ab3ba 100644 --- a/source/blender/blenlib/intern/rct.c +++ b/source/blender/blenlib/intern/rct.c @@ -623,6 +623,18 @@ void BLI_rctf_recenter(rctf *rect, float x, float y) } /* change width & height around the central location */ +void BLI_rcti_resize_x(rcti *rect, int x) +{ + rect->xmin = BLI_rcti_cent_x(rect) - (x / 2); + rect->xmax = rect->xmin + x; +} + +void BLI_rcti_resize_y(rcti *rect, int y) +{ + rect->ymin = BLI_rcti_cent_y(rect) - (y / 2); + rect->ymax = rect->ymin + y; +} + void BLI_rcti_resize(rcti *rect, int x, int y) { rect->xmin = BLI_rcti_cent_x(rect) - (x / 2); @@ -639,6 +651,18 @@ void BLI_rcti_pad(rcti *rect, int pad_x, int pad_y) rect->ymax += pad_y; } +void BLI_rctf_resize_x(rctf *rect, float x) +{ + rect->xmin = BLI_rctf_cent_x(rect) - (x * 0.5f); + rect->xmax = rect->xmin + x; +} + +void BLI_rctf_resize_y(rctf *rect, float y) +{ + rect->ymin = BLI_rctf_cent_y(rect) - (y * 0.5f); + rect->ymax = rect->ymin + y; +} + void BLI_rctf_resize(rctf *rect, float x, float y) { rect->xmin = BLI_rctf_cent_x(rect) - (x * 0.5f); |