de.grogra.imp3d.ray
Class RTCylinder

java.lang.Object
  extended by de.grogra.imp3d.objects.SceneTree.Node
      extended by de.grogra.imp3d.objects.SceneTree.Leaf
          extended by de.grogra.imp3d.objects.SceneTreeWithShader.Leaf
              extended by de.grogra.imp3d.ray.RaytracerLeaf
                  extended by de.grogra.imp3d.ray.RTCylinder
All Implemented Interfaces:
RTObject

public class RTCylinder
extends RaytracerLeaf
implements RTObject


Nested Class Summary
 
Nested classes/interfaces inherited from interface de.grogra.ray.RTObject
RTObject.RTObjectUserData
 
Field Summary
 Intersections.CylinderInput m_cylinderInput
           
 Intersections.CylinderLocalVariables m_cylinderLocalVariables
           
 Intersections.ObjectOutput m_cylinderOutput
           
 
Fields inherited from class de.grogra.imp3d.objects.SceneTreeWithShader.Leaf
interior, shader
 
Fields inherited from class de.grogra.imp3d.objects.SceneTree.Leaf
asNode, object, pathId
 
Fields inherited from class de.grogra.imp3d.objects.SceneTree.Node
next
 
Constructor Summary
RTCylinder(java.lang.Object object, boolean asNode, long pathId, float radius, Vector3f axis, boolean openTop, boolean openBottom)
           
 
Method Summary
 BoundingVolume getBoundingVolume()
           
 float getDistance(Ray ray, RayContext context)
           
 void getIntersectionDescription(IntersectionDescription desc)
           
 boolean isConvex()
           
 boolean isShadeable()
           
 boolean isSolid()
           
 void setTransformation(Matrix4f mat)
           
 
Methods inherited from class de.grogra.imp3d.ray.RaytracerLeaf
getMedium, getRTMedium, getRTShader, getShader, getTransformation, getUserData, setMedium, setShader
 
Methods inherited from class de.grogra.imp3d.objects.SceneTreeWithShader.Leaf
setInterior
 
Methods inherited from class de.grogra.imp3d.objects.SceneTree.Leaf
accept, getBoolean, getByte, getChar, getDouble, getFloat, getInt, getLong, getObject, getObject, getShort, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface de.grogra.ray.RTObject
getMedium, getShader, getUserData
 

Field Detail

m_cylinderInput

public final Intersections.CylinderInput m_cylinderInput

m_cylinderLocalVariables

public final Intersections.CylinderLocalVariables m_cylinderLocalVariables

m_cylinderOutput

public final Intersections.ObjectOutput m_cylinderOutput
Constructor Detail

RTCylinder

public RTCylinder(java.lang.Object object,
                  boolean asNode,
                  long pathId,
                  float radius,
                  Vector3f axis,
                  boolean openTop,
                  boolean openBottom)
Method Detail

getBoundingVolume

public BoundingVolume getBoundingVolume()
Specified by:
getBoundingVolume in interface RTObject

getDistance

public float getDistance(Ray ray,
                         RayContext context)
Specified by:
getDistance in interface RTObject

getIntersectionDescription

public void getIntersectionDescription(IntersectionDescription desc)
Specified by:
getIntersectionDescription in interface RTObject

isConvex

public boolean isConvex()
Specified by:
isConvex in interface RTObject

isShadeable

public boolean isShadeable()
Specified by:
isShadeable in interface RTObject

isSolid

public boolean isSolid()
Specified by:
isSolid in interface RTObject

setTransformation

public void setTransformation(Matrix4f mat)
Overrides:
setTransformation in class RaytracerLeaf