Henry Triff / Mbed 2 deprecated ELEC2645_Project_el18ht

Dependencies:   mbed

Committer:
HenryWTriff
Date:
Tue Feb 11 12:15:04 2020 +0000
Revision:
2:d08b6a1eaf2b
Child:
3:ceed6d026b8b
Initial Graphics Added

Who changed what in which revision?

UserRevisionLine numberNew contents of line
HenryWTriff 2:d08b6a1eaf2b 1 #ifndef GRAPHICS_H
HenryWTriff 2:d08b6a1eaf2b 2 #define GRAPHICS_H
HenryWTriff 2:d08b6a1eaf2b 3
HenryWTriff 2:d08b6a1eaf2b 4 #include "mbed.h"
HenryWTriff 2:d08b6a1eaf2b 5 #include "Gamepad.h"
HenryWTriff 2:d08b6a1eaf2b 6 #include "N5110.h"
HenryWTriff 2:d08b6a1eaf2b 7 #include "Graphics.h"
HenryWTriff 2:d08b6a1eaf2b 8
HenryWTriff 2:d08b6a1eaf2b 9 //STRUCTS
HenryWTriff 2:d08b6a1eaf2b 10 struct Point_2D {
HenryWTriff 2:d08b6a1eaf2b 11 float x;
HenryWTriff 2:d08b6a1eaf2b 12 float y;
HenryWTriff 2:d08b6a1eaf2b 13 };
HenryWTriff 2:d08b6a1eaf2b 14 struct Line_2D {
HenryWTriff 2:d08b6a1eaf2b 15 Point_2D from;
HenryWTriff 2:d08b6a1eaf2b 16 Point_2D to;
HenryWTriff 2:d08b6a1eaf2b 17 };
HenryWTriff 2:d08b6a1eaf2b 18
HenryWTriff 2:d08b6a1eaf2b 19 class Graphics
HenryWTriff 2:d08b6a1eaf2b 20 {
HenryWTriff 2:d08b6a1eaf2b 21 public:
HenryWTriff 2:d08b6a1eaf2b 22 //SCREEN SETTINGS
HenryWTriff 2:d08b6a1eaf2b 23 void Change_Contrast(N5110 &LCD, Gamepad &Device);
HenryWTriff 2:d08b6a1eaf2b 24 //GRAPHICS
HenryWTriff 2:d08b6a1eaf2b 25 void Draw_Map(int game_fps, Point_2D translation, int angle, float squish, Line_2D *Track_Lines, N5110 &LCD);
HenryWTriff 2:d08b6a1eaf2b 26
HenryWTriff 2:d08b6a1eaf2b 27 private:
HenryWTriff 2:d08b6a1eaf2b 28 //TRANSFORM
HenryWTriff 2:d08b6a1eaf2b 29 Point_2D Rotate_Point(Point_2D point, float angle);
HenryWTriff 2:d08b6a1eaf2b 30 Point_2D Translate_Point(Point_2D point, int translate_x, int translate_y);
HenryWTriff 2:d08b6a1eaf2b 31 Point_2D Squish_Point(Point_2D point, float squish);
HenryWTriff 2:d08b6a1eaf2b 32 //MATH
HenryWTriff 2:d08b6a1eaf2b 33 int Round(float number);
HenryWTriff 2:d08b6a1eaf2b 34 float Gradient(Point_2D from, Point_2D to);
HenryWTriff 2:d08b6a1eaf2b 35 bool Gradient_Check_Infinate(Point_2D from, Point_2D to);
HenryWTriff 2:d08b6a1eaf2b 36 //DRAW
HenryWTriff 2:d08b6a1eaf2b 37 void Graphics_Draw_Line(Point_2D from, Point_2D to, bool solid, N5110 &LCD);
HenryWTriff 2:d08b6a1eaf2b 38
HenryWTriff 2:d08b6a1eaf2b 39
HenryWTriff 2:d08b6a1eaf2b 40 };
HenryWTriff 2:d08b6a1eaf2b 41
HenryWTriff 2:d08b6a1eaf2b 42 #endif