Loading...
Searching...
No Matches
predicates.h
// This is a DOLFIN header file for predicates.cpp which provides
//
// Routines for Arbitrary Precision Floating-point Arithmetic
// and Fast Robust Geometric Predicates
//
// by
//
// Jonathan Richard Shewchuk
//
// Code is placed in the public domain.
#ifndef __PREDICATES_H
#define __PREDICATES_H
namespace dolfin
{
class Point;
void exactinit();
double orient1d(double a, double b, double x);
double _orient2d(const double* a, const double* b, const double* c);
double orient2d(const Point& a, const Point& b, const Point& c);
double _orient3d(const double* a, const double* b, const double* c, const double* d);
double orient3d(const Point& a, const Point& b, const Point& c, const Point& d);
class PredicateInitialization
{
public:
PredicateInitialization()
{
exactinit();
}
};
}
#endif
dolfin::Point
Definition Point.h:41
dolfin
Definition adapt.h:30
dolfin::exactinit
void exactinit()
Initialize tolerances for exact arithmetic.
Definition predicates.cpp:670
dolfin::orient1d
double orient1d(double a, double b, double x)
Compute relative orientation of point x wrt segment [a, b].
Definition predicates.cpp:5
dolfin::orient3d
double orient3d(const Point &a, const Point &b, const Point &c, const Point &d)
Convenience function using dolfin::Point.
Definition predicates.cpp:19
dolfin::orient2d
double orient2d(const Point &a, const Point &b, const Point &c)
Convenience function using dolfin::Point.
Definition predicates.cpp:12
dolfin::_orient3d
double _orient3d(const double *a, const double *b, const double *c, const double *d)
dolfin::_orient2d
double _orient2d(const double *a, const double *b, const double *c)