Interface ILcd2DEllipsoidalBinaryTopology

All Superinterfaces:
ILcd2DBinaryTopology
All Known Implementing Classes:
TLcdEllipsoidalBasicBinaryTopology

public interface ILcd2DEllipsoidalBinaryTopology extends ILcd2DBinaryTopology

This interface extends the interface ILcd2DBinaryTopology with an ellipsoid property and two properties that are more specific for the approximate calculations on that ellipsoid: absoluteTolerance and relativeTolerance.

The properties absoluteTolerance and relativeTolerance determine how close the returned results have to be with respect to the actual solutions. absoluteTolerance is the acceptable maximum distance error in meters on the solution. relativeTolerance is a percentage the calculation can be incorrect relative to the size of the geometries involved. The actual tolerance used for the calculation is the largest of the relative or absolute tolerance properties set.

Assume an absolute tolerance of 1m and a relative tolerance of 1e-6. Now suppose the intersection between two long lines of 2000km would be required. A relative tolerance of 1e-6 would result in a 2m error (2.000.000m x 1e-6), which is larger than the 1m absolute tolerance. Therefore, the relative tolerance is used here. If the intersection between two short lines of 10m would be required, the relative tolerance would result in an error of 0.01mm (10m x 1e-6). Such an extremely small tolerance does not have any practical use nor is it attainable. Therefore, the larger absolute tolerance of 1m is used here.

Since:
2.0
  • Method Details

    • getEllipsoid

      ILcdEllipsoid getEllipsoid()
      Get the ellipsoid on which the calculations are performed.
      Returns:
      The ellipsoid value.
      See Also:
    • setEllipsoid

      void setEllipsoid(ILcdEllipsoid aEllipsoid)
      Set the ellipsoid on which to perform the calculations.
      Parameters:
      aEllipsoid - The new ellipsoid value.
      See Also:
    • getRelativeTolerance

      double getRelativeTolerance()
      Gets the relative tolerance used for approximations.
      Returns:
      The relativeTolerance value.
      See Also:
    • setRelativeTolerance

      void setRelativeTolerance(double aRelativeTolerance)
      Sets the relative tolerance to be used for approximations.
      Parameters:
      aRelativeTolerance - The new relativeTolerance value.
      See Also:
    • getAbsoluteTolerance

      double getAbsoluteTolerance()
      Gets the absolute tolerance (meters) used for approximations.
      Returns:
      The absoluteTolerance value (meters).
      See Also:
    • setAbsoluteTolerance

      void setAbsoluteTolerance(double aAbsoluteTolerance)
      Sets the absolute tolerance (meters) to be used for approximations.
      Parameters:
      aAbsoluteTolerance - The new absoluteTolerance value (meters).
      See Also: