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:
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.