private bool isSquare(List <IntPoint> edgePoints, out List <IntPoint> corners) { if (shapeChecker.IsQuadrilateral(edgePoints, out corners)) { // edges same length? IntPoint v1 = corners[0] - corners[1]; IntPoint v2 = corners[1] - corners[2]; float t1 = v1.EuclideanNorm() - v2.EuclideanNorm(); if (t1 < 0) { t1 = -t1; } if (t1 > 3) { return(false); } IntPoint v3 = corners[2] - corners[3]; float t2 = v2.EuclideanNorm() - v3.EuclideanNorm(); if (t2 < 0) { t2 = -t2; } if (t2 > 3) { return(false); } IntPoint v4 = corners[3] - corners[0]; float t3 = v3.EuclideanNorm() - v4.EuclideanNorm(); if (t3 < 0) { t3 = -t3; } if (t3 > 3) { return(false); } return(true); } else { return(false); } }
public void EuclideanNormTest( int x, int y, double expectedNorm ) { IntPoint point = new IntPoint( x, y ); Assert.AreEqual( point.EuclideanNorm( ), expectedNorm ); }
public void EuclideanNormTest(int x, int y, double expectedNorm) { var point = new IntPoint(x, y); Assert.AreEqual(point.EuclideanNorm(), expectedNorm); }