Module imp3d

Class Projection

All Implemented Interfaces:
Manageable, Shareable
Direct Known Subclasses:
ParallelProjection, PerspectiveProjection

public abstract class Projection extends ShareableBase
  • Field Details

    • aspect

      protected float aspect
    • $TYPE

      public static final Projection.Type $TYPE
    • aspect$FIELD

      public static final SCOType.Field aspect$FIELD
    • sx

      protected transient float sx
    • sy

      protected transient float sy
  • Constructor Details

    • Projection

      public Projection()
  • Method Details

    • getAspect

      public float getAspect()
    • update

      protected abstract void update()
    • getScaleX

      public float getScaleX()
    • getScaleY

      public float getScaleY()
    • getTransformation

      protected abstract void getTransformation(float near, float far, Matrix4d viewToClip, Matrix4d deviceToView)
    • getRayInViewCoordinates

      protected abstract void getRayInViewCoordinates(float x, float y, Point3d origin, Vector3d direction, Matrix4d deviceToView, Tuple2d densities)
    • getScaleAt

      public abstract float getScaleAt(float z)
    • generateRandomOrigins

      public void generateRandomOrigins(Environment env, RayList out, Random rnd, Matrix4d deviceToView)
    • generateRandomRays

      public void generateRandomRays(Environment env, Vector3f out, Spectrum specOut, RayList rays, Random rnd, Matrix4d deviceToView)
    • computeBSDF

      public float computeBSDF(Environment env, Spectrum specIn, Vector3f out, Spectrum bsdf)
    • completeRay

      protected double completeRay(Environment env, Point3d vertex, Ray out, Matrix4d viewToClip, Matrix4d deviceToView)