From 66b308925c3174901fc59a23245c8a1d19143420 Mon Sep 17 00:00:00 2001 From: toger5 Date: Mon, 29 May 2017 04:36:14 -0700 Subject: added grow functions to Rect2 - grow_individual - grow_margin --- core/math/math_2d.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'core/math') diff --git a/core/math/math_2d.h b/core/math/math_2d.h index 128b74baf6..1ba8246bf4 100644 --- a/core/math/math_2d.h +++ b/core/math/math_2d.h @@ -329,6 +329,25 @@ struct Rect2 { g.size.height += p_by * 2; return g; } + inline Rect2 grow_margin(Margin p_margin, real_t p_amount) const { + Rect2 g = *this; + g.grow_individual((MARGIN_LEFT == p_margin) ? p_amount : 0, + (MARGIN_TOP == p_margin) ? p_amount : 0, + (MARGIN_RIGHT == p_margin) ? p_amount : 0, + (MARGIN_BOTTOM == p_margin) ? p_amount : 0); + return g; + } + + inline Rect2 grow_individual(real_t p_left, real_t p_top, real_t p_right, real_t p_bottom) const { + + Rect2 g = *this; + g.pos.x -= p_left; + g.pos.y -= p_top; + g.size.width += p_left + p_right; + g.size.height += p_top + p_bottom; + + return g; + } inline Rect2 expand(const Vector2 &p_vector) const { -- cgit v1.2.3