Package org.h2gis.functions.spatial.create

# Class ST_Extrude

java.lang.Object
org.h2gis.api.AbstractFunction
org.h2gis.api.DeterministicScalarFunction
org.h2gis.functions.spatial.create.ST_Extrude

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

public class ST_Extrude extends org.h2gis.api.DeterministicScalarFunction
ST_Extrude takes a LINESTRING or POLYGON as input and extends it to a 3D representation, returning a geometry collection containing floor, ceiling and wall geometries. In the case of a LINESTRING, the floor and ceiling are LINESTRINGs; for a POLYGON, they are POLYGONs.

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
Constructor
Description
`ST_Extrude()`

## Method Summary

Modifier and Type
Method
Description
`static org.locationtech.jts.geom.GeometryCollection`
`extrudeGeometry(org.locationtech.jts.geom.Geometry geometry, double height)`
Extrudes a POLYGON or a LINESTRING into a GEOMETRYCOLLECTION containing the floor (input geometry), walls and ceiling.
`static org.locationtech.jts.geom.Geometry`
`extrudeGeometry(org.locationtech.jts.geom.Geometry geometry, double height, int flag)`
Extrudes a POLYGON or a LINESTRING into a GEOMETRYCOLLECTION containing the floor (input geometry), walls and ceiling.
`String`
`getJavaStaticMethod()`

### 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 Details

### ST_Extrude

public ST_Extrude()

## Method Details

### getJavaStaticMethod

public String getJavaStaticMethod()

### extrudeGeometry

public static org.locationtech.jts.geom.GeometryCollection extrudeGeometry(org.locationtech.jts.geom.Geometry geometry, double height) throws SQLException
Extrudes a POLYGON or a LINESTRING into a GEOMETRYCOLLECTION containing the floor (input geometry), walls and ceiling. Note : the NaN z value of the input geometry are replaced by a zero.

Parameters:
  `geometry` - Input geometry
  `height` - Desired height
Returns:
  Collection (floor, walls, ceiling)
Throws:
  `SQLException`

### extrudeGeometry

public static org.locationtech.jts.geom.Geometry extrudeGeometry(org.locationtech.jts.geom.Geometry geometry, double height, int flag) throws SQLException
Extrudes a POLYGON or a LINESTRING into a GEOMETRYCOLLECTION containing the floor (input geometry), walls and ceiling. A flag of 1 extracts walls and a flag of 2 extracts the roof.

Parameters:
  `geometry` - Input geometry
  `height` - Desired height
  `flag` - 1 (walls), 2 (roof)
Returns:
  Walls or roof
Throws:
  `SQLException`