Package org.h2gis.functions.spatial.earth

## Class ST_GeometryShadow

- java.lang.Object
- - org.h2gis.api.AbstractFunction
  - - org.h2gis.api.DeterministicScalarFunction
    - - org.h2gis.functions.spatial.earth.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`

### Constructor Summary

Constructors
`ST_GeometryShadow()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`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 class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### 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:
  Geometry

#### 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:
  Geometry

#### 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:
  geometry shadows

#### 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:
  the shadow offset in X and Y directions