# rect< T > Class Template Reference

`#include <_rect.h>`

List of all members.

## Public Types

typedef T | value_type

## Public Member Functions

| rect ()
| rect (const value_type &x1, const value_type &y1)
| rect (const value_type &x1, const value_type &y1, const value_type &x2, const value_type &y2)
| rect (const rect< T > &o)
template<typename U>
| rect (const rect< U > &o)
void | set_point (const value_type &x1, const value_type &y1)
void | expand (const value_type &x1, const value_type &y1)
void | set (const value_type &x1, const value_type &y1, const value_type &x2, const value_type &y2)
bool | valid () const
template<typename F>
bool | valid (const F &func) const

## Public Attributes

value_type | minx
value_type | maxx
value_type | miny
value_type | maxy

## Detailed Description

### template<typename T>
class rect< T >

======================================================================== Extended Template Library Rectangle Basic Class Implementation $Id$

Copyright (c) 2002 Adrian Bentley

This package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

=== N O T E S ===========================================================

This is an internal header file, included by other ETL headers. You should not attempt to use it directly.

=========================================================================

Definition at line 44 of file _rect.h.

## Member Typedef Documentation

template<typename T>

typedef T rect< T >::value_type

Definition at line 47 of file _rect.h.

## Constructor & Destructor Documentation

template<typename T>

rect< T >::rect | ( |  | ) | `[inline]`

Definition at line 55 of file _rect.h.

template<typename T>

rect< T >::rect | ( | const value_type & | x1,
|  | const value_type & | y1 |
| ) |  |  | `[inline]`

Definition at line 57 of file _rect.h.

References rect< T >::set_point().

template<typename T>

rect< T >::rect | ( | const value_type & | x1,
|  | const value_type & | y1,
|  | const value_type & | x2,
|  | const value_type & | y2 |
| ) |  |  | `[inline]`

Definition at line 62 of file _rect.h.

References rect< T >::expand(), and rect< T >::set_point().

template<typename T>

rect< T >::rect | ( | const rect< T > & | o | ) | `[inline]`

Definition at line 69 of file _rect.h.

template<typename T>
template<typename U>

rect< T >::rect | ( | const rect< U > & | o | ) | `[inline]`

Definition at line 74 of file _rect.h.

## Member Function Documentation

template<typename T>

void rect< T >::set_point | ( | const value_type & | x1,
|  | const value_type & | y1 |
| ) |  |  | `[inline]`

Definition at line 78 of file _rect.h.

References rect< T >::maxx, rect< T >::maxy, rect< T >::minx, and rect< T >::miny.

Referenced by rect< T >::rect().

template<typename T>

void rect< T >::expand | ( | const value_type & | x1,
|  | const value_type & | y1 |
| ) |  |  | `[inline]`

Definition at line 84 of file _rect.h.

References rect< T >::maxx, rect< T >::maxy, rect< T >::minx, and rect< T >::miny.

Referenced by rect< T >::rect().

template<typename T>

void rect< T >::set | ( | const value_type & | x1,
|  | const value_type & | y1,
|  | const value_type & | x2,
|  | const value_type & | y2 |
| ) |  |  | `[inline]`

Definition at line 92 of file _rect.h.

References rect< T >::maxx, rect< T >::maxy, rect< T >::minx, and rect< T >::miny.

Referenced by set_union().

template<typename T>

bool rect< T >::valid | ( |  | ) | const`[inline]`

Definition at line 100 of file _rect.h.

template<typename T>
template<typename F>

bool rect< T >::valid | ( | const F & | func | ) | const`[inline]`

Definition at line 106 of file _rect.h.

References rect< T >::maxx, rect< T >::maxy, rect< T >::minx, and rect< T >::miny.

## Member Data Documentation

template<typename T>

value_type rect< T >::minx

Definition at line 51 of file _rect.h.

Referenced by rect< T >::expand(), intersect(), rect< T >::set(), set_intersect(), rect< T >::set_point(), set_union(), and rect< T >::valid().

template<typename T>

value_type rect< T >::maxx

Definition at line 51 of file _rect.h.

Referenced by rect< T >::expand(), intersect(), rect< T >::set(), set_intersect(), rect< T >::set_point(), set_union(), and rect< T >::valid().

template<typename T>

value_type rect< T >::miny

Definition at line 51 of file _rect.h.

Referenced by rect< T >::expand(), intersect(), rect< T >::set(), set_intersect(), rect< T >::set_point(), set_union(), and rect< T >::valid().

template<typename T>

value_type rect< T >::maxy

Definition at line 51 of file _rect.h.

Referenced by rect< T >::expand(), intersect(), rect< T >::set(), set_intersect(), rect< T >::set_point(), set_union(), and rect< T >::valid().

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

- _rect.h