49 : position(that.position), width(that.width), height(that.height)
62 : position(that.left(), that.top()), width(that.width()),
80 : position(_x, _y), width(_width), height(_height)
97 : position(pos), width(_width), height(_height)
112 : position(pos), width(size.
x), height(size.
y)
142 ( position.cast_value_type_to<U>(), (U)width, (U)height );
154 && (height == that.
height);
165 return !(*
this == that);
176 return width * height;
188 return (position.x <= p.
x) && (right() >= p.
x)
189 && (position.y <= p.
y) && (bottom() >= p.
y);
214 && (r.
right() >= position.x)
216 && (r.
bottom() >= position.y);
232 x_intersection(r, result);
233 y_intersection(r, result);
277 return position.x + width;
288 return position.y + height;
321 (
const self_type& r, self_type& result )
const
323 if (position.x <= r.position.x)
327 if (right() >= r.right())
328 result.width = r.width;
330 result.width = right() - r.position.x;
333 r.x_intersection(*
this, result);
345 (
const self_type& r, self_type& result )
const
347 if (position.y <= r.position.y)
351 if (bottom() >= r.bottom())
352 result.height = r.height;
354 result.height = bottom() - r.position.y;
357 r.y_intersection(*
this, result);