-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinterval_tools.h
23 lines (12 loc) · 1.05 KB
/
interval_tools.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "ibex.h"
#include "vibes.h"
ibex::Interval left(const ibex::Interval& x);
ibex::Interval right(const ibex::Interval& x);
ibex::IntervalVector left(const ibex::IntervalVector& X);
ibex::IntervalVector right(const ibex::IntervalVector& X);
void paving(ibex::IntervalVector X, std::vector<ibex::SepInter*> listSep, std::vector<ibex::IntervalVector>& listBoxes, double epsilon);
void createSepBorder(std::vector<std::vector<double>> border, std::vector <ibex::SepInter*> &listSep, ibex::IntervalVector boatInitPos, ibex::Interval T);
bool collisionCondition(ibex::Interval v, ibex::Interval x0, ibex::Interval y0, double th, ibex::Interval vi, ibex::Interval xi, ibex::Interval yi, ibex::Interval thi, ibex::Interval t);
bool crossBorder(ibex::Interval v, ibex::Interval x0, ibex::Interval y0, double th, double t, std::vector<double> border1, std::vector<double> border2);
double midPointDistance(ibex::IntervalVector X, ibex::IntervalVector Y);
ibex::IntervalVector findClosest(std::vector<ibex::IntervalVector> listBoxes, ibex::IntervalVector boatSpeed);