DOLFIN
DOLFIN C++ interface
Loading...
Searching...
No Matches
predicates.h
1// This is a DOLFIN header file for predicates.cpp which provides
2//
3// Routines for Arbitrary Precision Floating-point Arithmetic
4// and Fast Robust Geometric Predicates
5//
6// by
7//
8// Jonathan Richard Shewchuk
9//
10// Code is placed in the public domain.
11
12#ifndef __PREDICATES_H
13#define __PREDICATES_H
14
15namespace dolfin
16{
17
18 class Point;
19
21 void exactinit();
22
24 double orient1d(double a, double b, double x);
25
29 double _orient2d(const double* a, const double* b, const double* c);
30
32 double orient2d(const Point& a, const Point& b, const Point& c);
33
37 double _orient3d(const double* a, const double* b, const double* c, const double* d);
38
40 double orient3d(const Point& a, const Point& b, const Point& c, const Point& d);
41
45
47 {
48 public:
49
51 {
52 exactinit();
53 }
54
55 };
56
57}
58
59#endif
Definition Point.h:41
Definition predicates.h:47
Definition adapt.h:30
void exactinit()
Initialize tolerances for exact arithmetic.
Definition predicates.cpp:670
double orient1d(double a, double b, double x)
Compute relative orientation of point x wrt segment [a, b].
Definition predicates.cpp:5
double orient3d(const Point &a, const Point &b, const Point &c, const Point &d)
Convenience function using dolfin::Point.
Definition predicates.cpp:19
double orient2d(const Point &a, const Point &b, const Point &c)
Convenience function using dolfin::Point.
Definition predicates.cpp:12
double _orient3d(const double *a, const double *b, const double *c, const double *d)
double _orient2d(const double *a, const double *b, const double *c)