List of all members.

Public Member Functions

 Rect ()
 Rect (const PP_Rect &rect)
 Rect (int32_t w, int32_t h)
 Rect (int32_t x, int32_t y, int32_t w, int32_t h)
 Rect (const Size &s)
 Rect (const Point &origin, const Size &size)
 ~Rect ()
 operator PP_Rect () const
const PP_Rect & pp_rect () const
PP_Rect & pp_rect ()
int32_t x () const
void set_x (int32_t in_x)
int32_t y () const
void set_y (int32_t in_y)
int32_t width () const
void set_width (int32_t w)
int32_t height () const
void set_height (int32_t h)
Point point () const
void set_point (const Point &origin)
Size size () const
void set_size (const Size &s)
int32_t right () const
int32_t bottom () const
void SetRect (int32_t x, int32_t y, int32_t w, int32_t h)
void SetRect (const PP_Rect &rect)
void Inset (int32_t horizontal, int32_t vertical)
void Inset (int32_t left, int32_t top, int32_t right, int32_t bottom)
void Offset (int32_t horizontal, int32_t vertical)
void Offset (const Point &point)
bool IsEmpty () const
bool Contains (int32_t point_x, int32_t point_y) const
bool Contains (const Point &point) const
bool Contains (const Rect &rect) const
bool Intersects (const Rect &rect) const
Rect Intersect (const Rect &rect) const
Rect Union (const Rect &rect) const
Rect Subtract (const Rect &rect) const
Rect AdjustToFit (const Rect &rect) const
Point CenterPoint () const
bool SharesEdgeWith (const Rect &rect) const

Detailed Description

A 2 dimensional rectangle.

A rectangle is represented by x and y (which identifies the upper-left corner of the rectangle), width, and height.


Constructor & Destructor Documentation

pp::Rect::Rect() [inline]

The default constructor.

Creates a Rect in the upper-left at 0,0 with height and width of 0.

pp::Rect::Rect(const PP_Rect & rect) [inline]

A constructor accepting a reference to a PP_Rect and converting the PP_Rect to a Rect.

This is an implicit conversion constructor.

Parameters:
[in]rectA PP_Rect.
pp::Rect::Rect(int32_t w,
int32_t h 
) [inline]

A constructor accepting two int32_t values for width and height and converting them to a Rect in the upper-left starting coordinate of 0,0.

Parameters:
[in]wAn int32_t value representing a width.
[in]hAn int32_t value representing a height.
pp::Rect::Rect(int32_t x,
int32_t y,
int32_t w,
int32_t h 
) [inline]

A constructor accepting four int32_t values for width, height, x, and y.

Parameters:
[in]xAn int32_t value representing a horizontal coordinate of a point, starting with 0 as the left-most coordinate.
[in]yAn int32_t value representing a vertical coordinate of a point, starting with 0 as the top-most coordinate.
[in]wAn int32_t value representing a width.
[in]hAn int32_t value representing a height.
pp::Rect::Rect(const Sizes) [inline, explicit]

A constructor accepting a pointer to a Size and converting the Size to a Rect in the upper-left starting coordinate of 0,0.

Parameters:
[in]sA pointer to a Size.
pp::Rect::Rect(const Pointorigin,
const Sizesize 
) [inline]

A constructor accepting a pointer to a Point representing the origin of the rectangle and a pointer to a Size representing the height and width.

Parameters:
[in]originA pointer to a Point representing the upper-left starting coordinate.
[in]sizeA pointer to a Size representing the height and width.
pp::Rect::~Rect() [inline]

Destructor.


Member Function Documentation

Rect pp::Rect::AdjustToFit(const Rectrect)const

AdjustToFit() fits as much of the receiving rectangle within the supplied rectangle as possible, returning the result.

For example, if the receiver had a x-location of 2 and a width of 4, and the supplied rectangle had an x-location of 0 with a width of 5, the returned rectangle would have an x-location of 1 with a width of 4.

Parameters:
[in]rectA pointer to a Rect.
Returns:
A Rect representing the difference between this rectangle and the receiving rectangle.
int32_t pp::Rect::bottom()const [inline]

Getter function to get the upper-bound for the y-coordinates of the rectangle.

Note that this coordinate value is one past the highest xy value of pixels in the rectangle. This loop will access all the pixels in a horizontal line in the rectangle: for (int32_t y = rect.y(); y < rect.bottom(); ++y) {}

Returns:
The value of y + height for this point.

CenterPoint() determines the center of this rectangle.

Returns:
A Point representing the center of this rectangle.
bool pp::Rect::Contains(int32_t point_x,
int32_t point_y 
)const

Contains() determines if the point identified by point_x and point_y falls inside this rectangle.

The point (x, y) is inside the rectangle, but the point (x + width, y + height) is not.

Parameters:
[in]point_xAn int32_t value representing a x value.
[in]point_yAn int32_t value representing a y value.
Returns:
true if the point_x and point_y fall inside the rectangle.
bool pp::Rect::Contains(const Pointpoint)const [inline]

Contains() determines if the specified point is contained by this rectangle.

Parameters:
[in]pointA pointer to a Point representing a 2D coordinate.
Returns:
true if the point_x and point_y fall inside the rectangle.
bool pp::Rect::Contains(const Rectrect)const

Contains() determines if this rectangle contains the specified rectangle.

Parameters:
[in]rectA pointer to a Rect.
Returns:
true if the rectangle fall inside this rectangle.
int32_t pp::Rect::height()const [inline]

Getter function for returning the value of height.

Returns:
The value of height for this Rect.
void pp::Rect::Inset(int32_t horizontal,
int32_t vertical 
) [inline]

Inset() shrinks the rectangle by a horizontal and vertical distance on all sides.

Parameters:
[in]horizontalAn int32_t value representing a horizontal shrinking distance.
[in]verticalAn int32_t value representing a vertical shrinking distance.
void pp::Rect::Inset(int32_t left,
int32_t top,
int32_t right,
int32_t bottom 
)

Inset() shrinks the rectangle by the specified amount on each side.

Parameters:
[in]leftAn int32_t value representing a left shrinking distance.
[in]topAn int32_t value representing a top shrinking distance.
[in]rightAn int32_t value representing a right shrinking distance.
[in]bottomAn int32_t value representing a bottom shrinking distance.
Rect pp::Rect::Intersect(const Rectrect)const

Intersect() computes the intersection of this rectangle with the given rectangle.

Parameters:
[in]rectA pointer to a Rect.
Returns:
A Rect representing the intersection.
bool pp::Rect::Intersects(const Rectrect)const

Intersects() determines if this rectangle intersects the specified rectangle.

Parameters:
[in]rectA pointer to a Rect.
Returns:
true if the rectangle intersects this rectangle.
bool pp::Rect::IsEmpty()const [inline]

IsEmpty() determines if the area of a rectangle is zero.

Returns true if the area of the rectangle is zero.

Returns:
true if the area of the rectangle is zero.
void pp::Rect::Offset(int32_t horizontal,
int32_t vertical 
)

Offset() moves the rectangle by a horizontal and vertical distance.

Parameters:
[in]horizontalAn int32_t value representing a horizontal move distance.
[in]verticalAn int32_t value representing a vertical move distance.
void pp::Rect::Offset(const Pointpoint) [inline]

Offset() moves the rectangle by a horizontal and vertical distance.

Parameters:
[in]pointA pointer to a Point representing the horizontal and vertical move distances.
pp::Rect::operator PP_Rect()const [inline]

PP_Rect() allows implicit conversion of a Rect to a PP_Rect.

Returns:
A Point.
Point pp::Rect::point()const [inline]

Getter function for returning the Point.

Returns:
A Point.
const PP_Rect& pp::Rect::pp_rect()const [inline]

Getter function for returning the internal PP_Rect struct.

Returns:
A const reference to the internal PP_Rect struct.
PP_Rect& pp::Rect::pp_rect() [inline]

Getter function for returning the internal PP_Rect struct.

Returns:
A mutable reference to the PP_Rect struct.
int32_t pp::Rect::right()const [inline]

Getter function to get the upper-bound for the x-coordinates of the rectangle.

Note that this coordinate value is one past the highest x value of pixels in the rectangle. This loop will access all the pixels in a horizontal line in the rectangle: for (int32_t x = rect.x(); x < rect.right(); ++x) {}

Returns:
The value of x + width for this point.
void pp::Rect::set_height(int32_t h) [inline]

Setter function for setting the value of height.

Parameters:
[in]hA new width height.
void pp::Rect::set_point(const Pointorigin) [inline]

Setter function for setting the value of the Point.

Parameters:
[in]originA Point representing the upper-left starting coordinate.
void pp::Rect::set_size(const Sizes) [inline]

Setter function for setting the Size.

Parameters:
[in]sA pointer to a Size representing the height and width.
void pp::Rect::set_width(int32_t w) [inline]

Setter function for setting the value of width.

Parameters:
[in]wA new width value.
void pp::Rect::set_x(int32_t in_x) [inline]

Setter function for setting the value of x.

Parameters:
[in]in_xA new x value.
void pp::Rect::set_y(int32_t in_y) [inline]

Setter function for setting the value of y.

Parameters:
[in]in_yA new y value.
void pp::Rect::SetRect(int32_t x,
int32_t y,
int32_t w,
int32_t h 
) [inline]

Setter function for setting the value of the Rect.

Parameters:
[in]xA new x value.
[in]yA new y value.
[in]wA new width value.
[in]hA new height value.
void pp::Rect::SetRect(const PP_Rect & rect) [inline]

Setter function for setting the value of the Rect.

Parameters:
[in]rectA pointer to a PP_Rect.
bool pp::Rect::SharesEdgeWith(const Rectrect)const

SharesEdgeWith() determines if this rectangle shares an entire edge (same width or same height) with the given rectangle, and the rectangles do not overlap.

Parameters:
[in]rectA pointer to a Rect.
Returns:
true if this rectangle and supplied rectangle share an edge.
Size pp::Rect::size()const [inline]

Getter function for returning the Size.

Returns:
The size of the rectangle.
Rect pp::Rect::Subtract(const Rectrect)const

Subtract() computes the rectangle resulting from subtracting rect from this Rect.

If rectdoes not intersect completely in either the x or y direction, then *this is returned. If rect contains this, then an empty Rect is returned.

Parameters:
[in]rectA pointer to a Rect.
Returns:
A Rect representing the subtraction.
Rect pp::Rect::Union(const Rectrect)const

Union() computes the union of this rectangle with the given rectangle.

The union is the smallest rectangle containing both rectangles.

Parameters:
[in]rectA pointer to a Rect.
Returns:
A Rect representing the union.
int32_t pp::Rect::width()const [inline]

Getter function for returning the value of width.

Returns:
The value of width for this Rect.
int32_t pp::Rect::x()const [inline]

Getter function for returning the value of x.

Returns:
The value of x for this Point.
int32_t pp::Rect::y()const [inline]

Getter function for returning the value of y.

Returns:
The value of y for this Point.

The documentation for this class was generated from the following file:
This site uses cookies to deliver and enhance the quality of its services and to analyze traffic. If you agree, cookies are also used to serve advertising and to personalize the content and advertisements that you see. Learn more about our use of cookies.