optics
Class IntensityRay

java.lang.Object
  extended by optics.Optics
      extended by optics.Ray
          extended by optics.RayVector
              extended by optics.IntensityRay

public class IntensityRay
extends RayVector

Class to implement a IntensityRay being the basis ray traced through optical systems used in incoherent light.

Most of the useful propagation methods are defined in the RayVector super class.


Field Summary
 
Fields inherited from class optics.RayVector
currentIndex, director, opticalPathLength, position
 
Fields inherited from class optics.Ray
intensity, monitor, waveLength
 
Fields inherited from class optics.Optics
DEFAULT_WAVELENGTH, errorStream, fmt, MICRONS
 
Constructor Summary
IntensityRay()
          Form a default Ray at position (0,0,0) along the z-axis with wavelength set to Constants.GREEN and intensity of 1.0.
IntensityRay(IntensityRay ray)
          Form a Ray with parameters specified by a IntensityRay, all parameters are copied, (including the current refractive index) with position and direction cloned.
IntensityRay(Position p, Director u, double lambda)
          Form an IntensityRay in air with intensity defaulted to 1.0
IntensityRay(Position p, Director u, double lambda, double i)
          Form an IntensityRay in air with all parameters specified.
IntensityRay(SourcePoint s, Director u, double lambda)
          Form an IntensityRay with initial position and intensity specified by a SourcePoint.
 
Method Summary
 IntensityRay clone()
          Form a clone of the current ray.
 boolean propagateThrough(OpticalImage im)
          Overload or method to propagate through an OpticalSurface for the special case of an OpticalImage.
 java.lang.String toString()
          Method to return information as a String
 
Methods inherited from class optics.RayVector
addPathLength, distance, getCurrentIndex, getDirector, getNormalisedOpticalPathLength, getOpticalPathLength, getPosition, isInvalid, pointInPlane, propagate, propagate, propagateThrough, propagateThrough, reflection, refraction, setCurrentIndex, setDirector, setInvalid, setOpticalPathLength, setPosition
 
Methods inherited from class optics.Ray
addMonitor, clearMonitor, getIntensity, getMonitor, getWaveLength, isValid, monitorUpdate, setIntensity, setWaveLength
 
Methods inherited from class optics.Optics
getDefaultWaveLength, getErrorStream, getFormatString, getName, getStaticName, getVersion, printError, setDefaultWaveLength, setErrorStream, setFormatString, setMicrons
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IntensityRay

public IntensityRay(Position p,
                    Director u,
                    double lambda,
                    double i)
Form an IntensityRay in air with all parameters specified.

Parameters:
p - the initial Position
u - the initial Director
lambda - the wavelength
i - the intensity

IntensityRay

public IntensityRay(Position p,
                    Director u,
                    double lambda)
Form an IntensityRay in air with intensity defaulted to 1.0

Parameters:
p - the position
u - the director
lambda - the wavelength

IntensityRay

public IntensityRay(SourcePoint s,
                    Director u,
                    double lambda)
Form an IntensityRay with initial position and intensity specified by a SourcePoint.

Parameters:
s - the sourcepoint
u - the director
lambda - wavelength

IntensityRay

public IntensityRay()
Form a default Ray at position (0,0,0) along the z-axis with wavelength set to Constants.GREEN and intensity of 1.0.


IntensityRay

public IntensityRay(IntensityRay ray)
Form a Ray with parameters specified by a IntensityRay, all parameters are copied, (including the current refractive index) with position and direction cloned. The RayMonitor is NOT copied.

Parameters:
ray - the specifying ray.
Method Detail

clone

public IntensityRay clone()
Form a clone of the current ray. All parameter clones except the RayMonitor are copied.

Overrides:
clone in class java.lang.Object
Returns:
IntensityRay cloned ray

propagateThrough

public boolean propagateThrough(OpticalImage im)
Overload or method to propagate through an OpticalSurface for the special case of an OpticalImage. It operates exaclty as the normal propgateThrough execpt the ray intensity is added to the intersection point on the OpticalImage.

Parameters:
im - the OpticalImage
Returns:
boolean success or faiure to propagate.

toString

public java.lang.String toString()
Method to return information as a String

Overrides:
toString in class RayVector
Returns:
String formatted String