Example of using "Canvas" form "Graphics" library to display 3D graphics.

Dependencies:   BSP_DISCO_F746NG Graphics mbed

Revision:
0:8acbce46eede
Child:
1:4a5e329e617b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HardwareAccess/Angle.h	Sun Nov 06 02:14:34 2016 +0000
@@ -0,0 +1,50 @@
+/*
+    Angle.h - Calculate rotation angle
+
+    Copyright(c) 2016 karpent at gmail.com, MIT License
+
+    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files(the "Software"),
+    to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+    and / or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions :
+
+    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+    OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
+    THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+#pragma once
+
+#define FULL_ANGLE 360.0f
+
+typedef enum EAngleDirection {
+    Left = 0,
+    Right = 1
+} AngleDirection;
+
+
+/**
+  * @brief  Calculate rotation angle.
+  */
+class Angle
+{
+public :
+
+    Angle();
+
+    float GetAngle();
+
+    /// Read the rotation angle from a potentiometer attached to pin A0
+    float ReadAngle();
+
+protected:
+    /// Rotation angle in degrees, range: 0 - 360
+    float angle;
+
+private:
+    AngleDirection direction;
+
+    float delta;
+};
\ No newline at end of file