net.sf.j3d.threeD.raytracer.primitives
Class Cone

java.lang.Object
  extended by net.sf.j3d.threeD.raytracer.engine.AbstractSurface
      extended by net.sf.j3d.threeD.raytracer.primitives.Cone
All Implemented Interfaces:
Surface

public class Cone
extends AbstractSurface

A Cone object represents a cone in 3d space.


Constructor Summary
Cone()
          Constructs a Cone object that represents a cone with a base radius of 1.0, centered at the origin, that is black.
Cone(Vector location, double radius)
          Constructs a Cone object that represents a cone with the specified base radius, and the specified location, that is black.
Cone(Vector location, double radius, RGB color)
          Constructs a Cone object that represents a cone with the specified base radius, location, and color.
 
Method Summary
 Vector getNormalAt(Vector point)
          Returns a Vector object that represents the vector normal to this cone at the point represented by the specified Vector object.
 boolean intersect(Ray ray)
          Returns true if the ray intersects the 3d surface in real space.
 Intersection intersectAt(Ray ray)
          Returns an Intersection object that represents the values for t that solve the vector equation p = o + t * d where p is a point of intersection of the specified ray and the surface.
 
Methods inherited from class net.sf.j3d.threeD.raytracer.engine.AbstractSurface
addShader, addTexture, addTransform, calculateTransform, getColor, getColorAt, getColorAt, getIndexOfRefraction, getIndexOfRefraction, getLocation, getParent, getReflectedPercentage, getReflectedPercentage, getRefractedPercentage, getRefractedPercentage, getRotationCoefficients, getScaleCoefficients, getShadeBack, getShadeFront, getShaderSet, getSize, getTexture, getTextures, getTextureSet, getTransform, getTransform, getTransforms, removeTexture, removeTransform, setColor, setIndexOfRefraction, setLocation, setParent, setReflectedPercentage, setRefractedPercentage, setRotationCoefficients, setScaleCoefficients, setShadeBack, setShadeFront, setShaders, setShaders, setSize, setTexture, setTextures, setTransform, setTransforms, shade, triangulate
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Cone

public Cone()
Constructs a Cone object that represents a cone with a base radius of 1.0, centered at the origin, that is black.


Cone

public Cone(Vector location,
            double radius)
Constructs a Cone object that represents a cone with the specified base radius, and the specified location, that is black.


Cone

public Cone(Vector location,
            double radius,
            RGB color)
Constructs a Cone object that represents a cone with the specified base radius, location, and color.

Method Detail

getNormalAt

public Vector getNormalAt(Vector point)
Returns a Vector object that represents the vector normal to this cone at the point represented by the specified Vector object.


intersect

public boolean intersect(Ray ray)
Description copied from interface: Surface
Returns true if the ray intersects the 3d surface in real space.

Returns:
True if the ray represented by the specified Ray object intersects the cone represented by this Cone object.

intersectAt

public Intersection intersectAt(Ray ray)
Description copied from interface: Surface
Returns an Intersection object that represents the values for t that solve the vector equation p = o + t * d where p is a point of intersection of the specified ray and the surface.

Returns:
An Intersection object storing the locations along the ray represented by the specified Ray object that intersection between the ray and the cone occurs.