Overview | Modules | Class Hierarchy | Classes | Members

# tlp::Circle< Obj > Struct Template Reference
[Basic]

`#include <Circle.h>`

Inherits tlp::Vector< Obj, 2 >.

Inheritance diagram for tlp::Circle< Obj >:

[legend]
Collaboration diagram for tlp::Circle< Obj >:

[legend]
List of all members.

## Detailed Description

### template<typename Obj>
struct tlp::Circle< Obj >

class for circle

Enables to both create and manipulate a circle

Author:
  David Auber auber@tulip-software.org

Version:
  0.0.1 24/01/2003

## Public Member Functions

- Circle ()
- Circle (const Vector< Obj, 2 > &pos, Obj radius)
- Circle (const Circle &c)
- Circle (Obj x, Obj y, Obj radius)
- void translate (const Vector< Obj, 2 > &v)
- bool intersection (const Circle< Obj > &c, const Vector< Obj, 2 > &p1, const Vector< Obj, 2 > &p2)
- Circle< Obj > & merge (const Circle< Obj > &c)
- bool isIncludeIn (const Circle< Obj > &circle) const

## Public Attributes

- Obj radius

## Constructor & Destructor Documentation

template<typename Obj>
tlp::Circle< Obj >::Circle | ( |  | ) | `[inline]`

template<typename Obj>
tlp::Circle< Obj >::Circle | ( | const Vector< Obj, 2 > & | pos,
|  | Obj | radius
| ) | `[inline]`

template<typename Obj>
tlp::Circle< Obj >::Circle | ( | const Circle< Obj > & | c | ) | `[inline]`

template<typename Obj>
tlp::Circle< Obj >::Circle | ( | Obj | x,
|  | Obj | y,
|  | Obj | radius
| ) | `[inline]`

## Member Function Documentation

template<typename Obj>
bool tlp::Circle< Obj >::intersection | ( | const Circle< Obj > & | c,
|  | const Vector< Obj, 2 > & | p1,
|  | const Vector< Obj, 2 > & | p2
| ) | `[inline]`

| Give the instersction of "this" with c, return false if no intersection exist

template<typename Obj>
bool tlp::Circle< Obj >::isIncludeIn | ( | const Circle< Obj > & | circle | ) | const

| Returns true if the circle is include in an other circle, false otherwise.

template<typename Obj>
Circle<Obj>& tlp::Circle< Obj >::merge | ( | const Circle< Obj > & | c | ) |

| Merges this circle with another circle; merging operation consists in computing the smallest enclosing circle of the two circle and to store the result in "this".

template<typename Obj>
void tlp::Circle< Obj >::translate | ( | const Vector< Obj, 2 > & | v | ) | `[inline]`

| Translate "this" by vector v

## Member Data Documentation

template<typename Obj>
Obj tlp::Circle< Obj >::radius

| Radius of the circle

Tulip Software by LaBRI Visualization Team 2001 - 2010