예제 #1
0
void TestShapeTriangle::test2DPointContained()
{
    testInit(__func__);
    double width = 200;
    double height = 200;
    Point origin = Point(100,100,0);
    Point top = Point(100, height, 0);
    Point right = Point(width, 100, 0);

    ShapeTriangle triangle = ShapeTriangle(origin, top, right);

    // Tests
    // See if all vertices are contained
    if (!triangle.pointContained(origin)) {
        testFailed();
    }
    if (!triangle.pointContained(top)) {
        testFailed();
    }
    if (!triangle.pointContained(right)) {
        testFailed();
    }
    // Test point inside
    Point inside = Point(120, 120);
    if (!triangle.pointContained(inside)) {
        testFailed();
    }
    // Point outside
    Point outside = Point(99, 99);
    if (triangle.pointContained(outside)) {
        testFailed();
    }
    
    testInterpret();
}
예제 #2
0
void testAll() {
  testMakeList();
  testSymbols();
  testParse();
  testEval();
  testParseAndEval();
  testSerialize();
  testInterpret();
}
예제 #3
0
void TestShapeTriangle::testDeterminant3D()
{
    testInit(__func__);
    double width = 200;
    double height = 200;
    Point origin = Point(123,456,0);
    Point top = Point(333, height, 0);
    Point right = Point(width, 333, 0);

    ShapeTriangle triangle = ShapeTriangle(origin, top, right);

    // Tests
    double a11 = origin.getX() - right.getX();
    double a12 = top.getX() - right.getX();
    double a21 = origin.getY() - right.getY();
    double a22 = top.getY() - right.getY();
    double determinant3D = 0;
    if (determinant3D != triangle.getDeterminant3D()) {
        testFailed();
    }
    testInterpret();
}