|
2 | 2 | #define SETTINGS_H_INCLUDED |
3 | 3 |
|
4 | 4 | #include <wx/wx.h> |
| 5 | +#include <vector> |
| 6 | +#include <algorithm> |
| 7 | +// #include <execution> |
| 8 | + |
| 9 | +using namespace std; |
| 10 | + |
| 11 | +// Structure pour représenter un point en 2D |
| 12 | +struct Point { |
| 13 | + double x; |
| 14 | + double y; |
| 15 | +}; |
| 16 | + |
| 17 | +// Fonction de comparaison de points selon leur abscisse |
| 18 | +// bool comparePoints(const Point &a, const Point &b); |
5 | 19 |
|
6 | 20 | wxArrayString getCaseList(); |
7 | 21 | wxArrayString getObstacleList(); |
8 | 22 | wxArrayString getScalarList(); |
9 | 23 |
|
| 24 | +vector<wxPoint> getSquarePoints(wxPoint pos, double length); |
| 25 | +vector<Point> getSquarePoints(Point pos, double length); |
| 26 | + |
| 27 | +vector<wxPoint> getDiamondPoints(wxPoint pos, double length); |
| 28 | +vector<Point> getDiamondPoints(Point pos, double length); |
| 29 | + |
| 30 | +vector<wxPoint> getNacaPoints(wxPoint pos, double length); |
| 31 | +vector<Point> getNacaPoints(Point pos, double length); |
| 32 | +vector<Point> generateNacaProfile(Point pos, double chord, double thickness, int nb_points, double incidence=M_PI/12); |
| 33 | +vector<wxPoint> generateNacaProfile(wxPoint pos, double chord, double thickness, int nb_points, double incidence=M_PI/12); |
| 34 | + |
| 35 | +vector<vector<Point>> generateRotorPoints(Point pos, double length); |
| 36 | +vector<vector<wxPoint>> generateRotorPoints(wxPoint pos, double length); |
| 37 | +vector<vector<Point>> generateRotor(Point center, double radius, double chord, double thickness, int nb_points, int Z); |
| 38 | +vector<vector<wxPoint>> generateRotor(wxPoint center, double radius, double chord, double thickness, int nb_points, int Z); |
| 39 | + |
| 40 | + |
| 41 | + |
| 42 | + |
| 43 | +wxPoint *fromVectorToPtr(vector<wxPoint> pt); |
| 44 | + |
| 45 | +// bool isPointInPolygon(vector<wxPoint> P, wxPoint M); |
| 46 | + |
| 47 | +// bool isInside(vector<Point> polygon, Point P); |
| 48 | +bool isInsidePolygon(vector<Point> polygon, Point P); |
| 49 | +vector<Point> rotatePolygon(vector<Point> polygon, Point center, double theta); |
| 50 | +vector<wxPoint> rotatePolygon(vector<wxPoint> polygon, wxPoint center, double theta); |
| 51 | +vector<vector<Point>> generateCircularRepeats(vector<Point> polygon, Point center, int n); |
| 52 | + |
| 53 | + |
10 | 54 |
|
11 | 55 | #endif // SETTINGS_H_INCLUDED |
0 commit comments