Package org.kalimullin.fsraytracer.ray

Examples of org.kalimullin.fsraytracer.ray.Ray


    @Test
    public void testRayTraceHit() {
        // test data has only one object
        SceneObject pyramid = (SceneObject) scene.getSceneObjects().toArray()[0];
        HitData expectedHitData = new HitData(new HitPoint(new Point(-0.5, -0.5, 0), Math.sqrt(9 * 3)), pyramid);
        assertEquals(expectedHitData, scene.traceRay(new Ray(new Point(-3.5, -3.5, -3), new Point(1, 1, 1))));
    }
View Full Code Here


        assertEquals(expectedHitData, scene.traceRay(new Ray(new Point(-3.5, -3.5, -3), new Point(1, 1, 1))));
    }

    @Test
    public void testRayMiss() {
        assertEquals(HitData.MISS, scene.traceRay(new Ray(new Point(10,10,10), new Point(1,1,1))));
    }
View Full Code Here

        assertEquals(GeometryTestData.PYRAMID, pyramid);
    }

    @Test
    public void testHitPoints() {
        Ray xyRay = new Ray(new Point(3, 3, -5), new Point(0, 0, 2));
        assertEquals(new HitPoint(new Point(3,3,0), 5), GeometryTestData.PYRAMID.getHitPoint(xyRay));
        Ray yzRay = new Ray(new Point(-10, 3, 3), new Point(2, 0, 0));
        assertEquals(new HitPoint(new Point(0, 3, 3), 10), GeometryTestData.PYRAMID.getHitPoint(yzRay));
        Ray xzRay = new Ray(new Point(3, -5, 3), new Point(0, 2, 0));
        assertEquals(new HitPoint(new Point(3, 0, 3), 5), GeometryTestData.PYRAMID.getHitPoint(xzRay));
    }
View Full Code Here

        assertEquals(new HitPoint(new Point(3, 0, 3), 5), GeometryTestData.PYRAMID.getHitPoint(xzRay));
    }

    @Test
    public void testMiss() {
        Ray missRay = new Ray(new Point(20,20,20), new Point(1,1,1));
        assertEquals(HitPoint.MISSED, GeometryTestData.PYRAMID.getHitPoint(missRay));
    }
View Full Code Here

        assertNotEquals(GeometryTestData.POLYGON_ONE, GeometryTestData.POLYGON_TWO);
    }

    @Test
    public void testHitOneFace() {
        Ray hitRay = new Ray(new Point(5,5,3), new Point(-1,-1,-1));
        assertEquals(new HitPoint(new Point(2, 2, 0), Math.sqrt(27)), polygonOneFace.getHitPoint(hitRay));
    }
View Full Code Here

        assertEquals(new HitPoint(new Point(2, 2, 0), Math.sqrt(27)), polygonOneFace.getHitPoint(hitRay));
    }

    @Test
    public void testHitTwoFaces() {
        Ray hitRay = new Ray(new Point(5,5,3), new Point(1,1,-1));
        assertEquals(new HitPoint(new Point(8, 8, 0), Math.sqrt(27)), polygonTwoFaces.getHitPoint(hitRay));
    }
View Full Code Here

        assertEquals(new HitPoint(new Point(8, 8, 0), Math.sqrt(27)), polygonTwoFaces.getHitPoint(hitRay));
    }

    @Test
    public void testMissOneFace() {
        Ray missRay = new Ray(new Point(5,5,3), new Point(1,1,1));
        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(missRay));
    }
View Full Code Here

        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(missRay));
    }

    @Test
    public void testMissTwoFaces() {
        Ray missRay = new Ray(new Point(5,5,3), new Point(1,1,1));
        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(missRay));
    }
View Full Code Here

        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(missRay));
    }

    @Test
    public void testMissParallel() {
        Ray missRay = new Ray(new Point(10,2,6), new Point(5,12,0));
        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(missRay));
        assertEquals(HitPoint.MISSED, polygonTwoFaces.getHitPoint(missRay));
    }
View Full Code Here

        assertEquals(HitPoint.MISSED, polygonTwoFaces.getHitPoint(missRay));
    }

    @Test
    public void testMissPlaneIntersectedRay() {
        Ray hitRay = new Ray(new Point(25,25,3), new Point(1,1,-1));
        assertEquals(HitPoint.MISSED, polygonTwoFaces.getHitPoint(hitRay));
        assertEquals(HitPoint.MISSED, polygonOneFace.getHitPoint(hitRay));
    }
View Full Code Here

TOP

Related Classes of org.kalimullin.fsraytracer.ray.Ray

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.