Ipelib

- Main Page
- Related Pages
- Modules
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Related Functions | List of all members
ipe::Rect Class Reference
Ipe Geometry

`#include <ipegeo.h>`

## Public Member Functions

| Rect ()
| Rect (const Vector &c)
| Rect (const Vector &c1, const Vector &c2)
void | clear ()
int | isEmpty () const
double | left () const
double | right () const
double | bottom () const
double | top () const
Vector | topRight () const
Vector | bottomLeft () const
Vector | topLeft () const
Vector | bottomRight () const
double | width () const
double | height () const
void | addPoint (const Vector &rhs)
void | addRect (const Rect &rhs)
void | clipTo (const Rect &rhs)
bool | contains (const Vector &rhs) const
bool | contains (const Rect &rhs) const
bool | certainClearance (const Vector &v, double bound) const
bool | intersects (const Rect &rhs) const

## Related Functions

(Note that these are not member functions.)
Stream & | operator<< (Stream &stream, const Rect &rhs)

## Detailed Description

Axis-parallel rectangle (which can be empty)

## Constructor & Destructor Documentation

ipe::Rect::Rect | ( |  | ) |

inline explicit

Create empty rectangle.

ipe::Rect::Rect | ( | const Vector & | c | ) |

inline explicit

Create rectangle containing just the point c.

Rect::Rect | ( | const Vector & | c1,
|  | const Vector & | c2
| ) |  |

explicit

Create rectangle containing points c1 and c2.

## Member Function Documentation

void ipe::Rect::clear | ( |  | ) |

inline

Make rectangle empty.

int ipe::Rect::isEmpty | ( |  | ) | const

inline

True if rectangle is empty.

double ipe::Rect::left | ( |  | ) | const

inline

Return left side.

double ipe::Rect::right | ( |  | ) | const

inline

Return right side.

double ipe::Rect::bottom | ( |  | ) | const

inline

Return bottom side.

double ipe::Rect::top | ( |  | ) | const

inline

Return top side.

Vector ipe::Rect::topRight | ( |  | ) | const

inline

Return top right corner.

Vector ipe::Rect::bottomLeft | ( |  | ) | const

inline

Return bottom left corner.

Vector ipe::Rect::topLeft | ( |  | ) | const

inline

Return top left corner.

Vector ipe::Rect::bottomRight | ( |  | ) | const

inline

Return bottom right corner.

double ipe::Rect::width | ( |  | ) | const

inline

Return width.

double ipe::Rect::height | ( |  | ) | const

inline

Return height.

void Rect::addPoint | ( | const Vector & | rhs | ) |

Enlarge rectangle to contain point.

void Rect::addRect | ( | const Rect & | rhs | ) |

Enlarge rectangle to contain rhs rectangle.

Does nothing if rhs is empty.

void Rect::clipTo | ( | const Rect & | cbox | ) |

Clip rectangle to fit inside cbox.

Does nothing if either rectangle is empty.

bool Rect::contains | ( | const Vector & | rhs | ) | const

Does (closed) rectangle contain the point?

bool Rect::contains | ( | const Rect & | rhs | ) | const

Does rectangle contain other rectangle?

bool Rect::certainClearance | ( | const Vector & | v,
|  | double | bound
| ) |  | const

Returns false if the distance between the box and v is smaller than bound. Often returns true if their distance is larger than bound.

bool Rect::intersects | ( | const Rect & | rhs | ) | const

Does rectangle intersect other rectangle?

## Friends And Related Function Documentation

Stream & operator<< | ( | Stream & | stream,
|  | const Rect & | rhs
| ) |  |

related

The documentation for this class was generated from the following files:

- ipegeo.h
- ipegeo.cpp