de.grogra.imp3d
Class LensProjection

java.lang.Object
  extended by de.grogra.persistence.ShareableBase
      extended by de.grogra.imp3d.Projection
          extended by de.grogra.imp3d.PerspectiveProjection
              extended by de.grogra.imp3d.LensProjection
All Implemented Interfaces:
Manageable, Shareable

public class LensProjection
extends PerspectiveProjection


Nested Class Summary
static class LensProjection.Type
           
 
Field Summary
static LensProjection.Type $TYPE
           
static SCOType.Field focalLength$FIELD
           
static SCOType.Field fStop$FIELD
           
static SCOType.Field subjectDistance$FIELD
           
 
Fields inherited from class de.grogra.imp3d.PerspectiveProjection
fieldOfView, fieldOfView$FIELD
 
Fields inherited from class de.grogra.imp3d.Projection
aspect, aspect$FIELD, sx, sy
 
Constructor Summary
LensProjection()
           
LensProjection(float fieldOfView, float aspect)
           
 
Method Summary
 void generateRandomOrigins(Environment env, RayList out, java.util.Random rnd, Matrix4d deviceToView)
           
 void generateRandomRays(Environment env, Vector3f out, Spectrum specOut, RayList rays, java.util.Random rnd, Matrix4d deviceToView)
           
 ManageableType getManageableType()
           
 
Methods inherited from class de.grogra.imp3d.PerspectiveProjection
clampFieldOfView, getFieldOfView, getRayInViewCoordinates, getScaleAt, getTransformation, setFieldOfView, update
 
Methods inherited from class de.grogra.imp3d.Projection
completeRay, computeBSDF, getAspect, getScaleX, getScaleY
 
Methods inherited from class de.grogra.persistence.ShareableBase
addReference, appendReferencesTo, fieldModified, getProvider, getStamp, initProvider, manageableReadResolve, manageableWriteReplace, removeReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

$TYPE

public static final LensProjection.Type $TYPE

focalLength$FIELD

public static final SCOType.Field focalLength$FIELD

fStop$FIELD

public static final SCOType.Field fStop$FIELD

subjectDistance$FIELD

public static final SCOType.Field subjectDistance$FIELD
Constructor Detail

LensProjection

public LensProjection()

LensProjection

public LensProjection(float fieldOfView,
                      float aspect)
Method Detail

generateRandomOrigins

public void generateRandomOrigins(Environment env,
                                  RayList out,
                                  java.util.Random rnd,
                                  Matrix4d deviceToView)
Overrides:
generateRandomOrigins in class Projection

generateRandomRays

public void generateRandomRays(Environment env,
                               Vector3f out,
                               Spectrum specOut,
                               RayList rays,
                               java.util.Random rnd,
                               Matrix4d deviceToView)
Overrides:
generateRandomRays in class Projection

getManageableType

public ManageableType getManageableType()
Specified by:
getManageableType in interface Manageable
Overrides:
getManageableType in class PerspectiveProjection