Package org.h2gis.functions.spatial.convert

## Class ST_Force3DM

- java.lang.Object
- - org.h2gis.api.AbstractFunction
  - - org.h2gis.api.DeterministicScalarFunction
    - - org.h2gis.functions.spatial.convert.ST_Force3DM

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

    public class ST_Force3DM
    extends org.h2gis.api.DeterministicScalarFunction

Forces a Geometry into 3DM mode by returning a copy with If a geometry has no M component, then a 0 M coordinate is tacked on. Z value is removed

Author:
  Erwan Bocher, CNRS, 2020

### 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_Force3DM()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static org.locationtech.jts.geom.GeometryCollection` `convert​(org.locationtech.jts.geom.GeometryCollection gc, double mValue)` Force the dimension of the GeometryCollection and update correctly the coordinate dimension
`static org.locationtech.jts.geom.LinearRing` `convert​(org.locationtech.jts.geom.LinearRing linearRing, double mValue)` Force the dimension of the LinearRing and update correctly the coordinate dimension
`static org.locationtech.jts.geom.LineString` `convert​(org.locationtech.jts.geom.LineString lineString, double mValue)` Force the dimension of the LineString and update correctly the coordinate dimension
`static org.locationtech.jts.geom.MultiLineString` `convert​(org.locationtech.jts.geom.MultiLineString multiLineString, double mValue)` Force the dimension of the MultiLineString and update correctly the coordinate dimension
`static org.locationtech.jts.geom.MultiPolygon` `convert​(org.locationtech.jts.geom.MultiPolygon multiPolygon, double mValue)` Force the dimension of the MultiPolygon and update correctly the coordinate dimension
`static org.locationtech.jts.geom.Polygon` `convert​(org.locationtech.jts.geom.Polygon polygon, double mValue)` Force the dimension of the Polygon and update correctly the coordinate dimension
`static org.locationtech.jts.geom.Geometry` `force3DM​(org.locationtech.jts.geom.Geometry geom)` Converts a XY, XYZ geometry to XYM.
`static org.locationtech.jts.geom.Geometry` `force3DM​(org.locationtech.jts.geom.Geometry geom, double mValue)` Converts a XY, XYZ geometry to XYM.
`static org.locationtech.jts.geom.Geometry` `forceXYM​(org.locationtech.jts.geom.Geometry geom, double mValue)` Force the dimension of the geometry and update correctly the coordinate dimension
`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_Force3DM

    public ST_Force3DM()

### Method Detail

#### getJavaStaticMethod

    public String getJavaStaticMethod()

#### force3DM

    public static org.locationtech.jts.geom.Geometry force3DM​(org.locationtech.jts.geom.Geometry geom)

Converts a XY, XYZ geometry to XYM.

Parameters:
  `geom` -
Returns:

#### force3DM

    public static org.locationtech.jts.geom.Geometry force3DM​(org.locationtech.jts.geom.Geometry geom,
                                                              double mValue)

Converts a XY, XYZ geometry to XYM.

Parameters:
  `geom` -
  `mValue` -
Returns:

#### forceXYM

    public static org.locationtech.jts.geom.Geometry forceXYM​(org.locationtech.jts.geom.Geometry geom,
                                                              double mValue)

Force the dimension of the geometry and update correctly the coordinate dimension

Parameters:
  `geom` - the input geometry
Returns:

#### convert

    public static org.locationtech.jts.geom.GeometryCollection convert​(org.locationtech.jts.geom.GeometryCollection gc,
                                                                       double mValue)

Force the dimension of the GeometryCollection and update correctly the coordinate dimension

Parameters:
  `gc` -
  `mValue` -
Returns:

#### convert

    public static org.locationtech.jts.geom.MultiPolygon convert​(org.locationtech.jts.geom.MultiPolygon multiPolygon,
                                                                 double mValue)

Force the dimension of the MultiPolygon and update correctly the coordinate dimension

Parameters:
  `multiPolygon` -
  `mValue` -
Returns:

#### convert

    public static org.locationtech.jts.geom.MultiLineString convert​(org.locationtech.jts.geom.MultiLineString multiLineString,
                                                                    double mValue)

Force the dimension of the MultiLineString and update correctly the coordinate dimension

Parameters:
  `multiLineString` -
  `mValue` -
Returns:

#### convert

    public static org.locationtech.jts.geom.Polygon convert​(org.locationtech.jts.geom.Polygon polygon,
                                                            double mValue)

Force the dimension of the Polygon and update correctly the coordinate dimension

Parameters:
  `polygon` -
  `mValue` -
Returns:

#### convert

    public static org.locationtech.jts.geom.LineString convert​(org.locationtech.jts.geom.LineString lineString,
                                                               double mValue)

Force the dimension of the LineString and update correctly the coordinate dimension

Parameters:
  `lineString` -
  `mValue` -
Returns:

#### convert

    public static org.locationtech.jts.geom.LinearRing convert​(org.locationtech.jts.geom.LinearRing linearRing,
                                                               double mValue)

Force the dimension of the LinearRing and update correctly the coordinate dimension

Parameters:
  `linearRing` -
  `mValue` -
Returns: