Class DivertedSingularityAiming

    • Constructor Detail

      • DivertedSingularityAiming

        public DivertedSingularityAiming​(SphericalPolygonsSet forbiddenZone)
        Simple constructor.
        Parameters:
        forbiddenZone - zone out of which singularity should be diverted
    • Method Detail

      • getSingularPoints

        public List<GeodeticPoint> getSingularPoints()
        Get points at which aiming direction cannot be computed.

        As per Brouwer's hairy ball theorem, any vector field on the 2-sphere has at least one zero. This implies that any implementation of this interface has at least one point where the aiming direction cannot be computed. The most typical example is aiming always towards North pole, for which both poles are singular points.

        Specified by:
        getSingularPoints in interface TileAiming
        Returns:
        a non-empty (as per hairy ball theorem) list of points where aiming direction is either zero or cannot be computed
      • alongTileDirection

        public Vector3D alongTileDirection​(Vector3D point,
                                           GeodeticPoint gp)
        Find the along tile direction for tessellation at specified point.
        Specified by:
        alongTileDirection in interface TileAiming
        Parameters:
        point - point on the ellipsoid (Cartesian coordinates)
        gp - point on the ellipsoid (geodetic coordinates)
        Returns:
        normalized along tile direction