12 lines
572 B
C++
12 lines
572 B
C++
|
#include "IsoscelesTriangle.h"
|
||
|
#include "GeometryUtils.h"
|
||
|
|
||
|
bool IsoscelesTriangle::validate() {
|
||
|
double sideOne = calculate_distance(mVertices[0], mVertices[1]);
|
||
|
double sideTwo = calculate_distance(mVertices[1], mVertices[2]);
|
||
|
double sideThree = calculate_distance(mVertices[2], mVertices[0]);
|
||
|
|
||
|
// Isosceles triangles must (a) Be a triangle and (b) Have two sides that equal each other
|
||
|
return lengths_make_triangle(sideOne, sideTwo, sideThree)
|
||
|
&& (double_eq(sideOne, sideTwo) || double_eq(sideTwo, sideThree) || double_eq(sideThree, sideOne));
|
||
|
}
|