org.openstreetmap.atlas.geography.GeometricSurface Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of atlas Show documentation
Show all versions of atlas Show documentation
"Library to load OSM data into an Atlas format"
package org.openstreetmap.atlas.geography;
import org.openstreetmap.atlas.utilities.scalars.Surface;
/**
* An interface for all geometric surface objects
*
* @author jklamer
*/
public interface GeometricSurface extends Located, GeometryPrintable, GeometricObject
{
boolean fullyGeometricallyEncloses(Location location);
boolean fullyGeometricallyEncloses(MultiPolygon multiPolygon);
boolean fullyGeometricallyEncloses(PolyLine polyLine);
boolean overlaps(MultiPolygon multiPolygon);
boolean overlaps(PolyLine polyLine);
/**
* @return The {@link Surface} of this {@link GeometricSurface}. Not valid if the
* {@link GeometricSurface} self-intersects, and/or overlaps itself
* @see "http://www.mathopenref.com/coordpolygonarea2.html"
*/
Surface surface();
/**
* @return The approximate {@link Surface} of this {@link GeometricSurface} if it were projected
* onto the Earth. Not valid if the {@link GeometricSurface} self-intersects, and/or
* overlaps itself. Uses "Some Algorithms for Polygons on a Sphere" paper as reference.
* @see "https://trs.jpl.nasa.gov/bitstream/handle/2014/41271/07-0286.pdf"
*/
Surface surfaceOnSphere();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy