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.ScalarFunction

`PROP_DETERMINISTIC, PROP_NOBUFFER`

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

`PROP_NAME, PROP_REMARKS`

### Constructor Summary

Constructors
Constructor and Description
`ST_Extrude()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static com.vividsolutions.jts.geom.GeometryCollection` `extrudeGeometry(com.vividsolutions.jts.geom.Geometry geometry, double height)` Extrudes a POLYGON or a LINESTRING into a GEOMETRYCOLLECTION containing the floor (input geometry), walls and ceiling.
`static com.vividsolutions.jts.geom.Geometry` `extrudeGeometry(com.vividsolutions.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 Detail

#### ST_Extrude

    public ST_Extrude()

### Method Detail

#### getJavaStaticMethod

    public String getJavaStaticMethod()

#### extrudeGeometry

    public static com.vividsolutions.jts.geom.GeometryCollection extrudeGeometry(com.vividsolutions.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 com.vividsolutions.jts.geom.Geometry extrudeGeometry(com.vividsolutions.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`