CGAL 6.0 - 2D and 3D Linear Geometry Kernel
Searching...
No Matches
CGAL::Triangle_3< Kernel > Class Template Reference

#include <CGAL/Triangle_3.h>

## Definition

template<typename Kernel>
class CGAL::Triangle_3< Kernel >

An object t of the class Triangle_3 is a triangle in the three-dimensional Euclidean space $$\E^3$$.

As the triangle is not a full-dimensional object there is only a test whether a point lies on the triangle or not.

Is model of
Kernel::Triangle_3

## Creation

Triangle_3 (const Point_3< Kernel > &p, const Point_3< Kernel > &q, const Point_3< Kernel > &r)
introduces a triangle t with vertices p, q and r.

## Operations

bool operator== (const Triangle_3< Kernel > &t2) const
Test for equality: two triangles t1 and t2 are equal, iff there exists a cyclic permutation of the vertices of t2, such that they are equal to the vertices of t1.

bool operator!= (const Triangle_3< Kernel > &t2) const
Test for inequality.

Point_3< Kernelvertex (int i) const
returns the i'th vertex modulo 3 of t.

Point_3< Kerneloperator[] (int i) const
returns vertex(int i).

Plane_3< Kernelsupporting_plane ()
returns the supporting plane of t, with same orientation.

## Predicates

bool is_degenerate () const
t is degenerate if its vertices are collinear.

bool has_on (const Point_3< Kernel > &p) const
A point is on t, if it is on a vertex, an edge or the face of t.

## Miscellaneous

Kernel::FT squared_area () const
returns a square of the area of t.

Bbox_3 bbox () const
returns a bounding box containing t.

Triangle_3< Kerneltransform (const Aff_transformation_3< Kernel > &at) const
returns the triangle obtained by applying at on the three vertices of t.

## ◆ Triangle_3()

template<typename Kernel >
 CGAL::Triangle_3< Kernel >::Triangle_3 ( const Point_3< Kernel > & p, const Point_3< Kernel > & q, const Point_3< Kernel > & r )

introduces a triangle t with vertices p, q and r.

Exactness
This construction is trivial and therefore always exact in Exact_predicates_inexact_constructions_kernel.

## ◆ bbox()

template<typename Kernel >
 Bbox_3 CGAL::Triangle_3< Kernel >::bbox ( ) const

returns a bounding box containing t.

Exactness
This construction is trivial and therefore always exact in Exact_predicates_inexact_constructions_kernel.

## ◆ operator[]()

template<typename Kernel >
 Point_3< Kernel > CGAL::Triangle_3< Kernel >::operator[] ( int i ) const

returns vertex(int i).

Exactness
This construction is trivial and therefore always exact in Exact_predicates_inexact_constructions_kernel.

## ◆ vertex()

template<typename Kernel >
 Point_3< Kernel > CGAL::Triangle_3< Kernel >::vertex ( int i ) const

returns the i'th vertex modulo 3 of t.

Exactness
This construction is trivial and therefore always exact in Exact_predicates_inexact_constructions_kernel.