Package com.luciad.tea.hypsometry
Interface ILcdHypsometricNormalProvider
- All Known Implementing Classes:
TLcdHypsometric2x2NormalProvider
,TLcdHypsometric3x3NormalProvider
,TLcdHypsometricNormalizedNormalProvider
,TLcdHypsometricNormalProvider
public interface ILcdHypsometricNormalProvider
This interface specifies a method to compute normals based on matrices
containing elevation data.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
computeNormal
(ILcdMatrixView aMatrixView, int aX, int aY, double aElevationScale, double[] aNormalSFCT) Computes the normal at the given point.Returns the foot print of this provider.
-
Method Details
-
getFootPrint
Rectangle getFootPrint()Returns the foot print of this provider. For instance, if the normal at each point is computed based on the surrounding 3x3 matrix values, the foot print is the rectangle (-1, -1, 3, 3).- Returns:
- the foot print of this provider.
-
computeNormal
void computeNormal(ILcdMatrixView aMatrixView, int aX, int aY, double aElevationScale, double[] aNormalSFCT) Computes the normal at the given point. For reasons of efficiency, the normals are not necessarily normalized yet. It is up to the user to normalize them if necessary. The components of the normal may be NaN if they can't be computed, for instance if not all required elevations are known.- Parameters:
aMatrixView
- the matrix containing elevation values.aX
- the x ordinate in the matrix.aY
- the y ordinate in the matrix.aElevationScale
- the scale of the elevation values in the tiles, expressed in matrix distance units per tile elevation unit.aNormalSFCT
- an array of 3 doubles to store the computed normal.
-