![]() |
ATLAS Offline Software
|
#include "PolygonTriangulator.h"#include <algorithm>#include <cmath>#include <map>#include <limits>#include <list>#include <queue>#include <set>#include <iostream>#include <stack>#include <cassert>#include <cstdlib>Go to the source code of this file.
Classes | |
| class | internal_poltrig::BTreeNode< T, KeyType > |
| class | internal_poltrig::SplayTree< T, KeyType > |
| class | internal_poltrig::Pointbase |
| class | internal_poltrig::Linebase |
| class | PolygonTriangulator::Polygon |
Namespaces | |
| namespace | internal_poltrig |
Macros | |
| #define | sqr(t) |
| #define | INEXACT /* Nothing */ |
| #define | REAL double /* float or double */ |
| #define | Absolute(a) |
| #define | Fast_Two_Sum_Tail(a, b, x, y) |
| #define | Fast_Two_Sum(a, b, x, y) |
| #define | Two_Sum_Tail(a, b, x, y) |
| #define | Two_Sum(a, b, x, y) |
| #define | Two_Diff_Tail(a, b, x, y) |
| #define | Two_Diff(a, b, x, y) |
| #define | Split(a, ahi, alo) |
| #define | Two_Product_Tail(a, b, x, y) |
| #define | Two_Product(a, b, x, y) |
| #define | Two_One_Diff(a1, a0, b, x2, x1, x0) |
| #define | Two_Two_Diff(a1, a0, b1, b0, x3, x2, x1, x0) |
Typedefs | |
| typedef std::map< unsigned int, Pointbase * > | internal_poltrig::PointbaseMap |
| typedef std::map< unsigned int, Linebase * > | internal_poltrig::LineMap |
| typedef std::priority_queue< Pointbase > | internal_poltrig::PQueue |
| typedef SplayTree< Linebase *, double > | internal_poltrig::EdgeBST |
| typedef std::list< unsigned int > | internal_poltrig::Monopoly |
| typedef std::list< Monopoly > | internal_poltrig::Monopolys |
| typedef std::vector< unsigned int > | internal_poltrig::Triangle |
| typedef std::list< Triangle > | internal_poltrig::Triangles |
| typedef std::map< unsigned int, std::set< unsigned int > > | internal_poltrig::AdjEdgeMap |
Functions | |
| int | internal_poltrig::fast_expansion_sum_zeroelim (const int &elen, REAL *e, const int &flen, REAL *f, REAL *h) |
| REAL | internal_poltrig::estimate (const int &elen, REAL *e) |
| REAL | internal_poltrig::orient2dadapt (REAL *pa, REAL *pb, REAL *pc, const REAL &detsum) |
| REAL | internal_poltrig::orient2d (REAL *pa, REAL *pb, REAL *pc) |
| double | internal_poltrig::orient2d (double *pa, double *pb, double *pc) |
| double | internal_poltrig::dist_sqr (const Pointbase &sp, const Pointbase &ep) |
| double | internal_poltrig::dist_sqr (double *pa, double *pb) |
| void | internal_poltrig::UpdateKey (BTreeNode< Linebase *, double > *node, double y) |
| bool | internal_poltrig::operator== (const Pointbase &pa, const Pointbase &pb) |
| bool | internal_poltrig::operator> (const Pointbase &pa, const Pointbase &pb) |
| bool | internal_poltrig::operator< (const Pointbase &pa, const Pointbase &pb) |
| bool | internal_poltrig::operator!= (const Pointbase &pa, const Pointbase &pb) |
| #define Absolute | ( | a | ) |
Definition at line 273 of file PolygonTriangulator.cxx.
Definition at line 289 of file PolygonTriangulator.cxx.
| #define INEXACT /* Nothing */ |
Definition at line 262 of file PolygonTriangulator.cxx.
| #define REAL double /* float or double */ |
Definition at line 265 of file PolygonTriangulator.cxx.
| #define Split | ( | a, | |
| ahi, | |||
| alo ) |
| #define sqr | ( | t | ) |
Definition at line 113 of file PolygonTriangulator.cxx.
Definition at line 308 of file PolygonTriangulator.cxx.
| #define Two_One_Diff | ( | a1, | |
| a0, | |||
| b, | |||
| x2, | |||
| x1, | |||
| x0 ) |
Definition at line 343 of file PolygonTriangulator.cxx.
Definition at line 328 of file PolygonTriangulator.cxx.
Definition at line 297 of file PolygonTriangulator.cxx.
| #define Two_Two_Diff | ( | a1, | |
| a0, | |||
| b1, | |||
| b0, | |||
| x3, | |||
| x2, | |||
| x1, | |||
| x0 ) |
Definition at line 347 of file PolygonTriangulator.cxx.