プライマリ・コンテンツに移動

Oracle® Big Data Spatial and Graphユーザーズ・ガイドおよびリファレンス リリース2.3 E70114-05 |
| 目次

前 |

# B Hive空間関数

この付録では、Hive空間関数に関する参照情報を提供します。

これらの関数を使用するには、「Oracle Big Data Spatial Vector Hive Analysis」、特に「Hive Spatial APIの使用」で説明されているコンセプトおよび技術を理解する必要があります。

これらの関数はアルファベット順に示します。ただし、これらは、タイプ、単一のジオメトリ関数、2つのジオメトリ関数にグループ化できます。

タイプ:

- ST_Geometry

- ST_LineString

- ST_MultiLineString

- ST_MultiPoint

- ST_MultiPolygon

- ST_Point

- ST_Polygon

単一のジオメトリ関数:

- ST_Area

- ST_AsWKB

- ST_AsWKT

- ST_Buffer

- ST_ConvexHull

- ST_Envelope

- ST_Length

- ST_Simplify

- ST_SimplifyVW

- ST_Volume

2つのジオメトリ関数:

- ST_AnyInteract

- ST_Contains

- ST_Distance

- ST_Inside

- ST_AnyInteract
- ST_Area
- ST_AsWKB
- ST_AsWKT
- ST_Buffer
- ST_Contains
- ST_ConvexHull
- ST_Distance
- ST_Envelope
- ST_Geometry
- ST_Inside
- ST_Length
- ST_LineString
- ST_MultiLineString
- ST_MultiPoint
- ST_MultiPolygon
- ST_Point
- ST_Polygon
- ST_Simplify
- ST_SimplifyVW
- ST_Volume

## B.1 ST_AnyInteract

形式

    ST_AnyInteract(
      geometry1  ST_Geometry,
      geometry1  ST_Geometry,
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

`geometry1`が`geometry2`との空間的相互作用を持つかどうかを確認し、`true`または`false`を返します。

パラメータ

geometry1

  2次元および3次元のオブジェクト。

geometry2

  もう1つの2次元および3次元のオブジェクト。

tolerance

  `geometry2`が有効である許容差。

使用上の注意

これらのジオメトリは両方とも、同じ数の次元(2または3)および同じ空間参照システム(SRIDまたは座標系)を持つ必要があります。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_AnyInteract(
      ST_Point('{ "type": "Point", "coordinates": [2, 3]}', 8307),
      ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 8307))
    from hivetable LIMIT 1;
    -- return true

## B.2 ST_Area

形式

    ST_Area(
      geometry   ST_Geometry
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

ポリゴンまたはマルチポリゴン・ジオメトリの領域を返します。

パラメータ

geometry

  ST_Geometryオブジェクト。

tolerance

  2つの点が離れていながら同じであると見なすことができる距離を表す値。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_Area(ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [5, 2], [5, 7], [1, 7], [1, 2]]]}', 0))
      from hivetable LIMIT 1;  -- return 20

## B.3 ST_AsWKB

形式

    ST_AsWKB(
      geometry ST_Geometry);

説明

ジオメトリのWKB (Well-Known Binary)表現を返します。

パラメータ

geometry

  ST_Geometryオブジェクト。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_AsWKB( ST_Point('{ "type": "Point", "coordinates": [0, 5]}', 8307))
       from hivetable LIMIT 1;

## B.4 ST_AsWKT

形式

    ST_AsWKT(
      geometry ST_Geometry);

説明

ジオメトリのWKT (Well-Known Text)表現を返します。

パラメータ

geometry

  ST_Geometryオブジェクト。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_AsWKT(ST_Point('{ "type": "Point", "coordinates": [0, 5]}', 8307))
      from hivetable LIMIT 1;

## B.5 ST_Buffer

形式

    ST_Buffer(
      geometry     ST_Geometry,
      bufferWidth  NUMBER,
      arcTol       NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

入力ジオメトリがバッファされたバージョンである新しいST_Geometryオブジェクトを生成します。

パラメータ

geometry

  任意の2次元オブジェクト。ジオメトリが測地である場合、これはWGS84空間参照システム内の緯度/情報値として解釈され、`bufferWidth`および`tolerance`はメートルとして解釈されます。

bufferWidth

  バッファに使用する距離値。

arcTol

  測地円弧高密度化に使用する許容差。(非測地ジオメトリの場合は無視されます。)

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_Buffer(ST_Point('{ "type": "Point", "coordinates": [0, 5]}', 0), 3)
      from hivetable LIMIT 1;
    -- return {"type":"Polygon", "coordinates":[[[-3,5],[0,2],[3,5]]],"crs":{"type":"name","properties":{"name":"EPSG:0"}}}

## B.6 ST_Contains

形式

    ST_Contains(
      geometry1  ST_Geometry,
      geometry1  ST_Geometry,
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

`geometry1`に`geometry2`が含まれるかどうかを確認し、`true`または`false`を返します。

パラメータ

geometry1

  ポリゴンまたは立体ジオメトリ・オブジェクト。

geometry2

  もう1つの2次元および3次元のオブジェクト。

tolerance

  `geometry2`が有効である許容差。

使用上の注意

これらのジオメトリは両方とも、同じ数の次元(2または3)および同じ空間参照システム(SRIDまたは座標系)を持つ必要があります。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_Contains(
      ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 8307),
      ST_Point('{ "type": "Point", "coordinates": [2, 3]}', 8307))
    from hivetable LIMIT 1;
    -- return true

## B.7 ST_ConvexHull

形式

    ST_ConvexHull(
      geometry ST_Geometry);

説明

入力ジオメトリの凸包をST_Geometryオブジェクトとして返します。

パラメータ

geometry

  2次元のST_Geometryオブジェクト。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_ConvexHull(
      ST_MultiPoint(' { "type": "MultiPoint","coordinates": [ [1, 2], [-1, -2], [5, 6] ] }', 0))
    from hivetable LIMIT 1;
    -- return {"type":"Polygon", "coordinates":[[[5,6],[1,2],[-1,-2],[5,6]]],"crs":{"type":"name","properties":{"name":"EPSG:0"}}}

## B.8 ST_Distance

形式

    ST_Distance(
      geometry1  ST_Geometry,
      geometry1  ST_Geometry,
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

2つの2次元ジオメトリ間の距離を確認します。

パラメータ

geometry1

  2次元のジオメトリ・オブジェクト。

geometry2

  2次元のジオメトリ・オブジェクト。

tolerance

  `geometry2`が有効である許容差。

使用上の注意

この関数は、2つの特定のジオメトリ間の距離を返します。投影されたデータの場合、距離の単位は投影の単位と同じです。測地データの場合、距離はメートル単位です。

エラーが発生した場合、この関数は-1を返します。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_Distance(
      ST_Point('{ "type": "Point", "coordinates": [0, 0]}', 0),
      ST_Point('{ "type": "Point", "coordinates": [6, 8]}', 0))
    from hivetable LIMIT 1;
    -- return 10.0

## B.9 ST_Envelope

形式

    ST_Envelope(
      geometry ST_Geometry);

説明

入力ジオメトリのエンベロープ(境界ポリゴン)をST_Geometryオブジェクトとして返します。

パラメータ

geometry

  2次元のST_Geometryオブジェクト。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_Envelope(
      ST_MultiPoint(' { "type": "MultiPoint","coordinates": [ [1, 2], [-1, -2], [5, 6] ] }', 0))
    from hivetable LIMIT 1;
    -- return {"type":"Polygon", "coordinates":[[[-1,-2],[5,-2],[5,6],[-1,6],[-1,-2]]],"crs":{"type":"name","properties":{"name":"EPSG:0"}}}

## B.10 ST_Geometry

形式

    ST_GEOMETRY(
      geometry STRING
      srid INT);

または

    ST_GEOMETRY(
      geometry BINARY
      srid INT);

または

    ST_GEOMETRY(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

ジオメトリのGeoJSON文字列表現を作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a point using GeoJSON
    select ST_Geometry (' { "type": "Point", "coordinates": [100.0, 0.0]}', 8307) from hivetable LIMIT 1;
    -- creates a point using WKT
    select ST_Geometry ('point(100.0 0.0)', 8307) from hivetable LIMIT 1;
    -- creates the geometries using a HiveRecordInfoProvider
    select ST_Geometry (geoColumn, ‘hive.samples.SampleHiveRecordInfoProviderImpl’) from hivetable;

## B.11 ST_Inside

形式

    ST_Inside(
      geometry1  ST_Geometry,
      geometry1  ST_Geometry,
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

`geometry1`が`geometry2`内にあるかどうかを確認し、`true`または`false`を返します。

パラメータ

geometry1

  2次元および3次元のオブジェクト。

geometry2

  ポリゴンまたは立体ジオメトリ・オブジェクト。

tolerance

  `geometry1`が有効である許容差。

使用上の注意

これらのジオメトリは両方とも、同じ数の次元(2または3)および同じ空間参照システム(SRIDまたは座標系)を持つ必要があります。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_Inside(
      ST_Point('{ "type": "Point", "coordinates": [2, 3]}', 8307),
      ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 8307))
    from hivetable LIMIT 1;
    -- return true

## B.12 ST_Length

形式

    ST_Length(
      geometry   ST_Geometry
      tolerance  NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

線またはポリゴン・ジオメトリの長さを返します。

パラメータ

geometry

  ST_Geometryオブジェクト。

tolerance

  2つの点が離れていながら同じであると見なすことができる距離を表す値。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    select ST_Length(ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 0))
      from hivetable LIMIT 1;  -- return 16

## B.13 ST_LineString

形式

    ST_LineString(
      geometry STRING
      srid INT);

または

    ST_LineString(
      geometry BINARY
      srid INT);

または

    ST_LineString(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

線ストリング・ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a line using GeoJSON
    select ST_LineString (' { "type": "LineString","coordinates": [ [100.0, 0.0], [101.0, 1.0] ]} ', 8307) from hivetable LIMIT 1;
    -- creates a line using WKT
    select ST_LineString (' linestring(1 1, 5 5, 10 10, 20 20)', 8307) from hivetable LIMIT 1;
    -- creates the lines using a HiveRecordInfoProvider
    select ST_LineString (geoColumn, ‘mypackage.hiveRecordInfoProviderImpl’) from hivetable;

## B.14 ST_MultiLineString

形式

    ST_MultiLineString(
      geometry STRING
      srid INT);

または

    ST_MultiLineString(
      geometry BINARY
      srid INT);

または

    ST_MultiLineString(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

複数の線ストリング・ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a MultiLineString using GeoJSON
    select ST_ MultiLineString (' { "type": "MultiLineString","coordinates": [ [ [100.0, 0.0], [101.0, 1.0] ], [ [102.0, 2.0], [103.0, 3.0] ]] }', 8307) from hivetable LIMIT 1;
    -- creates a MultiLineString using WKT
    select ST_ MultiLineString ('multilinestring ((10 10, 20 20, 10 40),
    (40 40, 30 30, 40 20, 30 10))', 8307) from hivetable LIMIT 1;
    -- creates MultiLineStrings using a HiveRecordInfoProvider
    select ST_ MultiLineString (geoColumn, ‘mypackage.hiveRecordInfoProviderImpl’) from hivetable;

## B.15 ST_MultiPoint

形式

    ST_MultiPoint(
      geometry STRING
      srid INT);

または

    ST_MultiPoint(
      geometry BINARY
      srid INT);

または

    ST_MultiPoint(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

複数点ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a MultiPoint using GeoJSON
    select ST_MultiPoint (' { "type": "MultiPoint","coordinates": [ [100.0, 0.0], [101.0, 1.0] ] }', 8307) from hivetable LIMIT 1;
    -- creates a MultiPoint using WKT
    select ST_ MultiPoint ('multipoint ((10 40), (40 30), (20 20), (30 10))', 8307) from hivetable LIMIT 1;
    -- creates MultiPoints using a HiveRecordInfoProvider
    select ST_ MultiPoint (geoColumn, ‘mypackage.hiveRecordInfoProviderImpl’) from hivetable;

## B.16 ST_MultiPolygon

形式

    ST_MultiPolygon(
      geometry STRING
      srid INT);

または

    ST_MultiPolygon(
      geometry BINARY
      srid INT);

または

    ST_MultiPolygon(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

複数ポリゴン・ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a MultiPolygon using GeoJSON
    select ST_ MultiPolygon (' { "type": "MultiPolygon","coordinates": [[[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]], [[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]], [[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]] ] }', 8307) from hivetable LIMIT 1;
    -- creates a MultiPolygon using WKT
    select ST_ MultiPolygon ('multipolygon(((30 20, 45 40, 10 40, 30 20)),
    ((15 5, 40 10, 10 20, 5 10, 15 5)))', 8307) from hivetable LIMIT 1;
    -- creates MultiPolygons using a HiveRecordInfoProvider
    select ST_ MultiPolygon (geoColumn, ‘mypackage.hiveRecordInfoProviderImpl’) from hivetable;

## B.17 ST_Point

形式

    ST_Point(
      geometry STRING
      srid INT);

または

    ST_Point(
      geometry BINARY
      srid INT);

または

    ST_Point(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

点ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a point using GeoJSON
    select ST_Point (' { "type": "Point", "coordinates": [100.0, 0.0]}', 8307) from hivetable LIMIT 1;
    -- creates a point using WKT
    select ST_Point ('point(100.0 0.0)', 8307) from hivetable LIMIT 1;
    -- creates the points using a HiveRecordInfoProvider
    select ST_Point (geoColumn, ‘hive.samples.SampleHiveRecordInfoProviderImpl’) from hivetable;

## B.18 ST_Polygon

形式

    ST_Polygon(
      geometry STRING
      srid INT);

または

    ST_Polygon(
      geometry BINARY
      srid INT);

または

    ST_Polygon(
      geometry Object
      hiveRecordInfoProvider STRING);

説明

ポリゴン・ジオメトリをGeoJSON形式で作成し、ジオメトリのGeoJSON文字列表現を返します。

パラメータ

geometry

  GeoJSONまたはWKT文字列からジオメトリを作成するには(最初の形式): GeoJSONまたはWKT形式のジオメトリ定義。

  WKBオブジェクトからジオメトリを作成するには(2番目の形式): WKB形式のジオメトリ定義。

  Hiveオブジェクトを使用してジオメトリを作成するには(3番目の形式): Hiveでサポートされているタイプのジオメトリ定義。

srid
  空間参照システム(座標系)識別子。
HiveRecordProvider
  ジオメトリをGeoJSON形式で抽出するためのインタフェース`oracle.spatial.hadoop.vector.hive.HiveRecordInfoProvider`の実装の完全修飾名。

使用上の注意

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」を参照してください。

例

    -- creates a polygon using GeoJSON
    select ST_Polygon (' { "type": "Polygon","coordinates": [ [ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ]] }', 8307) from hivetable LIMIT 1;
    -- creates a polygon using WKT
    select ST_ Polygon ('polygon((0 0, 10 0, 10 10, 0 0))', 8307) from hivetable LIMIT 1;
    -- creates the polygons using a HiveRecordInfoProvider
    select ST_ Polygon (geoColumn, ‘mypackage.hiveRecordInfoProviderImpl’) from hivetable;

## B.19 ST_Simplify

形式

    ST_Simplify(
      geometry   ST_Geometry,
      threshold  NUMBER);

説明

Douglas-Peuckerアルゴリズムを使用して入力ジオメトリを簡素化することにより、新しいST_Geometryオブジェクトを生成します。

パラメータ

geometry

  任意の2次元オブジェクト。ジオメトリが測地である場合、これはWGS84空間参照システム内の緯度/情報値として解釈され、`bufferWidth`および`tolerance`はメートルとして解釈されます。

threshold

  ジオメトリの簡素化に使用するしきい値。正数である必要があります。(ゼロを使用すると、入力ジオメトリが返されます。)入力ジオメトリが測地である場合、この値はメートル数です。入力ジオメトリが測地以外である場合、この値はデータに関連付けられた単位数です。

  しきい値が下がると、生成されるジオメトリが入力ジオメトリに近くなる可能性があり、しきい値が上がると、返されるジオメトリ内の頂点の数が減る可能性があります。

使用上の注意

しきい値に応じて、ポリゴンを線または点に簡素化したり、線を点に簡素化したりできます。したがって、出力ジオメトリ・タイプが入力ジオメトリ・タイプとは異なる可能性があるため、出力オブジェクトのタイプをチェックする必要があります。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_Simplify(
      ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [1.01, 2.01], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 8307),
      1)
    from hivetable LIMIT 1;
    -- return {"type":"Polygon", "coordinates":[[[1,2],[5,2],[5,6],[1,6],[1,2]]],"crs":{"type":"name","properties":{"name":"EPSG:8307"}}}

## B.20 ST_SimplifyVW

形式

    ST_SimplifyVW(
      geometry   ST_Geometry,
      threshold  NUMBER);

説明

Visvalingham-Whyattアルゴリズムを使用して入力ジオメトリを簡素化することにより、新しいST_Geometryオブジェクトを生成します。

パラメータ

geometry

  任意の2次元オブジェクト。ジオメトリが測地である場合、これはWGS84空間参照システム内の緯度/情報値として解釈され、`bufferWidth`および`tolerance`はメートルとして解釈されます。

threshold

  ジオメトリの簡素化に使用するしきい値。正数である必要があります。(ゼロを使用すると、入力ジオメトリが返されます。)入力ジオメトリが測地である場合、この値はメートル数です。入力ジオメトリが測地以外である場合、この値はデータに関連付けられた単位数です。

  しきい値が下がると、生成されるジオメトリが入力ジオメトリに近くなる可能性があり、しきい値が上がると、返されるジオメトリ内の頂点の数が減る可能性があります。

使用上の注意

しきい値に応じて、ポリゴンを線または点に簡素化したり、線を点に簡素化したりできます。したがって、出力ジオメトリ・タイプが入力ジオメトリ・タイプとは異なる可能性があるため、出力オブジェクトのタイプをチェックする必要があります。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select ST_SimplifyVW(
      ST_Polygon('{"type": "Polygon","coordinates": [[[1, 2], [1.01, 2.01], [5, 2], [5, 6], [1, 6], [1, 2]]]}', 8307),
      50)
    from hivetable LIMIT 1;
    -- return {"type":"Polygon", "coordinates":[[[1,2],[5,6],[1,6],[1,2]]],"crs":{"type":"name","properties":{"name":"EPSG:8307"}}}

## B.21 ST_Volume

形式

    ST_Volume(
      multipolygon  ST_MultiPolygon,
      tolerance     NUMBER DEFAULT 0 (nongeodetic geometries) or 0.05 (geodetic geometries));

説明

マルチポリゴン3次元ジオメトリの領域を返します。マルチポリゴンは立体として処理されます。

パラメータ

multipolygon

  ST_Multipolygonオブジェクト。

tolerance

  2つの点が離れていながら同じであると見なすことができる距離を表す値。

使用上の注意

投影されたデータの場合、ボリュームの単位は投影の単位と同じです。測地データの場合、ボリュームは立方メートルです。

エラーの場合、-1を返します。

コンセプトおよび使用に関する情報は、「Oracle Big Data Spatial Vector Hive Analysis」も参照してください。

例

    select select ST_Volume(
      ST_MultiPolygon (' { "type": "MultiPolygon", "coordinates":
        [[[[0, 0, 0], [0, 0, 1], [0, 1, 1], [0, 1, 0], [0, 0, 0]]],
        [[[0, 0, 0], [0, 1, 0], [1, 1, 0], [1, 0, 0], [0, 0, 0]]],
        [[[0, 0, 0], [1, 0, 0], [1, 0, 1], [0, 0, 1], [0, 0, 0]]],
        [[[1, 1, 0], [1, 1, 1], [1, 0, 1], [1, 0, 0], [1, 1, 0]]],
        [[[0, 1, 0], [0, 1, 1], [1, 1, 1], [1, 1, 0], [0, 1, 0]]],
        [[[0, 0, 1], [1, 0, 1], [1, 1, 1], [0, 1, 1], [0, 0, 1]]]]}',
        0))
      from hivetable LIMIT 1; -- return 1.0