X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Frect.h;h=cc21e1fe6187f496f871c717f7551973b36ad0eb;hb=9f3c3466f998f1b5cc945c92332b9e7d2b8fd1cc;hp=1bd5805de38f1fd032ad43b64e73a9f8bb1635f3;hpb=e8a065f2385c219c511b57dac52786120bfa097d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/rect.h b/synfig-core/trunk/src/synfig/rect.h index 1bd5805..cc21e1f 100644 --- a/synfig-core/trunk/src/synfig/rect.h +++ b/synfig-core/trunk/src/synfig/rect.h @@ -2,10 +2,11 @@ /*! \file rect.h ** \brief Rectangle Class ** -** $Id: rect.h,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $ +** $Id$ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007, 2008 Chris Moore ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -51,6 +52,9 @@ public: static Rect full_plane(); + static Rect horizontal_strip(const value_type &y1, const value_type &y2); + static Rect vertical_strip(const value_type &x1, const value_type &x2); + static Rect zero() { return Rect( @@ -68,16 +72,16 @@ public: Rect(const Point& min, const Point& max) { set_point(min); expand(max); } Rect(const value_type &x1,const value_type &y1) { set_point(x1,y1); } - + Rect(const value_type &x1,const value_type &y1, const value_type &x2,const value_type &y2) { set_point(x1,y1); expand(x2,y2); } - + void set_point(const Point& max) { set_point(max[0],max[1]); } - + Rect& expand(const Point& max) { expand(max[0],max[1]); return *this; } Rect& expand(const Real& r) { minx-=r; miny-=r; maxx+=r; maxy+=r; return *this; } @@ -85,21 +89,21 @@ public: Rect& expand_x(const Real& r) { minx-=r; maxx+=r; return *this; } Rect& expand_y(const Real& r) { miny-=r; maxy+=r; return *this; } - + Rect& set(const Point& min,const Point& max) { set(min[0],min[1],max[0],max[1]); return *this; } - + Point get_min()const { return Point(minx,miny); } Point get_max()const { return Point(maxx,maxy); } - + bool is_inside(const Point& x) { return x[0]>minx && x[0]miny && x[1]