blob: 278f91cec76d7525cc1ad20c91cf441476c33a68 [file] [log] [blame]
#pragma once
#include <vector>
#include <exception>
#include <deque>
struct DelaunatorPoint {
long int i;
double x;
double y;
long int t;
};
class Delaunator{
public:
Delaunator(const std::vector<double> &coords);
private:
double m_center_x;
double m_center_y;
double m_hash_size;
std::vector<int> m_hash;
std::deque<DelaunatorPoint> m_hull;
long int hash_key(double x, double y);
void hash_edge(std::deque<DelaunatorPoint>::iterator e);
};