Example of using "Canvas" form "Graphics" library to display 3D graphics.
Dependencies: BSP_DISCO_F746NG Graphics mbed
Diff: HardwareAccess/Angle.h
- Revision:
- 1:4a5e329e617b
- Parent:
- 0:8acbce46eede
- Child:
- 2:ef3093a7a43e
diff -r 8acbce46eede -r 4a5e329e617b HardwareAccess/Angle.h --- a/HardwareAccess/Angle.h Sun Nov 06 02:14:34 2016 +0000 +++ b/HardwareAccess/Angle.h Thu Nov 10 15:38:50 2016 +0000 @@ -1,24 +1,22 @@ /* - Angle.h - Calculate rotation angle +Angle.h - Calculate rotation angle - Copyright(c) 2016 karpent at gmail.com, MIT License +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 : +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 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. +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 @@ -27,24 +25,36 @@ /** * @brief Calculate rotation angle. + * Use method GetAngle() to get simulated rotation angle. + * Use method ReadAngle() if you have additional hadware attached to the board, + * it reads the rotation angle from a potentiometer. */ class Angle { -public : +public: Angle(); + /// <summary> + /// Gets the simulated angle value in degrees. + /// </summary> + /// <returns>Angle value in degrees.</returns> float GetAngle(); - /// Read the rotation angle from a potentiometer attached to pin A0 + /// <summary> + /// Reads the rotation angle from a potentiometer attached to pin A0 + /// </summary> + /// <returns>Angle value in degrees.</returns> float ReadAngle(); protected: + /// <summary> /// Rotation angle in degrees, range: 0 - 360 + /// </summary> float angle; private: - AngleDirection direction; + AngleDirection _direction; - float delta; + float _delta; }; \ No newline at end of file