cgal/Packages/Triangulation_2/include/CGAL/Triangulation_utils_2.h

59 lines
1.6 KiB
C++

// ============================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
// intended for general use.
//
// ----------------------------------------------------------------------------
//
// release :
// release_date :
//
// file : include/CGAL/Triangulation_utils_2.h
// revision : $Revision$
// author(s) : Mariette Yvinec <Mariette.Yvinec@sophia.inria.fr>
// Sylvain Pion <Sylvain.Pion@sophia.inria.fr>
// Andreas Fabri <Andreas.Fabri@geometryfactory.com>
//
// coordinator : Mariette Yvinec <Mariette.Yvinec@sophia.inria.fr>
//
// ============================================================================
#ifndef CGAL_TRIANGULATION_UTILS_2_H
#define CGAL_TRIANGULATION_UTILS_2_H
CGAL_BEGIN_NAMESPACE
template < class T = void >
struct Triangulation_cw_ccw_static_2 {
static const int ccw_map[3];
static const int cw_map[3];
};
template < class T >
const int Triangulation_cw_ccw_static_2<T>::ccw_map[3] = {1, 2, 0};
template < class T >
const int Triangulation_cw_ccw_static_2<T>::cw_map[3] = {2, 0, 1};
class Triangulation_cw_ccw_2
: public Triangulation_cw_ccw_static_2<>
{
public:
static int ccw(const int i)
{
CGAL_triangulation_precondition( i >= 0 && i < 3);
return ccw_map[i];
}
static int cw(const int i)
{
CGAL_triangulation_precondition( i >= 0 && i < 3);
return cw_map[i];
}
};
CGAL_END_NAMESPACE
#endif //CGAL_TRIANGULATION_UTILS_2_H