Package org.kalimullin.fsraytracer.ray

Examples of org.kalimullin.fsraytracer.ray.HitData


    @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


    private void traceRay(final Ray ray) {
        executorService.submit(new Runnable() {
            @Override
            public void run() {
                HitData hitData = getScene().traceRay(ray);
                System.out.println(ray.getId() + ":" + (!HitData.MISS.equals(hitData) ? hitData.getSceneObject().getName() : ""));
            }
        });
    }
View Full Code Here

    /**
     * Tracing ray and returning it's hit data.
     */
    public HitData traceRay(Ray ray) {
        HitData hitData = HitData.MISS;
        for (SceneObject sceneObject: getSceneObjects()) {
            HitPoint hitPoint = sceneObject.getHitPoint(ray);
            if (!HitPoint.MISSED.equals(hitPoint) && hitData.getHitPoint().compareTo(hitPoint) == 1)
                hitData = new HitData(hitPoint, sceneObject);
        }
        return hitData;
    }
View Full Code Here

TOP

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

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.