Package skyview.geometry.projecter
Class Ait
java.lang.Object
skyview.geometry.Transformer
skyview.geometry.Projecter
skyview.geometry.projecter.Ait
- All Implemented Interfaces:
Serializable
,Component
This class implements the AIT (Hammer-Aitov)
projection. This version uses only the Math.sqrt
function without any calls to trigonometric functions.
- See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
forwardTransform
(double[] sphere, double[] plane) A description of the componentgetName()
The name of the Componentinverse()
Get the associated deprojecterboolean
isInverse
(Transformer trans) Is this the inverse of another transformation?static void
static void
reverseTransform
(double[] plane, double[] sphere) double[]
shadowPoint
(double x, double y) Find the shadow point for the given element.boolean
straddle
(double[][] pnts) Does this figure straddle the boundary.boolean
Is it possible for a pixel to straddle the valid region.double[][][]
straddleComponents
(double[][] input) Get the straddle regions from a given set.final void
transform
(double[] sphere, double[] plane) Convert a single point where the output vector is supplied.boolean
validPosition
(double[] plane) Is this a valid position in the projection plane for this image.Methods inherited from class skyview.geometry.Projecter
allValid, getInputDimension, getOutputDimension, getXTiling, getYTiling, tissot
Methods inherited from class skyview.geometry.Transformer
transform, transform
-
Constructor Details
-
Ait
public Ait()
-
-
Method Details
-
getName
The name of the Component -
getDescription
A description of the component -
inverse
Get the associated deprojecter -
isInverse
Is this the inverse of another transformation?- Specified by:
isInverse
in classTransformer
-
transform
public final void transform(double[] sphere, double[] plane) Description copied from class:Transformer
Convert a single point where the output vector is supplied.- Specified by:
transform
in classTransformer
- Parameters:
sphere
- The input vector.plane
- The output vector, it may be the same as the input vector if the dimensionalities are the same. All transformers are expected to work with aliased inputs and output.
-
forwardTransform
public static void forwardTransform(double[] sphere, double[] plane) -
reverseTransform
public static void reverseTransform(double[] plane, double[] sphere) -
validPosition
public boolean validPosition(double[] plane) Description copied from class:Projecter
Is this a valid position in the projection plane for this image. This default is appropriate for all projections where the projection plane is infinite.- Overrides:
validPosition
in classProjecter
-
straddleable
public boolean straddleable()Description copied from class:Projecter
Is it possible for a pixel to straddle the valid region.- Overrides:
straddleable
in classProjecter
-
straddle
public boolean straddle(double[][] pnts) Does this figure straddle the boundary. -
shadowPoint
public double[] shadowPoint(double x, double y) Find the shadow point for the given element.- Overrides:
shadowPoint
in classProjecter
-
straddleComponents
public double[][][] straddleComponents(double[][] input) Get the straddle regions from a given set. We don't truncate the at the boundaries of the ellipse. We can probably calulate this (i.e., by looking to see if each component crosses the ellipse boundary) but invalid pixels should be handled by the validPosition check. It seems unlikely that anyone is handling this boundary perfectly...- Overrides:
straddleComponents
in classProjecter
-
main
-