-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathfunctions.h
27 lines (20 loc) · 1.66 KB
/
functions.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include "ibex.h"
#include "vibes.h"
#include "interval_tools.h"
namespace functions{
void manageCollision(std::vector<std::vector<double>>& waypoints, ibex::IntervalVector boatState, std::vector<ibex::Interval>& boatSpeed,
std::vector<ibex::IntervalVector> obstacles, std::vector<std::vector<std::vector<double>>> borderList);
void pathReplanning(double& boatHead, ibex::Interval& speed, ibex::IntervalVector boatState, ibex::Interval timeInterval,
std::vector<ibex::IntervalVector> obstacles, std::vector<std::vector<std::vector<double>>> borderList);
void updateBoatAndObstaclesData(std::vector<std::vector<double>> waypoints, ibex::IntervalVector &boatState,
std::vector<ibex::Interval> boatSpeed, ibex::Interval &timeInterval, double &boatHead, std::vector<ibex::IntervalVector> &obstacles, int currentSegmentIndex);
void waypointManagement(double boatHead, std::vector<ibex::Interval>& boatSpeed, ibex::IntervalVector boatState,
double endTime, std::vector<std::vector<double>>& waypoints, int currentSegmentIndex);
void drawTrajectory(std::vector<std::vector<double>> formerWpts, std::vector<std::vector<double>> waypoints,
std::vector<ibex::Interval> boatSpeed, ibex::IntervalVector boatState, std::vector<ibex::IntervalVector> obstacles,
std::vector<std::vector<std::vector<double>>> borderList);
void drawPath(std::vector<std::vector<double>> formerWpts, std::vector<std::vector<double>> waypoints,
std::vector<ibex::Interval> boatSpeed, ibex::IntervalVector boatState, std::vector<ibex::IntervalVector> obstacles,
std::vector<std::vector<std::vector<double>>> borderList);
double computeHeading(ibex::Interval XspeedComponent, ibex::Interval YspeedComponent);
}