Class ST_GeometryShadow

  • All Implemented Interfaces:
    org.h2gis.api.Function, org.h2gis.api.ScalarFunction

    public class ST_GeometryShadow
    extends org.h2gis.api.DeterministicScalarFunction
    Compute the shadow footprint for a single geometry. The shadow is represented as an unified polygon. The user must specified the sun position : azimuth and altitude and a height to compute the shadow footprint.
    Author:
    Erwan Bocher
    • Field Summary

      • Fields inherited from interface org.h2gis.api.Function

        PROP_NAME, PROP_REMARKS
      • Fields inherited from interface org.h2gis.api.ScalarFunction

        PROP_DETERMINISTIC
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry, double azimuth, double altitude, double height)
      Compute the shadow footprint based on
      static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry, double azimuth, double altitude, double height, boolean doUnion)
      Compute the shadow footprint based on
      static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry, org.locationtech.jts.geom.Geometry sunPosition, double height)
      Compute the shadow footprint based on
      String getJavaStaticMethod()  
      static double[] shadowOffset​(double azimuth, double altitude, double height)
      Return the shadow offset in X and Y directions
      • Methods inherited from class org.h2gis.api.AbstractFunction

        addProperty, getProperty, removeProperty
      • Methods inherited from interface org.h2gis.api.Function

        getProperty
    • Constructor Detail

      • ST_GeometryShadow

        public ST_GeometryShadow()
    • Method Detail

      • getJavaStaticMethod

        public String getJavaStaticMethod()
      • computeShadow

        public static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry,
                                                                       org.locationtech.jts.geom.Geometry sunPosition,
                                                                       double height)
        Compute the shadow footprint based on
        Parameters:
        geometry - input geometry
        sunPosition - as a point where x = azimuth and y=altitude
        height - of the geometry
        Returns:
      • computeShadow

        public static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry,
                                                                       double azimuth,
                                                                       double altitude,
                                                                       double height)
        Compute the shadow footprint based on
        Parameters:
        geometry - input geometry
        azimuth - of the sun in radians
        altitude - of the sun in radians
        height - of the geometry
        Returns:
      • computeShadow

        public static org.locationtech.jts.geom.Geometry computeShadow​(org.locationtech.jts.geom.Geometry geometry,
                                                                       double azimuth,
                                                                       double altitude,
                                                                       double height,
                                                                       boolean doUnion)
        Compute the shadow footprint based on
        Parameters:
        geometry - input geometry
        azimuth - of the sun in radians
        altitude - of the sun in radians
        height - of the geometry
        doUnion - unified or not the polygon shadows
        Returns:
      • shadowOffset

        public static double[] shadowOffset​(double azimuth,
                                            double altitude,
                                            double height)
        Return the shadow offset in X and Y directions
        Parameters:
        azimuth - in radians from north.
        altitude - in radians from east.
        height - of the geometry
        Returns: