Package org.h2gis.functions.spatial.create

## Class ST_RingBuffer

- java.lang.Object
- - org.h2gis.api.AbstractFunction
  - - org.h2gis.functions.spatial.create.ST_RingBuffer

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

    public class ST_RingBuffer
    extends org.h2gis.api.AbstractFunction
    implements org.h2gis.api.ScalarFunction

Compute a ring buffer around a geometry.

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_RingBuffer()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static org.locationtech.jts.geom.Geometry` `computeNegativeRingBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferDistance, int numBuffer, org.locationtech.jts.operation.buffer.BufferParameters bufferParameters, boolean doDifference)` Compute a ring buffer with a negative offset
`static org.locationtech.jts.geom.Geometry` `computePositiveRingBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferDistance, int numBuffer, org.locationtech.jts.operation.buffer.BufferParameters bufferParameters, boolean doDifference)` Compute a ring buffer with a positive offset
`String` `getJavaStaticMethod()`
`static org.locationtech.jts.geom.Geometry` `ringBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferSize, int numBuffer)` Compute a ring buffer around a geometry
`static org.locationtech.jts.geom.Geometry` `ringBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferDistance, int numBuffer, String parameters)`
`static org.locationtech.jts.geom.Geometry` `ringBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferDistance, int numBuffer, String parameters, boolean doDifference)` Compute a ring buffer around a geometry
`static org.locationtech.jts.geom.Geometry` `runBuffer​(org.locationtech.jts.geom.Geometry geom, double bufferSize, org.locationtech.jts.operation.buffer.BufferParameters bufferParameters)` Calculate the ring buffer

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

    public ST_RingBuffer()

### Method Detail

#### getJavaStaticMethod

    public String getJavaStaticMethod()

Specified by:
  `getJavaStaticMethod` in interface `org.h2gis.api.ScalarFunction`

#### ringBuffer

    public static org.locationtech.jts.geom.Geometry ringBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                                double bufferSize,
                                                                int numBuffer)
                                                         throws SQLException

Compute a ring buffer around a geometry

Parameters:
  `geom` - input geometry
  `bufferSize` - buffer size
  `numBuffer` - number of rings
Returns:
  Geometry
Throws:
  `SQLException`

#### ringBuffer

    public static org.locationtech.jts.geom.Geometry ringBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                                double bufferDistance,
                                                                int numBuffer,
                                                                String parameters)
                                                         throws SQLException

Parameters:
  `geom` - `Geometry`
  `bufferDistance` - buffer distance
  `numBuffer` - number of rings
  `parameters` - buffer parameters
Returns:
  ring buffer geometry
Throws:
  `SQLException`

#### ringBuffer

    public static org.locationtech.jts.geom.Geometry ringBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                                double bufferDistance,
                                                                int numBuffer,
                                                                String parameters,
                                                                boolean doDifference)
                                                         throws SQLException

Compute a ring buffer around a geometry

Parameters:
  `geom` - input geometry
  `bufferDistance` - buffer size
  `numBuffer` - number of rings
  `parameters` - buffer parameters
  `doDifference` - do the difference between the rings
Returns:
  Geometry
Throws:
  `SQLException`

#### computePositiveRingBuffer

    public static org.locationtech.jts.geom.Geometry computePositiveRingBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                                               double bufferDistance,
                                                                               int numBuffer,
                                                                               org.locationtech.jts.operation.buffer.BufferParameters bufferParameters,
                                                                               boolean doDifference)
                                                                        throws SQLException

Compute a ring buffer with a positive offset

Parameters:
  `geom` - `Geometry`
  `bufferDistance` - buffer distance
  `numBuffer` - number of rings
  `bufferParameters` - buffer parameters
  `doDifference` - true to build the difference
Returns:
  Geometry
Throws:
  `SQLException`

#### computeNegativeRingBuffer

    public static org.locationtech.jts.geom.Geometry computeNegativeRingBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                                               double bufferDistance,
                                                                               int numBuffer,
                                                                               org.locationtech.jts.operation.buffer.BufferParameters bufferParameters,
                                                                               boolean doDifference)
                                                                        throws SQLException

Compute a ring buffer with a negative offset

Parameters:
  `geom` - `Geometry`
  `bufferDistance` - buffer distance
  `numBuffer` - number of rings
  `bufferParameters` - buffer parameters
  `doDifference` - true to build the difference
Returns:
  Geometry
Throws:
  `SQLException`

#### runBuffer

    public static org.locationtech.jts.geom.Geometry runBuffer​(org.locationtech.jts.geom.Geometry geom,
                                                               double bufferSize,
                                                               org.locationtech.jts.operation.buffer.BufferParameters bufferParameters)
                                                        throws SQLException

Calculate the ring buffer

Parameters:
  `geom` - `Geometry`
  `bufferSize` - buffer size
  `bufferParameters` - buffer parameters
Returns:
  Geometry
Throws:
  `SQLException`