class TRect |

Geometric rectangle.

The class represents a rectangle whose sides are parallel with the axes of the co-ordinate system.

The co-ordinates of the top-left and bottom-right corners are used to set the dimensions of the rectangle. The bottom right co-ordinate is outside the rectangle. Thus TRect(TPoint(2,2),TSize(4,4)) is equal to TRect(TPoint(2,2),TPoint(6,6)), and in both cases you get a 4x4 pixel rectangle on the screen.

Functions are provided to initialise and manipulate the rectangle and to extract information about it.

Public Member Functions | |
---|---|

TRect(TUninitialized) | |

TRect() | |

TRect(TInt, TInt, TInt, TInt) | |

TRect(const TPoint &, const TPoint &) | |

TRect(const TPoint &, const TSize &) | |

TRect(const TSize &) | |

IMPORT_C void | BoundingRect(const TRect &) |

IMPORT_C TPoint | Center() |

IMPORT_C TBool | Contains(const TPoint &) |

IMPORT_C void | Grow(TInt, TInt) |

IMPORT_C void | Grow(const TSize &) |

IMPORT_C TInt | Height() |

IMPORT_C void | Intersection(const TRect &) |

IMPORT_C TBool | Intersects(const TRect &) |

IMPORT_C TBool | IsEmpty() |

IMPORT_C TBool | IsNormalized() |

IMPORT_C void | Move(TInt, TInt) |

IMPORT_C void | Move(const TPoint &) |

IMPORT_C void | Normalize() |

IMPORT_C void | Resize(TInt, TInt) |

IMPORT_C void | Resize(const TSize &) |

IMPORT_C void | SetHeight(TInt) |

IMPORT_C void | SetRect(TInt, TInt, TInt, TInt) |

IMPORT_C void | SetRect(const TPoint &, const TPoint &) |

IMPORT_C void | SetRect(const TPoint &, const TSize &) |

IMPORT_C void | SetSize(const TSize &) |

IMPORT_C void | SetWidth(TInt) |

IMPORT_C void | Shrink(TInt, TInt) |

IMPORT_C void | Shrink(const TSize &) |

IMPORT_C TSize | Size() |

IMPORT_C TInt | Width() |

IMPORT_C TBool | operator!=(const TRect &) |

IMPORT_C TBool | operator==(const TRect &) |

Private Member Functions | |
---|---|

void | Adjust(TInt, TInt) |

Public Member Enumerations | |
---|---|

enum | TUninitialized { EUninitialized } |

Public Attributes | |
---|---|

TPoint | iBr |

TPoint | iTl |

TRect | ( | TUninitialized | ) | [inline] |

Constructs a default rectangle.

This initialises the co-ordinates of its top left and bottom right corners to (0,0).

TUninitialized |

IMPORT_C | TRect | ( | ) |

Constructs a default rectangle.

This initialises the co-ordinates of its top left and bottom right corners to (0,0).

IMPORT_C | TRect | ( | TInt | aAx, |

TInt | aAy, | |||

TInt | aBx, | |||

TInt | aBy | |||

) |

Constructs the rectangle, initialising its top left and bottom right hand corners with four TInt values.

IMPORT_C | TRect | ( | const TPoint & | aPointA, |

const TPoint & | aPointB | |||

) |

Constructs the rectangle with two TPoints, corresponding to its top left and bottom right hand corners.

IMPORT_C | TRect | ( | const TSize & | aSize | ) |

Constructs the rectangle with a TSize.

The co-ordinates of its top left hand corner are initialised to (0,0) and its width and height are initialised to the values contained in the argument.

const TSize & aSize | The width and height of the rectangle. |

IMPORT_C void | BoundingRect | ( | const TRect & | aRect | ) |

Gets the minimal rectangle which bounds both this rectangle and the specified rectangle, and assigns it to this rectangle.

const TRect & aRect | The rectangle to use with this rectangle to get the minimal bounding rectangle. |

IMPORT_C TBool | Contains | ( | const TPoint & | aPoint | ) | const |

Tests whether a point is located within the rectangle.

Note that a point located on the top or left hand side of the rectangle is within the rectangle. A point located on the right hand side or bottom is considered to be outside the rectangle.

const TPoint & aPoint | The point to be tested. |

IMPORT_C void | Grow | ( | TInt | aDx, |

TInt | aDy | |||

) |

Grows the rectangle using the specified horizontal and vertical offsets.

The offset values are subtracted from the co-ordinates of its top left hand corner, and the same values are added to the co-ordinates of its bottom right hand corner. The co-ordinates of the centre of the rectangle remain unchanged. If either value is negative, the rectangle shrinks in the corresponding direction.

TInt aDx | The number of pixels by which to move the left and right hand sides of the rectangle. A positive value increases the width, a negative value reduces it. |

TInt aDy | The number of pixels by which to move the top and bottom of the rectangle. A positive value increases the height, a negative value reduces it. |

IMPORT_C void | Grow | ( | const TSize & | aSize | ) |

const TSize & aSize | The number of pixels by which to move the left and right hand sides of the rectangle (by aSize.iWidth) and the top and bottom (by aSize.iHeight). |

IMPORT_C void | Intersection | ( | const TRect & | aRect | ) |

Gets the area of intersection between this rectangle and the specified rectangle, and assigns it to this rectangle.

It is usual to call TRect::Intersects() first to verify whether the two rectangles intersect. If the two rectangles do not intersect, then, on return, this rectangle is set to be empty.

const TRect & aRect | The rectangle to be used with this rectangle to get the area of intersection. |

IMPORT_C TBool | Intersects | ( | const TRect & | aRect | ) | const |

Tests whether this rectangle overlaps with the specified rectangle.

Two rectangles overlap if any point is located within both rectangles. There is no intersection if two adjacent sides touch without overlapping, or if either rectangle is empty.

const TRect & aRect | The rectangle to compare with this rectangle for an intersection. |

IMPORT_C TBool | IsNormalized | ( | ) | const |

Tests whether the rectangle is normalised.

A rectangle is normalised when its width and height are both zero or greater.

IMPORT_C void | Move | ( | TInt | aDx, |

TInt | aDy | |||

) |

Moves the rectangle by adding an x, y offset.

The offset is added to the co-ordinates of both its top left and bottom right hand corners. The size of the rectangle is unchanged.

IMPORT_C void | Move | ( | const TPoint & | aOffset | ) |

Moves the rectangle by adding a TPoint offset.

The offset is added to the co-ordinates of both its top left and bottom right hand corners. The size of the rectangle is unchanged.

const TPoint & aOffset | The number of pixels to move the rectangle; horizontally by aOffset.iX and vertically by aOffset.iY. |

IMPORT_C void | Normalize | ( | ) |

Ensures that the rectangle's width and height have positive values.

For example, if the rectangle's co-ordinates are such that the top is below the bottom, or the right hand side is to the left of the left hand side, normalisation swaps the co-ordinates of the top and bottom or of the left and right.

IMPORT_C void | Resize | ( | TInt | aDx, |

TInt | aDy | |||

) |

Resizes a rectangle by adding a horizontal and vertical offset.

The offset is added to the co-ordinates of its bottom right hand corner. If either value is negative, the rectangle shrinks in the corresponding direction. The co-ordinates of the rectangle's top left hand corner are unaffected.

IMPORT_C void | Resize | ( | const TSize & | aSize | ) |

const TSize & aSize | The number of pixels by which to move the rectangle; the right hand side by aSize.iWidth and the bottom by aSize.iHeight. |

IMPORT_C void | SetHeight | ( | TInt | aHeight | ) |

Sets the height of the rectangle.

Only the position of the bottom of the rectangle is affected.

TInt aHeight | The new height of the rectangle. |

IMPORT_C void | SetRect | ( | TInt | aAx, |

TInt | aAy, | |||

TInt | aBx, | |||

TInt | aBy | |||

) |

Sets the rectangle's position using four TInts.

IMPORT_C void | SetRect | ( | const TPoint & | aPointTL, |

const TPoint & | aPointBR | |||

) |

Sets the rectangle's position using two TPoints.

IMPORT_C void | SetRect | ( | const TPoint & | aPoint, |

const TSize & | aSize | |||

) |

IMPORT_C void | SetSize | ( | const TSize & | aSize | ) |

Sets the size of the rectangle.

Only the co-ordinates of the bottom right hand corner of the rectangle are affected.

const TSize & aSize | The new width is aSize.iWidth. The new height is aSize.iHeight. |

IMPORT_C void | SetWidth | ( | TInt | aWidth | ) |

Sets the width of the rectangle.

Only the position of the rectangle's right hand side is affected.

TInt aWidth | The new width of the rectangle. |

IMPORT_C void | Shrink | ( | TInt | aDx, |

TInt | aDy | |||

) |

Shrinks a rectangle using specified horizontal and vertical offsets.

The offset values are added to the co-ordinates of its top left hand corner, and the same values are subtracted from the co-ordinates of its bottom right hand corner. The co-ordinates of the centre of the rectangle remain unchanged. If either value is negative, the rectangle expands in the corresponding direction.

TInt aDx | The number of pixels by which to move the left and right hand sides of the rectangle. A positive value reduces the width, a negative value increases it. |

TInt aDy | The number of pixels by which to move the top and bottom of the rectangle. A positive value reduces the height, a negative value increases it. |

IMPORT_C void | Shrink | ( | const TSize & | aSize | ) |

const TSize & aSize | The number of pixels by which to move the left and right hand sides of the rectangle (by aSize.iWidth) and the top and bottom (by aSize.iHeight). |

IMPORT_C TBool | operator!= | ( | const TRect & | aRect | ) | const |

Compares two rectangles for inequality.

Two rectangles are unequal if any of their co-ordinates differ.

const TRect & aRect | The rectangle to compare with this rectangle. |

IMPORT_C TBool | operator== | ( | const TRect & | aRect | ) | const |

Compares two rectangles for equality.

For two rectangles to be equal, the co-ordinates of both their top left and bottom right hand corners must be equal.

const TRect & aRect | The rectangle to compare with this rectangle. |

Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).

All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.