2024-11-06 17:02:59 -07:00
|
|
|
#include "ScaleneTriangle.h"
|
2024-11-18 00:16:40 -07:00
|
|
|
|
2024-11-06 17:02:59 -07:00
|
|
|
#include "GeometryUtils.h"
|
|
|
|
|
|
|
|
bool ScaleneTriangle::validate() {
|
2024-11-18 00:18:28 -07:00
|
|
|
double sideOne = calculate_distance(mVertices[0], mVertices[1]);
|
|
|
|
double sideTwo = calculate_distance(mVertices[1], mVertices[2]);
|
|
|
|
double sideThree = calculate_distance(mVertices[2], mVertices[0]);
|
2024-11-06 17:02:59 -07:00
|
|
|
|
2024-11-18 00:18:28 -07:00
|
|
|
// Scalene triangles must (a) Be a triangle and (b) Have no sides that equal
|
|
|
|
// each other
|
|
|
|
return lengths_make_triangle(sideOne, sideTwo, sideThree) &&
|
|
|
|
(!double_eq(sideOne, sideTwo) && !double_eq(sideTwo, sideThree) &&
|
|
|
|
!double_eq(sideThree, sideOne));
|
2024-11-06 17:02:59 -07:00
|
|
|
}
|