GY-63_MS5611/libraries/Angle
2021-10-17 22:24:38 +02:00
..
.github/workflows 0.1.11 Angle 2021-10-17 22:24:38 +02:00
examples 0.1.11 Angle 2021-10-17 22:24:38 +02:00
test 0.1.11 Angle 2021-10-17 22:24:38 +02:00
.arduino-ci.yml 0.1.11 Angle 2021-10-17 22:24:38 +02:00
Angle.cpp 0.1.11 Angle 2021-10-17 22:24:38 +02:00
Angle.h 0.1.11 Angle 2021-10-17 22:24:38 +02:00
keywords.txt 0.1.11 Angle 2021-10-17 22:24:38 +02:00
library.json 0.1.11 Angle 2021-10-17 22:24:38 +02:00
library.properties 0.1.11 Angle 2021-10-17 22:24:38 +02:00
LICENSE 2021-01-29 2021-01-29 12:31:58 +01:00
README.md 0.1.11 Angle 2021-10-17 22:24:38 +02:00

Arduino CI Arduino-lint JSON check License: MIT GitHub release

Angle

Arduino library for basic math for Angles in degrees, minute, seconds and ten-thousands.

Description

Angle is an Arduino class to print, compare and do basic maths with angles in degrees, minutes seconds and ten-thousands. The class was created to be able to print an angle with minutes and seconds instead of as a floating point or radians.

To make the library more useful basic maths ( + - * / ) and comparisons ( == != < <= > >= ) are added to the class.

The library implements the Printable interface, allowing one to call

Serial.println(angle) or SD.print(angle)

Interface

Constructors

  • Angle(int dd=0, int mm=0, int ss=0, int tt=0) create an Angle, default is zero.
  • Angle(double alpha) create an Angle from a double.
  • Angle(char * str) create an Angle from a string e.g. "45.31234".

base

  • int sign() returns -1 or 1
  • int degree() returns # degrees
  • int minute() returns # minutes
  • int second() returns # seconds
  • int tenthousand() returns # ten-thousands of a second

Conversions

  • double toDouble() returns the angle as a double (0..360.0, float on UNO)
  • double toRadians() returns the angle in radians (0..TWO_PI)
  • void fromRadian(double rad) create an angle from radians.

Equality operators

The library supports equality operator "==", "!=", "<" "<=" ">" and ">="

Math operators

  • negate -angle
  • addition and subtract add angles to angles
  • multiplication and division multiply an angle with a double
  • ratio ratio = Angle/Angle;

Operation

See examples

Note

The library has not been tested extensively and it could still contain bugs. Especially the constructor does not check input so use it carefully.