angle function
double
angle(
- PoseLandmark firstLandmark,
- PoseLandmark midLandmark,
- PoseLandmark lastLandmark
)
Implementation
double angle(PoseLandmark firstLandmark, PoseLandmark midLandmark,
PoseLandmark lastLandmark) {
double radians = atan2(
lastLandmark.y - midLandmark.y, lastLandmark.x - midLandmark.x) -
atan2(firstLandmark.y - midLandmark.y, firstLandmark.x - midLandmark.x);
double degrees = radians * 180.0 / math.pi;
degrees = degrees.abs(); // Angle should never be negative
if (degrees > 180.0) {
degrees =
360.0 - degrees; // Always get the acute representation of the angle
}
return degrees;
}