Bubble://ちずろぐ/別館/
ホーム  Bubble://ちずろぐ/本館/  ログイン
メインメニュー

ログイン
ユーザー名:

パスワード:


パスワード紛失


検索

オンライン状況
5 人のユーザが現在オンラインです。 (5 人のユーザが GISドキュメント を参照しています。)

登録ユーザ: 0
ゲスト: 5

もっと...

なかのひと

Top / PostGIS

PostGIS関数サンプル集


Geometry Relationship Functions

disjoint(Geometry, Geometry)

 二つのGeometryが同じ空間を共有していなければt(TRUE)を返す。

[詳細]

PostGISdisjoint2.png

intersects(Geometry, Geometry)

 二つのGeometryが同じ空間を共有していればt(TRUE)を返す。

[詳細]

PostGISintersects2.png

touches(geometry, geometry)

 二つのGeometryが接していればt(TRUE)を返す。

[詳細]

PostGIStouches2.png

Geometry Processing Functions

Centroid(geometry)

 図心を返す。ポリゴン内に位置するとは限らないことに注意。ポリゴン内の点を取得したいときはPointOnSurfes()を使用するとよい。

[詳細]

PostGISCentroid.png

difference(Geoemtry, Geometry)

[詳細]

PostGISdifference0.png

PointOnSurface(geometry)

 Geometry上の点を返す。

[詳細]

PostGISPointOnSurface.png

buffer(geometry, float8, [integer])

 指定した距離とセグメント数によりバッファを返す。

[詳細]

PostGISbuffer.png

Point

^X()

Y()

makePoint(float8, float8)

 座標を指定してPoint Geometry を作成する。

[詳細]

LineString

LineStringFromText(text, [float4])

 WKT書式の文字列とSRIDよりLineStringを生成する。SRIDが与えられない場合には,デフォルト値(-1)となる。

[詳細]

Length()

StartPoint?()

EndPoint?()

IsClosed?()

IsRing?()

NumPoints?()

PointN(Integer)

Linear Referencing(線形参照)

line_interpolate_point(LineString, float8)

 線分に沿った点を返す。

[詳細]

line_interpolate_point.png

line_substring(LineString, float8, float8)

 LineStringより,始点と終点で指定した範囲のLineStringを取り出す。始点終点は第1引数で渡した元のLineStringの全延長(2d length)を1として,始点からの距離で指定する(0〜1.0)。

[詳細]

line_substring.png

line_locate_point(LineString, Point)

 第2引数で渡したPOINTに最も近いLineString上の位置を,LineString全延長(2d length)を1とした距離の割合で返す(0.0〜1.0)。

[詳細]

line_locate_point2.png

locate_along_measure(geometry, float8)

locate_between_measures(geometry, float8, float8)

Polygon

Area()

ExteriorRing?(Polygon)

分類OpenGIS標準
戻値型LineString

 Polygonに含まれるExteriorRing?LineStringで返す。パラメータがPolygonでは無い場合にはNULLを返す。

NumInteriorRings?(Polygon)

分類OpenGIS標準
戻値型Integer

 Polygonに含まれるInteriorRing?の数を返す。パラメータがPolygonでは場合にはNULLを返す。

InteriorRingN(Polygon, Integer)

分類OpenGIS標準
戻値型LineString

 引数で渡した整数N番目のInteriorRing?を返す。

MultiLineString?

IsClosed?()

Length()

MultiPoint?

MultiPolygon?

Area()

GeometryCollection

NumGeometries?(GeometryCollection)

分類OpenGIS標準
引数GeometryCollection
戻値型Integer

 GeometryがGeometryCollectionかMultiXXXの場合は,含まれるGeometryの数を返す。そうでない場合にはNULLを返す。

select NumGeometries(the_geom) from テーブル名

GeometryN(GeometryCollection, Integer)

分類OpenGIS標準
引数GeometryCollection
戻値型Geometry

 引数で渡した整数N番目のGeometryを返す。

ジオメトリ出力

ST_AsGeoJSON(Geometry)

 引数で渡したGeometryをGeoJSON形式に変換する。

 -- ポイントデータをJSON形式で表示
 SELECT ST_AsGeoJson(ST_GeomFromText('POINT(123.4 234.5)')) AS JSON;
 -- 出力
                                JSON
 ------------------------------------------------------------------------
 {"type":"Point","coordinates":[123.400000000000006,234.500000000000000]} 

AsKML(Geometry, int4)

 引数1で渡したGeometoryをKMLのエレメント形式に変換する。引数2で出力する有効桁数を指定(デフォルト値は15)。

[詳細]

座標投影変換

Transform(Geometry, Integer)

分類PostGIS拡張
引数1Geometry
引数2SRID
戻値型Geometry

 引数1で渡したGeometryを引数2で指定したSRIDへ変換する。

SRID関連

SetSRID(Geometry, integer)

分類PostGIS拡張
引数1Geometry
引数2SRID
戻値型-

 引数2で渡したSRID番号によりGeometryにSRIDをセットする。

 -- 旧公共座標II系をBOX3Dにセットし,
 -- バウンディングボックス内の点を検索する例
 SELECT the_geom
   FROM point
  WHERE the_geom_pl &&
        SetSRID('BOX3D(-74000 63000, -72000 64500)'::box3d, 30162);

バージョン表示

postgis_version()

分類PostGIS拡張
戻値型PostGISバージョン

 PostGISのバージョンを表示。

 -- PostGISのバージョンを表示する。
 SELECT postgis_version();
 -- 結果表示
             postgis_version
 ---------------------------------------
  1.1 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
 (1 row)

PostGIS以外(PostgreSQL dbsize)

pg_tablespace_size()

pg_database_size()

pg_relation_size()

pg_total_relation_size()

pg_size_pretty()

参考資料

PostGIS Manual
OpenGIS Simple Features Specification For SQL Revision 1.1


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Counter: 3127, today: 1, yesterday: 4
Last-modified: Fri, 07 Nov 2008 17:32:41 JST (631d)
Powered by Bubble (c) 2006-2008
Theme Designed by Bubble(Original Theme Designed by OCEAN-NET)
このサーバはここの近くにあります。