14.12. 新規作成/機能強化/変更されたPostGIS関数
14.12.1. PostGIS 2.4で新規作成/機能強化された関数
次に示す関数は、新規作成または機能強化されたPostGIS関数です。
PostGIS 2.4で新規作成された関数
- ST_AsGeobuf - Availability: 2.4.0 行集合のGeobuf表現を返します。
- ST_AsMVT - Availability: 2.4.0 行集合のMapbox Vector Tile表現を返します。
- ST_AsMVTGeom - Availability: 2.4.0 ジオメトリをMapbox Vector Tileの座標空間に変換します。
- ST_Centroid - Availability: 2.4.0 ジオグラフィが導入されました。 ジオメトリの幾何学的重心を返します。
- ST_FrechetDistance - Availability: 2.4.0 - GEOS 3.7.0以上が必要です。 二つのジオメトリのフレシェ距離を返します。曲線の位置と点の並び順とを考慮に入れた曲線間の類似度を計測するものです。単位はジオメトリの空間参照系の単位です。
- ST_MakeEmptyCoverage - Availability: 2.4.0 空のラスタタイルのグリッドでジオリファレンスを施されている領域を生成します。
PostGIS 2.4で機能強化された関数
全てのPostGIS集約関数はパラレル安全のラベル付けが施されます。これにより、並列処理を使用できるクエリプランで使うことができるようになります。
PostGIS 2.4.1のpostgis_tiger_geocoderでTiger 2017データのロードに着手します。郵便番号5桁表 (zxta)をLoader_Generate_Nation_Scriptの一部として、随意にロードできます。
PostGIS 2.4で変更された関数
全てのPostGIS集約関数はパラレル安全のラベル付けが施されます。これにより集約関数の削除と再作成が強制的に行われます。この際、ユーザ定義のビューまたはSQL関数がPostGIS集約関数に依っている場合に失敗することがあります。
- = - Changed: 2.4.0, in prior versions this was bounding box equality not a geometric equality. If you need bounding box equality, use instead. ~=演算子はジオメトリ/ジオグラフィAのバウンディングボックスがジオメトリ/ジオグラフィBのバウンディングボックスと同じ場合にTRUEを返します。
- ST_Node - Changed: 2.4.0 この関数は内部でGEOSUnaryUnionの替わりにGEOSNodeを使用しています。ラインストリングの並び順と方向がPostGIS 2.4より前のものと違うことになるかも知れません。 ラインストリングの集合にノードを作成します。
14.12.2. PostGIS 2.3で新規作成/機能強化された関数
次に示す関数は、新規作成または機能強化されたPostGIS関数です。
![[注記]](images/note.png) | |
---|
PostGIS 2.3.0: PostgreSQL 9.6以上で、並列クエリに対応します。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.3.0:データベースのリストアにおける問題を低減するために、PostGISエクステンションの全ての関数に対してスキーマ修飾を可能にしました。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.3.0: PostgreSQL 9.4以上で、BRINインデックスに対応します。「BRINインデックス」を参照して下さい。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.3.0: Tigerジオコーダは、TIGER 2016データで動作するように更新されました。 |
PostGIS 2.3で新規作成された関数
- &&&(geometry,gidx) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 ジオメトリの (キャッシュされている)n次元バウンディングボックスが単精度浮動小数点数によるn次元バウンディングボックス (GIDX)とインタセクトする場合にTRUEを返します。
- &&&(gidx,geometry) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 単精度浮動小数点数によるn次元バウンディングボックス (GIDX)がジオメトリの (キャッシュされている)n次元バウンディングボックスとインタセクトする場合にTRUEを返します。
- &&&(gidx,gidx) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 二つの単精度浮動小数点数によるn次元バウンディングボックス (GIDX)が相互にインタセクトする場合にTRUEを返します。
- &&(box2df,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 二つの単精度浮動小数点数による2次元バウンディングボックス (BOX2DF)が相互にインタセクトする場合にTRUEを返します。
- &&(box2df,geometry) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 単精度浮動小数点数による2次元バウンディングボックスがジオメトリの (キャッシュされている)2次元バウンディングボックスとインタセクトする場合にTRUEを返します。
- &&(geometry,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 ジオメトリの (キャッシュされている)2次元バウンディングボックスが単精度浮動小数点数による2次元バウンディングボックスとインタセクトする場合にTRUEを返します。
- @(box2df,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 二つの単精度浮動小数点数によるn次元バウンディングボックス (GIDX)の一方がもう一方を包含する場合にTRUEを返します。
- @(box2df,geometry) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 単精度浮動小数点数による2次元バウンディングボックス (BOX2DF)がジオメトリの2次元バウンディングボックスに包含される場合にTRUEを返します。
- @(geometry,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 ジオメトリの2次元バウンディングボックスが単精度浮動小数点数による2次元バウンディングボックス (BOX2DF)に包含される場合にTRUEを返します。
- Populate_Topology_Layer - Availability: 2.3.0 テーブルからメタデータを読み、topology.layerテーブルに不足しているものを追加します。
- ST_ClusterDBSCAN - Availability: 2.3.0 - GEOSが必要です。 DBSCAN (ノイズ適用可能な密度に基づいた空間クラスタリング)アルゴリズムの2次元実装に基づいて、それぞれの入力ジオメトリが入るクラスタの整数識別子を返すウィンドウ関数です。
- ST_ClusterKMeans - Availability: 2.3.0 - GEOSが必要です。 個々のジオメトリが入るクラスタの整数識別子を返すウィンドウ関数です。
- ST_GeneratePoints - Availability: 2.3.0 ポリゴンまたはマルチポリゴンから、元の領域の内部の、乱数で決められた位置に置かれた点からなるマルチポイントに変換します。
- ST_GeometricMedian - Availability: 2.3.0 マルチポイントの幾何学的中央値を返します。
- ST_MinimumBoundingRadius - Availability: 2.3.0 ジオメトリを完全に包含する最小円の中心ポイントと半径を返します。
- ST_MinimumClearance - Availability: 2.3.0 - GEOS 3.6.0以上が必要です。 ジオメトリのクリアランスの最小値を返します。この値はジオメトリのロバスト性を示すものです。
- ST_MinimumClearanceLine - Availability: 2.3.0 - GEOS 3.6.0以上が必要です。 ジオメトリの最小クリアランスを示す、2点のラインストリングを返します。
- ST_Points - Availability: 2.3.0 ジオメトリの全ての座標値からなるマルチポイントを返します。
- ST_VoronoiLines - Availability: 2.3.0 - GEOS 3.5.0以上が必要です。 ジオメトリの頂点からボロノイ図のセル間の境界を返します。
- ST_VoronoiPolygons - Availability: 2.3.0 - GEOS 3.5.0以上が必要です。 ジオメトリの頂点からボロノイ図のセルを返します。
- ST_WrapX - Availability: 2.3.0 ジオメトリをX値で回り込ませます。
- TopoGeom_addElement - Availability: 2.3 TopoGeometryの定義に要素を追加します。
- TopoGeom_remElement - Availability: 2.3 TopoGeometryの定義から要素を削除します。
- ~(box2df,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 二つの単精度浮動小数点数による2次元バウンディングボックス (BOX2DF)の一方がもう一方を包含する場合にTRUEを返します。
- ~(box2df,geometry) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 単精度浮動小数点数による2次元バウンディングボックス (BOX2DF)をジオメトリの (キャッシュされている)2次元バウンディングボックスが包含する場合にTRUEを返します。
- ~(geometry,box2df) - Availability: 2.3.0 BRIN (Block Range INdexes)が導入されました。PostgreSQL 9.5以上が必要です。 ジオメトリの (キャッシュされている)2次元バウンディングボックスが単精度浮動小数点数によるn次元バウンディングボックス (GIDX)を包含する場合にTRUEを返します。
PostGIS 2.3で機能強化された関数
- ST_Contains - Enhanced: 2.3.0 PIP short-circuit (ポリゴンとポイントに限定した高速判定)を少ないポイントからなるマルチポイントに対応することができるよう拡張しました。以前の版ではポリゴンとポイントの組み合わせにだけ対応していました。
- ST_Covers - Enhanced: 2.3.0 ジオメトリについて、PIP short-circuit (ポリゴンとポイントに限定した高速判定)を少ないポイントからなるマルチポイントに対応することができるよう拡張しました。以前の版ではポリゴンとポイントの組み合わせにだけ対応していました。
- ST_Expand - Enhanced: 2.3.0 異なる次元の異なる量によるボックスの拡張に対応するようになりました。
- ST_Intersects - Enhanced: 2.3.0 PIP short-circuit (ポリゴンとポイントに限定した高速判定)を少ないポイントからなるマルチポイントに対応することができるよう拡張しました。以前の版ではポリゴンとポイントの組み合わせにだけ対応していました。
- ST_Segmentize - Enhanced: 2.3.0 Segmentize geography now uses equal length segments
- ST_Within - Enhanced: 2.3.0 ジオメトリについて、PIP short-circuit (ポリゴンとポイントに限定した高速判定)を少ないポイントからなるマルチポイントに対応することができるよう拡張しました。以前の版ではポリゴンとポイントの組み合わせにだけ対応していました。
14.12.3. PostGIS 2.2で新規作成/機能強化された関数
次に示す関数は、追加または機能強化されたPostGIS関数です。
![[注記]](images/note.png) | |
---|
postgis_sfcgalは、現在はエクステンションとしてインストールできます。CREATE EXTENSION postgis_sfcgal;とします。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.2.0:Tigerジオコーダは、TIGER 2015データで動作するように更新されました。 |
![[注記]](images/note.png) | |
---|
住所正規化のための address_standardizer, address_standardizer_data_us エクステンションの詳細情報については12章住所標準化を参照して下さい。 |
![[注記]](images/note.png) | |
---|
トポロジの多くの関数は、性能向上のためにC関数で再記述されました。 |
PostGIS 2.2で新規作成された関数
- ST_3DDifference - Availability: 2.2.0 3次元の差分を計算します。
- ST_3DUnion - Availability: 2.2.0 3次元の結合を計算します。
- ST_ApproximateMedialAxis - Availability: 2.2.0 面ジオメトリの近似的な中心軸を計算します。
- ST_AsEncodedPolyline - Availability: 2.2.0 ラインストリングジオメトリから符号化したポリラインを返します。
- ST_AsTWKB - Availability: 2.2.0 TWKB (Tiny Well-Known Binary)としてジオメトリを出力します。
- ST_BoundingDiagonal - Availability: 2.2.0 与えられたジオメトリのバウンディングボックスの対角線を返します。
- ST_ClipByBox2D - Availability: 2.2.0 - GEOS 3.5.0以上が必要です。 長方形内に落ちるジオメトリの一部を返します。
- ST_ClusterIntersecting - Availability: 2.2.0 - GEOSが必要です。 集約関数です。ジオメトリの集合の接続された要素の配列を返します。
- ST_ClusterWithin - Availability: 2.2.0 - GEOSが必要です。 集計関数です。ジオメトリコレクションの配列を返します。要素は、指定した距離以内となるよう分けられたジオメトリの集合です。
- ST_CountAgg - Availability: 2.2.0 集約関数です。ラスタ集合の与えられたバンドのピクセル数を返します。バンドが指定されていない場合には、1番と仮定します。exclude_nodata_valueをTRUEに設定している場合には、NODATA値と等しくないピクセルのみを数えます。
- ST_CreateOverview - Availability: 2.2.0 与えられたラスタカバレッジから解像度を落としたものを生成します。
- ST_ForceCurve - Availability: 2.2.0 該当する場合は、ジオメトリを曲線タイプに変換します。
- ST_IsPlanar - Availability: 2.2.0: これは2.1.0のマニュアルに記述されていましたが、2.1版では偶然に外れてしまいました。 サーフェスが平面であるかないかをチェックします。
- ST_IsSolid - Availability: 2.2.0 ジオメトリが立体であるかどうかをテストします。妥当性チェックは行いません。
- ST_LineFromEncodedPolyline - Availability: 2.2.0 エンコード化ポリラインからラインストリングを生成します。
- ST_MakeSolid - Availability: 2.2.0 ジオメトリを立体にキャストします。チェックはしません。妥当な立体を得るには、入力ジオメトリは閉じた多面体サーフェスか閉じたTINでなければなりません。
- ST_MapAlgebra - Availability: 2.2.0: マスクが追加されました。 コールバック関数版 - 一つ以上の入力ラスタ、バンドインデクスと一つのユーザ定義コールバック関数から、一つのバンドからなるラスタを返します。
- ST_MemSize - Availability: 2.2.0 ラスタが取る領域の合計をバイト単位で返します。
- ST_RemoveRepeatedPoints - Availability: 2.2.0 入力ジオメトリから重複ポイントを除いたものを返します。
- ST_Retile - Availability: 2.2.0 任意のタイル化されたラスタカバレッジから構成されたタイルの集合を返します。
- ST_SetEffectiveArea - Availability: 2.2.0 個々の頂点について有効範囲を設定し、M値として保存します。M値でフィルタリングすると、単純化したジオメトリを生成できます。
- ST_SimplifyVW - Availability: 2.2.0 Visvalingam-Whyattアルゴリズムを用いて、入力ジオメトリを「簡略化」したジオメトリを返します。
- ST_Subdivide - Availability: 2.2.0 GEOS 3.5.0以上が必要です。 指定した数より多い頂点を持たないジオメトリの集合を返します。
- ST_SummaryStatsAgg - Availability: 2.2.0 集約関数です。ラスタ集合の指定したバンドについて、ピクセル数、合計値、平均値、標準偏差、最小値、最大値からなる統計情報の概要を返します。バンドを指定しない場合には、1番と仮定します。
- ST_SwapOrdinates - Availability: 2.2.0 与えられたジオメトリにおいて与えられた座標の値を入れ替えたジオメトリを返します。
- ST_Volume - Availability: 2.2.0 3次元立体の体積を計算します。面ジオメトリは (閉じていても)0を返します。
- postgis.enable_outdb_rasters - Availability: 2.2.0 データベース外ラスタのバンドにアクセスできるようにする、真偽型のコンフィギュレーションオプション。
- postgis.gdal_datapath - Availability: 2.2.0 GDALのGDAL_DATAオプションの値を設定するためのコンフィギュレーションオプションです。設定しない場合には、GDAL_DATA環境変数が使われます。
- postgis.gdal_enabled_drivers - Availability: 2.2.0 PostGIS環境でGDALドライバを有効にするコンフィギュレーションオプションです。GDALコンフィギュレーション変数GDAL_SKIPに影響を与えます。
PostGIS 2.2で機能強化された関数
- AsTopoJSON - Enhanced: 2.2.1 点入力に対応するようになりました
- ST_Area - Enhanced: 2.2.0 - 精度とロバスト性の向上のためにGeographicLibを使って回転楕円体面上での計測を行うようにしています。この新機能を使うには、Proj 4.9.0以上が必要です。
- ST_AsX3D - Enhanced: 2.2.0: GeoCoordinatesと軸 (x/y, 経度/緯度)の反転に対応しました。詳細はoptionsを見て下さい。
- ST_Azimuth - Enhanced: 2.2.0 精度とロバスト性向上のために回転楕円体面上の計測をGeographicLibで行うようにしました。この新機能を使うには、Proj 4.9.0以上が必要です。
- ST_Distance - Enhanced: 2.2.0 - 精度とロバスト性の向上のためにGeographicLibを使って回転楕円体面上での計測を行うようにしています。この新機能を使うには、Proj 4.9.0以上が必要です。
- ST_Scale - Enhanced: 2.2.0 全ての次元の拡大縮小の対応 (ジオメトリによる引数指定)を導入しました
- ST_Summary - Enhanced: 2.2.0 TINと曲線の対応が追加されました。
- <-> - Enhanced: 2.2.0 ジオメトリとジオグラフィとのKNN (k近傍法)の動作が本当のものになりました。ジオグラフィのKNNは回転楕円体面上でなく球面上の計算となることに注意して下さい。PostgreSQL 9.4以下では、ジオグラフィに対応していますが、バウンディングボックスの重心に対応するだけです。
14.12.4. PostGIS 2.2で大幅に変更された関数
次に示す関数は、PostGIS 2.2で、たぶん大幅に変更されたものです。これらを使用している場合には、既存のコードを確認する必要があるかも知れません。
- Get_Geocode_Setting - Changed: 2.2.0 : デフォルト設定をgeocode_settingsに保存するようにしました。ユーザが設定したものだけがgeocode_settings内にあります。
- ST_3DClosestPoint - Changed: 2.2.0 - 二つの2次元ジオメトリが入力である場合には、2次元ポイントが返ります (古い挙動では、存在しないZの値について0を仮定していました)。2次元と3次元の場合には、もはや、存在しないZの値について0を仮定しません。
- ST_3DDistance - Changed: 2.2.0 - 2次元と3次元の場合には、もはや、存在しないZの値について0を仮定しません。
- ST_3DLongestLine - Changed: 2.2.0 - 二つの2次元ジオメトリが入力である場合には、2次元ポイントが返ります (古い挙動では、存在しないZの値について0を仮定していました)。2次元と3次元の場合には、もはや、存在しないZの値について0を仮定しません。
- ST_3DMaxDistance - Changed: 2.2.0 - 2次元と3次元の場合には、もはや、存在しないZの値について0を仮定しません。
- ST_3DShortestLine - Changed: 2.2.0 - 二つの2次元ジオメトリが入力である場合には、2次元ポイントが返ります (古い挙動では、存在しないZの値について0を仮定していました)。2次元と3次元の場合には、もはや、存在しないZの値について0を仮定しません。
- ST_DistanceSphere - Changed: 2.2.0 前の版ではこの関数はST_Distance_Sphereと呼ばれていました。
- ST_DistanceSpheroid - Changed: 2.2.0 前の版ではST_Distance_Spheroidと呼ばれていました。
- ST_Equals - Changed: 2.2.0 この関数は、どちらのジオメトリも不正であっても、バイナリで同じ場合ならTRUEを返します。
- ST_LengthSpheroid - Changed: 2.2.0 前の版ではST_Length_Spheroidと呼ばれていました。また、ST_3DLength_Spheroidの別名でした。
- ST_MemSize - Changed: 2.2.0 命名規則に従うためにST_MemSizeに変更しました。以前の版では、この関数はST_Mem_Sizeと呼ばれていました。古い名前は非推奨ですが現在のところは有効です。
- ST_PointInsideCircle - Changed: 2.2.0 以前の版ではST_Point_Inside_Circleと呼ばれていました。
- ST_Split - Changed: 2.2.0 MULTILINESTRING,MULTIPOINT, (MULTI)POLYGONの境界によるラインの分割に対応しました。
- ValidateTopology - Changed: 2.2.0 エラーの記述と矛盾しないように'edge crosses node'のid1とid2の値が入れ替わっています。
- <-> - Changed: 2.2.0 PostgreSQL 9.5では、古いハイブリッド書式は遅くなりる可能性があります。そのため、PostGIS 2.2以上かつPostgreSQL 9.5以上においてのみ動作させる場合には、そのやり方をり除きたくなるでしょう。
14.12.5. PostGIS 2.1で新規作成/機能強化された関数
次に示す関数は、追加または機能強化されたPostGIS関数です。
![[注記]](images/note.png) | |
---|
トポロジの効率が改善されています。詳細情報については11章トポロジを参照して下さい。 |
![[注記]](images/note.png) | |
---|
バグ訂正 (特にバンド外ラスタ)、多くの新しい関数 (しばしばユーザが共通のタスクを果たすために記述するコードを短くできます)、ラスタ機能における大規模の速度改善があります。詳細情報については9章ラスタ リファレンスを参照して下さい。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.1.0: Tigerジオコーダは、TIGER 2012データで動作するように更新されました。また、デバッグと格付け設定変更のためにgeocode_settings が追加され、ローダのロード量を抑制して、現在はロードするべきテーブルをダウンロードするだけになりました。PostGIS 2.1.1: Tigerジオコーダは、TIGER 2013データで動作するように更新されました。詳細情報については、「Tigerジオコーダ」を参照して下さい。 |
PostGIS 2.1で新規作成された関数
PostGIS 2.1で機能強化された関数
- ST_AddBand - Enhanced: 2.1.0 addbandarg対応が追加されました。
- ST_AddBand - Enhanced: 2.1.0 out-dbバンドが追加されました。
- ST_AsBinary - Enhanced: 2.1.0 outasinの追加
- ST_Aspect - Enhanced: 2.1.0 ST_MapAlgebra()を使用するようにし、interpolate_nodata任意引数を追加しました。
- ST_Clip - Enhanced: 2.1.0 C言語で記述されました
- ST_Distinct4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_HillShade - Enhanced: 2.1.0 ST_MapAlgebra()を使用するようにし、interpolate_nodata任意引数を追加しました。
- ST_Max4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_Mean4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_Min4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_PixelAsPolygons - Enhanced: 2.1.0 任意引数exclude_nodata_valueが追加されました。
- ST_Polygon - Enhanced: 2.1.0 速度を改善し (完全にC言語で記述しました)、確実に妥当なマルチポリゴンを返すようにしました。
- ST_Range4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_SameAlignment - Enhanced: 2.1.0 集約関数版の追加
- ST_SetGeoReference - Enhanced: 2.1.0 ST_SetGeoReference(raster, double precision, ...)形式を追加しました。
- ST_SetValue - Enhanced: 2.1.0 ST_SetValueでジオメトリを用いる形式が、ポイントだけでなくあらゆるジオメトリタイプに対応するようになりました。ジオメトリを用いる形式はST_SetValuesのgeomval[]を用いる形式をラップしたものです。
- ST_Slope - Enhanced: 2.1.0 ST_MapAlgebra()を使用するようにし、units, scale, interpolate_nodata任意引数を追加しました。
- ST_StdDev4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_Sum4ma - Enhanced: 2.1.0 二つ目の形式の追加
- ST_Transform - Enhanced: 2.1.0 ST_Tranfrorm(rast, alignto)の形式を追加しました。
- ST_Union - Enhanced: 2.1.0 速度が改善されました (完全にC言語で記述しました)
- ST_Union - Enhanced: 2.1.0 ST_Union(rast) (一つ目の形式)で、全ての入力ラスタの全てのバンドを結合するようになりました。以前の版のPostGISでは、一つ目のバンドと仮定していました。
- ST_Union - Enhanced: 2.1.0 ST_Union(rast, uniontype) (四つ目の形式)で、全ての入力ラスタの全てのバンドを結合するようになりました。
- ST_AsGML - Enhanced: 2.1.0 GML 3用にidが導入されました。
- ST_Boundary - Enhanced: 2.1.0で三角対応が導入されました。
- ST_DWithin - Enhanced: 2.1.0で、ジオグラフィでの速度が向上しました。詳細についてはMaking Geography fasterを参照して下さい。
- ST_DWithin - Enhanced: 2.1.0 曲線ジオメトリ対応が導入されました。
- ST_Distance - Enhanced: 2.1.0 ジオグラフィでの速度が改善されました。詳細はMaking Geography fasterをご覧ください。
- ST_Distance - Enhanced: 2.1.0 - 曲線ジオメトリ対応が導入されました。
- ST_DumpPoints - Enhanced: 2.1.0 速度向上しました。C言語で実装しなおしました。
- ST_MakeValid - Enhanced: 2.1.0 GEOMETRYCOLLECTIONとMULTIPOINTに対応するようになりました。
- ST_Reverse - Enhanced: 2.1.0 ジオグラフィ対応が導入されました。
- ST_Segmentize - Enhanced: 2.1.0 ジオグラフィ対応が導入されました。
- ST_Summary - Enhanced: 2.1.0 空間参照系を持つかを示すSフラグが追加されました。
- ST_Transform - Enhanced: 2.1.0 ジオグラフィ対応が導入されました。
- toTopoGeom - Enhanced: 2.1.0版では、既存のTopoGeometryを取る形式が追加されました。
14.12.6. PostGIS 2.1で大幅に変更された関数
次に示す関数は、PostGIS 2.1で、たぶん大幅に変更されたものです。これらを使用している場合には、既存のコードを確認する必要があるかも知れません。
- ST_Aspect - Changed: 2.1.0 以前の版では、返り値はラジアン単位でした。現在は、デフォルトでは度で返します。
- ST_HillShade - Changed: 2.1.0 以前の版ではazimuthとaltitudeはラジアン単位で表現しました。現在はazimuthとaltitudeは度単位で表現します。
- ST_Intersects - Changed: 2.1.0 ST_Intersects(raster, geometry)形式の挙動が ST_Intersects(geometry, raster)とあうように変更されました。
- ST_PixelAsCentroids - Changed: 2.1.1 exclude_nodata_valueの挙動を変更しました。
- ST_PixelAsPoints - Changed: 2.1.1 exclude_nodata_valueの挙動を変更しました。
- ST_PixelAsPolygons - Changed: 2.1.1 exclude_nodata_valueの挙動を変更しました。
- ST_Polygon - Changed: 2.1.0 以前の版では、時々ポリゴンを返しましたが、常にマルチポリゴンを返すように変更しました。
- ST_RasterToWorldCoordX - Changed: 2.1.0 以前の版ではST_Raster2WorldCoordXと呼ばれていました。
- ST_RasterToWorldCoordY - Changed: 2.1.0 以前の版ではST_Raster2WorldCoordYと呼ばれていました。
- ST_Resample - Changed: 2.1.0 srid引数を削除しました。参照ラスタを使う形式では、もはや参照ラスタのSRIDを適用しません。ラスタの投影変換にはST_Transform()を使います。SRIDなしで動作します。
- ST_Rescale - Changed: 2.1.0 SRIDなしのラスタで動作するようになりました。
- ST_Reskew - Changed: 2.1.0 SRIDなしのラスタで動作するようになりました。
- ST_Slope - Changed: 2.1.0 以前の版では、返り値はラジアン単位でした。現在は、デフォルトでは度で返します。
- ST_SnapToGrid - Changed: 2.1.0 SRIDなしのラスタで動作するようになりました。
- ST_WorldToRasterCoordX - Changed: 2.1.0 以前の版ではST_World2RasterCoordXと呼ばれていました。
- ST_WorldToRasterCoordY - Changed: 2.1.0 以前の版ではST_World2RasterCoordYと呼ばれていました。
- ST_EstimatedExtent - Changed: 2.1.0 2.0.xまではST_Estimated_Extentと呼ばれていました。
- ST_Force2D - Changed: 2.1.0 2.0.xの間はST_Force_2Dと呼ばれていました。
- ST_Force3D - Changed: 2.1.0 2.0.xの間はST_Force_3Dと呼ばれていました。
- ST_Force3DM - Changed: 2.1.0 2.0.xの間はST_Force_3DMと呼ばれていました。
- ST_Force3DZ - Changed: 2.1.0 2.0.xの間はST_Force_3DZと呼ばれていました。
- ST_Force4D - Changed: 2.1.0 2.0.xの間はST_Force_4Dと呼ばれていました。
- ST_ForceCollection - Changed: 2.1.0 2.0.xの間はST_Force_Collectionと呼ばれていました。
- ST_LineInterpolatePoint - Changed: 2.1.0 2.0.xまでではST_Line_Interpolate_Pointと呼んでいました。
- ST_LineLocatePoint - Changed: 2.1.0 2.0.xまでではST_Line_Locate_Pointと呼んでいました。
- ST_LineSubstring - Changed: 2.1.0 2.0.xではST_Line_Substringと呼ばれていました。
- ST_Segmentize - Changed: 2.1.0 ジオグラフィ対応導入の結果として、SELECT ST_Segmentize('LINESTRING(1 2, 3 4)',0.5);では、あいまいな関数呼び出しエラーとなります。確実にタイプを指定したオブジェクトを持たせる必要があります。たとえば、ジオメトリ/ジオグラフィカラムであったり、ST_GeomFromText, ST_GeogFromTextを使ったり、SELECT ST_Segmentize('LINESTRING(1 2, 3 4)'::geometry,0.5);としたりします。
14.12.7. PostGIS 2.0で新規作成/機能強化/変更された関数
次に示す関数は、2.0リリースで新規作成/機能強化/大幅な変更 (「PostGIS 2.0で変更された関数」)がなされたPostGIS関数です。
新ジオメトリタイプ: TINと多面体サーフェスが2.0で導入されました。
![[注記]](images/note.png) | |
---|
トポロジ機能の大幅な改良がありました。詳細情報については11章トポロジを参照して下さい。 |
![[注記]](images/note.png) | |
---|
PostGIS 2.0では、ラスタ型とラスタ機能がPostGISに統合されました。ここに一覧を出すには、新しいラスタ関数はあまりに多く、全ての関数が新しいので、有効なラスタ関数の詳細については9章ラスタ リファレンスを参照して下さい。2.0より前では、raster_columnsとraster_overviewsは実際のテーブルでした。2.0リリースでビューに変更されました。ST_AddRasterColumn 等の関数は削除され、AddRasterConstraints, DropRasterConstraintsに置き換えられました。結果として、ラスタテーブルを生成するアプリケーションは変更が必要になるかも知れなくなりました。 |
![[注記]](images/note.png) | |
---|
Tigerジオコーダは、TIGER 2010センサスデータで動作するように更新され、PostGISの中核文書に入れられました。また、逆ジオコーダ関数が新規作成されました。詳細情報については「Tigerジオコーダ」を参照して下さい。 |
- && - Availability: 2.0.0 AのバウンディングボックスがBのバウンディングボックスとインタセクトする場合にTRUEを返します。
- &&& - Availability: 2.0.0 Aのn次元バウンディングボックスがBのn次元バウンディングボックスとインタセクトする場合にTRUEを返します。
- <#> - Availability: 2.0.0 PostgreSQL 9.1以上でのみ有効です。 AのバウンディングボックスとBのバウンディングボックスの2次元距離を返します。
- <-> - Availability: 2.0.0 弱いKNNによって、実際の距離の代わりにジオメトリの重心による近傍が得られます。ポイントは確実な結果を得て、他のタイプは全て不確実な結果を得ます。PostgreSQL 9.1以上で有効です。 AとBの2次元距離を返します。
- <<#>> - Availability: 2.0.0 KNNはPostgreSQL 9.1以上でのみ有効です。 AのバウンディングボックスとBのバウンディングボックスのn次元距離を返します。
- <<->> - Availability: 2.0.0 KNNはPostgreSQL 9.1以上でのみ有効です。 AのバウンディングボックスとBのバウンディングボックスのn次元距離を返します。
- @ - Availability: 2.0.0 raster @ raster, raster @ geometry が導入されました。 AのバウンディングボックスがBのバウンディングボックスに含まれる場合にTRUEを返します。倍精度浮動小数点数のバウンディングボックスを使います。
- @ - Availability: 2.0.5 geometry @ raster が導入されました。 AのバウンディングボックスがBのバウンディングボックスに含まれる場合にTRUEを返します。倍精度浮動小数点数のバウンディングボックスを使います。
- AddEdge - Availability: 2.0.0 GEOS 3.3.0以降が必要です。 指定したラインストリングジオメトリを使って、ラインストリングエッジをエッジテーブルに追加し、指定したトポロジスキーマの始点終点をポイントノードテーブルに追加し、新しい (または既存の)エッジの識別番号を返します。
- AddFace - Availability: 2.0.0 フェイスプリミティブをトポロジに登録し、その識別番号を得ます。
- AddNode - Availability: 2.0.0 指定したトポロジスキーマのノードテーブルにポイントノードを追加し、新しいノードの識別番号を返します。指定したポイントに既にノードがある場合は既存のノード識別番号を返します。
- AddOverviewConstraints - Availability: 2.0.0 ラスタカラムに対して、他のオーバビューであることをタグ付けします。
- AddRasterConstraints - Availability: 2.0.0 ロードされたラスタテーブルの特定のカラムにラスタ制約を追加します。制約には空間参照系、スケール、ブロックサイズ、アラインメント、バンド数、バンド型、ラスタカラムが規則正しいブロックかどうかを示すフラグがあります。テーブルは制約が推論されるためのデータがロードされなければなりません。制約の設定が完了するとtrueを返し、問題があると通知を返します。
- AsGML - Availability: 2.0.0 TopoGeometryのGML表現を返します。
- CopyTopology - Availability: 2.0.0 トポロジ構造 (ノード、エッジ、フェイス、レイヤ、TopoGeometry)を複写します。
- DropOverviewConstraints - Availability: 2.0.0 ラスタカラムに対して他のオーバビューであることをタグ付けしているのを解除します。
- DropRasterConstraints - Availability: 2.0.0 ラスタテーブルカラムを参照するPostGISラスタ制約を削除します。データの再読み込みやラスタカラムデータの更新の際に使えます。
- Drop_Indexes_Generate_Script - Availability: 2.0.0 tigerスキーマとユーザが指定したスキーマ上の、全ての主キーでなく、かつユニークでないインデックスを削除します。スキーマを指定しない場合のデフォルトスキーマは、tiger_dataです。
- Drop_State_Tables_Generate_Script - Availability: 2.0.0 指定したスキーマ内の、名前が州コードから始まるテーブルを全て削除するスクリプトを生成します。スキーマが指定されていない場合のデフォルトスキーマはtiger_dataです。
- Geocode_Intersection - Availability: 2.0.0 インタセクトする二つのストリート、州コード、市名、郵便番号を引数に取り、最初の交差点の可能性のある位置の集合を出力します。geomoutにNAD83経度緯度のポイント、normalized_addressにそれぞれの位置、ratingに評価値がそれぞれ入ります。評価値が低いほど合致度が高くなります。結果は評価値の低い順にソートされます。最大結果数を渡すことができ、デフォルトは10です。Tigerデータ (エッジ、フェイス、住所)と、PostgreSQLあいまい文字列合致 (soundex, levenshtein)を使います。
- GetEdgeByPoint - Availability: 2.0.0 - GEOS 3.3.0以上が必要 与えられたポイントにインタセクトするエッジの識別番号を探索します。
- GetFaceByPoint - Availability: 2.0.0 - GEOS 3.3.0以上が必要 与えられたポイントにインタセクトするフェイスの識別番号を探索します。
- GetNodeByPoint - Availability: 2.0.0 - GEOS 3.3.0以上が必要 ポイント位置にあるノードの識別番号を探索します。
- GetNodeEdges - Availability: 2.0 与えられたノードに付随するエッジの集合を整列して返します。
- GetRingEdges - Availability: 2.0.0 与えられた側を歩いて得られた、正負符号付きエッジ識別番号の集合を、順序通りに返します。
- GetTopoGeomElements - Availability: 2.0.0 与えられたTopoGeometry (プリミティブ要素)の、トポロジのelement_idとelement_typeを含むtopoelementオブジェクトの集合を返します。
- GetTopologySRID - Availability: 2.0.0 トポロジ名からtopology.topologyテーブル内にあるトポロジのSRIDを返します。
- Get_Tract - Availability: 2.0.0 ジオメトリで指定した位置の米国国勢調査統計区またはtractテーブルのフィールドを返します。デフォルトでは、統計区の短縮名を返します。
- Install_Missing_Indexes - Availability: 2.0.0 ジオコーダで結合や検索条件に使われ、インデックスが付いていなキーカラムを持つ全てのテーブルを探し、インデックスを追加します。
- Loader_Generate_Census_Script - Availability: 2.0.0 指定した州について、tract (統計区)、bg (block group, 細分区グループ)、tabblock (ブロック)をダウンロードし、tiger_dataに格納するための、指定したプラットフォーム用のシェルスクリプトを生成します。行ごとに州ごとのスクリプトが返されます。
- Loader_Generate_Script - Availability: 2.0.0 Tiger 2010構造のデータに対応しました。国勢統計区 (tract)、細分区グループ ("block groups", bg)、細分区 (tabblocks)テーブルをダウンロードします。 指定したプラットフォーム用の、指定した州のTigerデータをダウンロードし、格納準備を行い、tiger_dataスキーマに格納するシェルスクリプトを生成します。行ごとに州ごとのスクリプトが返ります。最新版ではTiger 2010のデータ構造変更に対応していて、国勢統計区、細分区グループ、細分区 (tabblocks)テーブルをダウンロードすることができます。
- Missing_Indexes_Generate_Script - Availability: 2.0.0 ジオコーダで結合に使われるキーカラムを持ち、インデックスが付いていないキーカラムを持つすべてのテーブルを検索し、インデックスを追加するSQLデータ定義言語を出力します。
- Polygonize - Availability: 2.0.0 トポロジエッジで定義される全てのフェイスを探索し、追加します。
- Reverse_Geocode - Availability: 2.0.0 登録されている空間参照系に基づくポイントジオメトリを引数に取り、理論的に可能性のある住所の配列と交差するストリートの配列を一つのレコードで返します。include_strnum_range = trueの場合には、交差するストリートに番地範囲を追加します。
- ST_3DClosestPoint - Availability: 2.0.0 g1上の、g2に最も近い3次元ポイントを返します。3次元最短線の一つ目のポイントです。
- ST_3DDFullyWithin - Availability: 2.0.0 3次元ジオメトリが他のジオメトリとの距離が指定した範囲内ならtrueを返します。
- ST_3DDWithin - Availability: 2.0.0 3次元 (XYZ)ジオメトリ型について、二つのジオメトリの3次元距離が指定した数の内にある場合にtrueを返します。
- ST_3DDistance - Availability: 2.0.0 ジオメトリ型について、二つのジオメトリの、3次元の最小デカルト距離 (空間参照系に基づきます)を、投影法の単位で返します。
- ST_3DIntersects - Availability: 2.0.0 ジオメトリが3次元で「空間的にインタセクトする」場合にTRUEを返します。ポイント、ラインストリング、ポリゴン、多面体サーフェス (面)のみ対応します。SFCGALバックエンドによってTINも対応します。
- ST_3DLongestLine - Availability: 2.0.0 二つのジオメトリの3次元長が最長となるラインを返します。
- ST_3DMaxDistance - Availability: 2.0.0 ジオメトリ型について、二つのジオメトリの、3次元の最大デカルト距離 (空間参照系に基づきます)を、投影法の単位で返します。
- ST_3DShortestLine - Availability: 2.0.0 二つのジオメトリの3次元長が最短となるラインを返します。
- ST_AddEdgeModFace - Availability: 2.0 新しいエッジを追加します。新しいエッジがフェイスを分割する場合には、もとのフェイスを編集し、一つのフェイスを追加します。
- ST_AddEdgeNewFaces - Availability: 2.0 新しいエッジを追加します。新しいエッジがフェイスを分割する場合には、もとのフェイスを削除して、分割した二つのフェイスに置き換えます。
- ST_AsGDALRaster - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 指定されたGDALラスタ書式でラスタタイルを返します。ラスタ書式はコンパイルしたライブラリが対応するものです。ライブラリが対応する書式の一覧を得るにはST_GDALRasters()を使います。
- ST_AsJPEG - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 ラスタの選択されたバンドを、単一のJoint Photographic Exports Group (JPEG)画像としてバイト配列で返します。バンドを指定せず、1バンドか3より多いバンドがある場合には、1番バンドを使用します。3バンドのみ指定した場合には、3バンドを使用し、RGBに対応付けます。
- ST_AsLatLonText - Availability: 2.0 与えられたポイントの度・分・秒表現を返します。
- ST_AsPNG - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 ラスタの選択されたバンドを、単一のportable network graphics (PNG)画像としてバイト配列で返します。バンドを指定せず、1バンドか3バンドか4バンドある場合には、全てのバンドを使用します。バンドを指定せず、2バンドか4より多いバンドがある場合には、1番バンドを使用します。対象バンドはRGBまたはRGBAに対応付けられます。
- ST_AsRaster - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 PostGISジオメトリをPostGISラスタに変換します。
- ST_AsTIFF - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 ラスタの選択されたバンドを、単一のTIFF画像 (バイト配列)として返します。バンドを指定しない場合には、全てのバンドの使用を試みます。
- ST_AsX3D - Availability: 2.0.0: ISO-IEC-19776-1.2-X3DEncodings-XML ジオメトリをX3Dノード要素書式 (ISO-IEC-19776-1.2-X3DEncodings-XML)で返します。
- ST_Aspect - Availability: 2.0.0 標高ラスタバンドの傾斜方向 (デフォルトの単位は度)を返します。地形解析に使えます。
- ST_Band - Availability: 2.0.0 既存のラスタの、一つ以上のバンドを新しいラスタとして返します。既存のラスタから新しいラスタを構築する際に使えます。
- ST_BandIsNoData - Availability: 2.0.0 指定したバンドがNODATA値だけで満たされている場合には、TRUEを返します。
- ST_Clip - Availability: 2.0.0 入力ジオメトリで切り取ったラスタを返します。バンドが指定されていない場合には、全てのバンドが返されます。cropが指定されていない場合には、TRUEと仮定され、出力ラスタをクロップします。
- ST_CollectionHomogenize - Availability: 2.0.0 ジオメトリコレクションを与えると、「最も単純な」表現を返します。
- ST_ConcaveHull - Availability: 2.0.0 凹包は、集合の範囲内におけるすべてのジオメトリーを囲む、できる限り凹となるジオメトリを表現するものです。収縮包装とみることができます。
- ST_Count - Availability: 2.0.0 ラスタまたはラスタカバレッジの指定したバンドのピクセル数を返します。バンドを指定しない場合には、1番と仮定します。exclude_nodata_valueをTRUEに設定している場合には、NODATA値と等しくないピクセルのみを数えます。
- ST_CreateTopoGeo - Availability: 2.0 空のトポロジにジオメトリのコレクションを追加し、成否を示すメッセージを返します。
- ST_Distinct4ma - Availability: 2.0.0 近隣のピクセル値のうち一意となるものを数えるラスタ処理関数です。
- ST_FlipCoordinates - Availability: 2.0.0 与えられたジオメトリのX軸とY軸とを入れ替えたものを返します。緯度/経度のフィーチャーを構築して、これを訂正したい場合に使えます。
- ST_GDALDrivers - Availability: 2.0.0 - GDAL 1.6.0以上が必要です。 使用しているGDALライブラリが対応するラスタ書式の一覧を返します。ST_AsGDALRasterを使って出力できるラスタの書式です。
- ST_GeomFromGeoJSON - Availability: 2.0.0 JSON-C 0.9以上が必要です。 ジオメトリのGeoJSON表現を入力として、PostGISジオメトリオブジェクトを出力します。
- ST_GetFaceEdges - Availability: 2.0 順序番号を含む、afaceの境界となる、整列したエッジの集合を返します。
- ST_HasNoBand - Availability: 2.0.0 指定したバンド番号のバンドが無い場合には、TRUEを返します。バンド番号を指定していない場合には、1番と仮定します。
- ST_HillShade - Availability: 2.0.0 与えられた方位、高度、明度、スケールの入力を使って標高ラスタバンドの仮想照明を返します。
- ST_Histogram - Availability: 2.0.0 ラスタまたはラスタカバレッジのビン範囲で分割したデータ分布をまとめるヒストグラムの集合を返します。ビン数を指定しない場合には自動計算されます。
- ST_InterpolatePoint - Availability: 2.0.0 ジオメトリの、指定したポイントに近いポイントにおけるM値を返します。
- ST_IsEmpty - Availability: 2.0.0 ラスタが空 (幅が0で高さが0)の場合にはTRUEを返します。他の場合には、FALSEを返します。
- ST_IsValidDetail - Availability: 2.0.0 - GEOS 3.3.0以上が必要 ジオメトリが妥当か否かを示すvalid_detail (valid,reason,location)行を返します。不正である場合には、理由と位置を示します。
- ST_IsValidReason - Availability: 2.0 - flagsを受け付ける形式はGEOS 3.3.0以上が必要です。 ジオメトリが妥当か否かを示す文字列を返し、不正な場合は理由を返します。
- ST_MakeLine - Availability: 2.0.0 - マルチポイントの入力要素に対応するようになりました。 ポイント、マルチポイント、ラインジオメトリからラインストリングを生成します。
- ST_MakeLine - Availability: 2.0.0 - ラインストリング入力要素が導入されました。 ポイント、マルチポイント、ラインジオメトリからラインストリングを生成します。
- ST_MakeValid - Availability: 2.0.0, GEOS 3.3.0以上が必要です。 頂点を失うことなしに不正なジオメトリを妥当なジオメトリにしようと試みます。
- ST_MapAlgebraExpr - Availability: 2.0.0 1バンド版: 入力バンドに対する妥当なPostgreSQL代数演算で形成された、指定したピクセルタイプとなる1バンドラスタを生成します。バンドを指定しない場合には、1番を仮定します。
- ST_MapAlgebraExpr - Availability: 2.0.0 2バンド版: 二つの入力バンドに対する妥当なPostgreSQL代数演算で形成された、指定したピクセルタイプとなる1バンドラスタを生成します。バンドを指定しない場合には、どちらも1番と仮定します。結果ラスタは、一つ目のラスタのアラインメント (スケール、スキュー、ピクセル角位置)にあわされます。範囲は"extenttype"引数で定義されます。取りうる"extenttype"の値はINTERSECTION, UNION, FIRST, SECONDです。
- ST_MapAlgebraFct - Availability: 2.0.0 1バンド版 - 入力バンドに対する妥当なPostgreSQL関数で形成された、指定したピクセルタイプとなる1バンドラスタを生成します。バンドを指定しない場合には、1番と仮定します。
- ST_MapAlgebraFct - Availability: 2.0.0 2バンド版 - 二つの入力バンドに対する妥当なPostgreSQL関数で形成された、指定したピクセルタイプとなる1バンドラスタを生成します。バンドを指定しない場合には、1番と仮定します。"extenttype"のデフォルトはINTERSECTIONです。
- ST_MapAlgebraFctNgb - Availability: 2.0.0 1バンド版: ユーザ定義PostgreSQL関数を使用する最近傍地図代数関数です。入力ラスタバンドの近傍の値を与えたPL/pgSQLユーザ定義関数の結果からなるラスタを返します。
- ST_Max4ma - Availability: 2.0.0 近隣のピクセル値の最大値を計算するラスタ処理関数です。
- ST_Mean4ma - Availability: 2.0.0 近隣のピクセル値の平均値を計算するラスタ処理関数です。
- ST_Min4ma - Availability: 2.0.0 近隣のピクセル値の最小値を計算するラスタ処理関数です。
- ST_ModEdgeHeal - Availability: 2.0 二つのエッジについて、接続しているノードを削除して修復します。1番目のエッジを編集して、2番目のエッジを削除します。削除されたノードの識別番号を返します。
- ST_NewEdgeHeal - Availability: 2.0 二つのエッジについて、接続しているノードを削除して修復します。両方のエッジを削除し、1番目のエッジと同じ方向のエッジに置き換えます。
- ST_Node - Availability: 2.0.0 - GEOS 3.3.0以上が必要 ラインストリングの集合にノードを作成します。
- ST_NumPatches - Availability: 2.0.0 多面体サーフェスのフェイス数を返します。多面体でないジオメトリの場合にはNULLを返します。
- ST_OffsetCurve - Availability: 2.0 - GEOS 3.2以上、GEOS 3.3以上で改善されました。 与えられた距離と方面に入力ラインをずらしたラインを返します。中心線と平行する線を引く際に使えます。
- ST_PatchN - Availability: 2.0.0 ジオメトリがPOLYHEDRALSURFACEかPOLYHEDRALSURFACEMの場合には、1始まりでN番目のジオメトリ (フェイス)を返します。それ以外の場合には、NULLを返します。
- ST_Perimeter - Availability: 2.0.0 ジオグラフィ対応が導入されました。 ST_SrrfaceまたはST_MultiSurface (POLYGONまたはMULTIPOLYGON)の境界の長さの計測値を返します。ジオメトリでは単位は空間参照系によります。ジオグラフィではメートル単位になります。
- ST_PixelAsPolygon - Availability: 2.0.0 指定した行と列のピクセルの境界となるジオメトリを返します。
- ST_PixelAsPolygons - Availability: 2.0.0 全てのピクセルについて境界となるジオメトリを、ピクセルごとのピクセル値とラスタ座標系のXとYとを付けて返します。
- ST_Project - Availability: 2.0.0 メートル単位の距離とラジアン単位の方位とを使って始点から算出されたPOINTを返します。
- ST_Quantile - Availability: 2.0.0 ラスタまたはラスタテーブルカバレッジのサンプルまたは母集団の分位数を計算します。値がラスタの25%,50%,75%にあるかを調べることができます。
- ST_Range4ma - Availability: 2.0.0 近隣のピクセル値の範囲を計算するラスタ処理関数です。
- ST_Reclass - Availability: 2.0.0 元のラスタから再分類したバンドタイプからなるラスタを生成します。nbandは変更するバンドです。nbandが指定されていない場合には、1と仮定します。他の全てのバンドは変更せずに返します。可視画像の書式としてより単純な描画を行うために、16BUIバンドを8BUIバンドに変換する、等のために使います。
- ST_RelateMatch - Availability: 2.0.0 - GEOS 3.3.0以上が必要 intersectionMattrixPattern1がintersectionMatrixPattern2を含む場合にTRUEを返します。
- ST_RemEdgeModFace - Availability: 2.0 エッジを削除し、削除対象エッジでフェイスが二つに分割されているなら、両方の空間をとるため、一つを削除して、もう一つを編集します。
- ST_RemEdgeNewFace - Availability: 2.0 エッジを削除し、消去対象エッジでフェイスが二つに分割されているなら元の二つのフェイスを削除し、一つの新しいフェイスに置き換えます。
- ST_Resample - Availability: 2.0.0 GDAL 1.6.1以上が必要です。 指定したリサンプリングアルゴリズム、新しいピクセル範囲、グリッドの隅、定義するか他のラスタから借りてきた地理参照属性を使ってリサンプリングを行います。
- ST_Rescale - Availability: 2.0.0 GDAL 1.6.1以上が必要です。 スケール (ピクセルサイズ)だけを調整するリサンプリングを行います。新しいピクセル値のリサンプリングアルゴリズムとして最近傍補間 ('NearestNeighbor' (米式綴り方))、双線形補間 ('Bilinear')、3次補間 ('Cubic')、3次スプライン補間 ('CubicSpline')、ランチョス補間 ('Lanczos')を用います。デフォルトは最近傍補間です。
- ST_Reskew - Availability: 2.0.0 GDAL 1.6.1以上が必要です。 キュー (回転パラメタ)だけを調整するリサンプリングを行います。新しいピクセル値のリサンプリングアルゴリズムとして最近傍補間 ('NearestNeighbor' (米式綴り方))、双線形補間 ('Bilinear')、3次補間 ('Cubic')、3次スプライン補間 ('CubicSpline')、ランチョス補間 ('Lanczos')を用います。デフォルトは最近傍補間です。
- ST_SameAlignment - Availability: 2.0.0 ラスタが同じスキュー、スケール、空間参照系、オフセットを持つ (ピクセルが分割されることなく同じグリッドに置かれている)場合にTRUEを返し、そうでない場合は問題を詳述する通知とともにFALSEを返します。
- ST_SetBandIsNoData - Availability: 2.0.0 バンドのisnodataフラグをTRUEにします。
- ST_SharedPaths - Availability: 2.0.0 GEOS 3.3.0以降が必要です。 二つのLINESTRING/MULTILINESTRINGの入力が共有するパスのコレクションを返します。
- ST_Slope - Availability: 2.0.0 標高ラスタバンドの傾斜角 (デフォルトでは度単位)を返します。地形解析に使えます。
- ST_Snap - Availability: 2.0.0 GEOS 3.3.0以降が必要です。 入力ジオメトリの辺と頂点を参照ジオメトリの頂点にスナップします。
- ST_SnapToGrid - Availability: 2.0.0 GDAL 1.6.1以上が必要です。 グリッドにスナップすることでラスタをリサンプリングします。新しいピクセル値のリサンプリングアルゴリズムとして最近傍補間 ('NearestNeighbor' (米式綴り方))、双線形補間 ('Bilinear')、3次補間 ('Cubic')、3次スプライン補間 ('CubicSpline')、ランチョス補間('Lanczos')を用います。デフォルトは最近傍補間です。
- ST_Split - Availability: 2.0.0 ジオメトリを分割したジオメトリのコレクションを返します。
- ST_StdDev4ma - Availability: 2.0.0 近隣のピクセル値の標準偏差を計算するラスタ処理関数です。
- ST_Sum4ma - Availability: 2.0.0 近隣のピクセル値の合計を計算するラスタ処理関数です。
- ST_SummaryStats - Availability: 2.0.0 ラスタまたはラスタカバレッジの指定したバンドについて、ピクセル数、合計値、平均値、標準偏差、最小値、最大値からなる統計情報の概要を返します。バンドを指定しない場合には、1番と仮定します。
- ST_Transform - Availability: 2.0.0 GDAL 1.6.1以上が必要です。 ラスタを既知の空間参照系から他の既知の空間参照系に、指定したリサンプリングアルゴリズムで投影変換します。新しいピクセル値のリサンプリングアルゴリズムとして最近傍補間 ('NearestNeighbor' (米式綴り方))、双線形補間 ('Bilinear')、3次補間 ('Cubic')、3次スプライン補間 ('CubicSpline')、ランチョス補間 ('Lanczos')を用います。デフォルトは最近傍補間です。
- ST_UnaryUnion - Availability: 2.0.0 - GEOS 3.3.0以上が必要 ST_Unionに似ていますが、ジオメトリ要素レベルで動作します。
- ST_Union - Availability: 2.0.0 ラスタタイルの集合を結合して1以上のバンドからなる単一ラスタを返します。
- ST_ValueCount - Availability: 2.0.0 ラスタ (またはラスタカバレッジ)の指定されたバンドで、指定した値を持つピクセルを対象として、ピクセルバンド値とピクセル数からなるレコードの集合を返します。バンドを指定しない場合には、1番と仮定します。デフォルトではNODATA値のピクセルは数えられず、ピクセルの他の値は出力され、ピクセルバンド値は最も近い整数に丸められます。
- TopoElementArray_Agg - Availability: 2.0.0 element_idとタイプの配列 (topoelements)からなるtopoelementarrayを返します。
- TopoGeo_AddLineString - Availability: 2.0.0 許容差を使って既存のトポロジにラインストリングを追加し、可能ならエッジ/フェイスを分割します。
- TopoGeo_AddPoint - Availability: 2.0.0 許容差を使って既存のトポロジにポイントを追加し、可能ならエッジを分割します。
- TopoGeo_AddPolygon - Availability: 2.0.0 許容差を使って既存のトポロジにポリゴンを追加し、可能ならエッジ/フェイスを分割します。
- TopologySummary - Availability: 2.0.0 トポロジ名を取り、トポロジ内のオブジェクトの型に関する概要の全体を提供します。
- Topology_Load_Tiger - Availability: 2.0.0 Tigerデータの定義領域をPostGISトポロジにロードして、Tigerデータをトポロジの空間参照系に投影変換し、トポロジの許容精度にスナップします。
- toTopoGeom - Availability: 2.0 単純なジオメトリからTopoGeometryを生成します。
- ~ - Availability: 2.0.0 AのバウンディングボックスがBのバウンディングボックスを含む場合にTRUEを返します。倍精度浮動小数点数のバウンディングボックスを使います。
- ~= - Availability: 2.0.0 AのバウンディングボックスがBのバウンディングボックスと同じ場合にTRUEを返します。
PostGIS 2.0で機能強化された関数
- AddGeometryColumn - Enhanced: 2.0.0 use_typmod引数が導入されました。デフォルトでは制約を基にしたものでなくtypmodジオメトリカラムが生成されます。
- Box2D - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- Box3D - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- Geocode - Enhanced: 2.0.0 Tiger 2010構造のデータに対応しました。実行速度とジオコーディング精度を改善し、ストリート住所の位置を中心線から側線に移動するための改訂を行いました。また、良い結果の数を指定したり、最も良い結果だけを返すようにするのに使う新しいパラメータmax_resultsを導入しました。
- GeometryType - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- Populate_Geometry_Columns - Enhanced: 2.0.0 use_typmod任意引数が導入されました。カラムが型修飾子で生成されるか制約チェックで作られるかの制御ができます。
- ST_Intersection - Enhanced: 2.0.0 - ラスタ空間のインタセクションが導入されました。2.0.0より前の版では、ベクタ空間でのインタセクションの計算のみに対応していました。
- ST_Intersects - Enhanced: 2.0.0 ラスタ/ラスタのインタセクト対応が導入されました。
- ST_Value - Enhanced: 2.0.0 任意引数exclude_nodata_valueが追加されました。
- ST_3DExtent - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Accum - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Affine - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Area - Enhanced: 2.0.0 - 2次元多面体サーフェス対応が導入されました。
- ST_AsBinary - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_AsBinary - Enhanced: 2.0.0 高次元が導入されました。
- ST_AsBinary - Enhanced: 2.0.0 ジオグラフィでのエンディアン指定が導入されました。
- ST_AsEWKB - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_AsEWKT - Enhanced: 2.0.0 ジオグラフィ対応、多面体サーフェス対応、三角形対応、TIN対応が導入されました。
- ST_AsGML - Enhanced: 2.0.0 プレフィクスが導入されました。 GML 3用であるoptionsの4は、曲線のかわりにラインストリングを使えるようにするためのものです。GML 3の多面体サーフェスとTINが導入されました。optionsの32はボックスを出力するために導入されました。
- ST_AsKML - Enhanced: 2.0.0 - プレフィクス名前空間を追加しました。デフォルトではプリフィクス無しです。
- ST_Azimuth - Enhanced: 2.0.0 ジオグラフィ対応が導入されました。
- ST_ChangeEdgeGeom - Enhanced: 2.0.0版で、トポロジ整合性の強制を追加しました。
- ST_Dimension - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。空ジオメトリを与えた場合に例外を投げなくなりました。
- ST_Dump - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_DumpPoints - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Expand - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Extent - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Force2D - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_ForceRHR - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_Force3D - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_Force3DZ - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_ForceCollection - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_GMLToSQL - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。
- ST_GMLToSQL - Enhanced: 2.0.0 SRID任意引数が追加されました。
- ST_GeomFromEWKB - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。
- ST_GeomFromEWKT - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。
- ST_GeomFromGML - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。
- ST_GeomFromGML - Enhanced: 2.0.0 SRID任意引数が追加されました。
- ST_GeometryN - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_GeometryType - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_IsClosed - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_MakeEnvelope - Enhanced: 2.0 SRID指定なしでエンベロープを指定できるようになりました。
- ST_MakeValid - Enhanced: 2.0.1 速度向上しました。GEOS 3.3.4が必要です。
- ST_NPoints - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ST_NumGeometries - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Relate - Enhanced: 2.0.0 - 境界ノード規則が追加されました (GEOS 3.0以上が必要です)。
- ST_Rotate - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Rotate - Enhanced: 2.0.0 回転の原点を指定するパラメタを追加しました。
- ST_RotateX - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_RotateY - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_RotateZ - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_Scale - Enhanced: 2.0.0 多面体サーフェス対応、三角対応、TIN対応が導入されました。
- ST_ShiftLongitude - Enhanced: 2.0.0 多面体サーフェス対応とTIN対応が導入されました。
- ST_Summary - Enhanced: 2.0.0でジオグラフィ対応が追加されました。
- ST_Transform - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
- ValidateTopology - Enhanced: 2.0.0では、より効果的なエッジ交差検出が可能になり、以前の版で残っていた偽陽性を解決しています。
- && - Enhanced: 2.0.0 多面体サーフェス対応が導入されました。
14.12.8. PostGIS 2.0で変更された関数
次に示す関数は、PostGIS2.0で変更されたもので、アプリケーションの変更が必要になる場合があります。
![[注記]](images/note.png) | |
---|
ほとんどの非推奨関数は削除されました。これらは、1.2から文書には出ていないか、絶対に文書化されない内部関数です。文書に無い関数を使用している場合には、非推奨関数になっているか、非推奨になろうとしているか、内部関数の可能性があります。これらは避けるべきです。非推奨関数を使っているアプリケーションやツールの対応に関する詳細情報については問: 3.2をご覧下さい。 |
![[注記]](images/note.png) | |
---|
ジオメトリのバウンディングボックスはfloat4から倍精度浮動小数点数 (float8)に変わりました。バウンディングボックス演算子を使う場合とバウンディングボックスからジオメトリへのキャストに影響が出ます。たとえば、ST_SetSRID(abbox)は、しばしば、以前の版ではビューポートクエリの答をわずかに変更する可能性がありますが、PostGIS 2.0以上では、それとは異なる、より精度の良い答えを返します。 |
![[注記]](images/note.png) | |
---|
hasnodata引数は、同じ意味ですがより目的がはっきり分かるexclude_nodata_valueに置き換えられました。 |
- AddGeometryColumn - Changed: 2.0.0 geometry_columnsがシステムカタログを読むビューになったため、geometry_columnsを更新しないようになりました。デフォルトでは制約を生成せず、PostgreSQLの型修飾子を使います。この関数によるWGS 84のPOINTカラムの構築とALTER TABLE some_table ADD COLUMN geom geometry(Point,4326);とは等価です。
- AddGeometryColumn - Changed: 2.0.0 制約を使う必要がある場合には、use_typmodをFALSEにします。
- AddGeometryColumn - Changed: 2.0.0 ビューについては、geometry_columnsへの手動登録はできなくなりました。しかし、typmodテーブルジオメトリに対して構築されていて、かつラッパ関数が無いビューは、親テーブルカラムのtypmodの挙動を継承するので、正しく登録されます。他のジオメトリを出力するジオメトリ関数を使うビューについては、ビューのジオメトリカラムが正しく登録されるようにするため、typmodジオメトリへのキャストが必要です。を参照して下さい。
- DropGeometryColumn - Changed: 2.0.0 この関数は後方互換のためのものです。geometry_columnsは現在はシステムカタログに対するビューですので、他のテーブルのカラムと同じようにALTER TABLEを使った削除が可能です。
- DropGeometryTable - Changed: 2.0.0で この関数は後方互換のためのものです。geometry_columnsは現在はシステムカタログに対するビューですので、他のテーブルのカラムと同じようにDROP TABLEを使った削除が可能です。
- Populate_Geometry_Columns - Changed: 2.0.0 デフォルトでは、ジオメトリタイプの制限について、制約を確認する代わりに型修飾子を使います。新しいuse_typmodをFALSEに設定して使うことで、制約確認を使用することができます。
- Box3D - Changed: 2.0.0 以前の版では、box3dでなくbox2dを使っていました。box2dは非推奨型となり、box3dに変更しました。
- ST_GDALDrivers - Changed: 2.0.6, 2.1.3 - GUC (訳注: Grand Unified Configurationの略で、動的に変更できるPostgreSQLパラメータ)または環境変数gdal_enabled_driversが設定されていないデフォルトではドライバが全て無効になりました。
- ST_ScaleX - Changed: 2.0.0. WKTRaster版ではST_PixelSizeXと呼ばれていました。
- ST_ScaleY - Changed: 2.0.0. WKTRaster版ではST_PixelSizeYと呼ばれていました。
- ST_SetScale - Changed: 2.0.0 WKTRaster版では、ST_SetPixelSizeと呼ばれていました。2.0.0で変更されました。
- ST_3DExtent - Changed: 2.0.0 以前の版ではST_Extent3Dと呼ばれていました。
- ST_3DLength - Changed: 2.0.0 以前の版ではST_Length3Dと呼ばれていました。
- ST_3DMakeBox - Changed: 2.0.0以前の版ではST_MakeBox3Dと呼ばれていました。
- ST_3DPerimeter - Changed: 2.0.0 以前の版ではST_Perimeter3Dと呼ばれていました。
- ST_AsBinary - Changed: 2.0.0 この関数への入力は不明な型にすることができなくなり、必ずジオメトリでなければなりません。ST_AsBinary('POINT(1 2)')といった構築ではもはや妥当ではなく、n st_asbinary(unknown) is not unique errorが得られます。このようなコードはST_AsBinary('POINT(1 2)'::geometry);に変更する必要があります。これが不可能な場合にはlegacy.sqlをインストールして下さい。
- ST_AsGML - Changed: 2.0.0 デフォルトの名前付き引数を使います。
- ST_AsGeoJSON - Changed: 2.0.0 デフォルト引数と名前付き引数に対応しました。
- ST_AsKML - Changed: 2.0.0 - デフォルト引数と名前付き引数に対応しました。
- ST_AsSVG - Changed: 2.0.0 - デフォルト引数と名前付き引数に対応しました。
- ST_EndPoint - Changed: 2.0.0では単一ジオメトリのMULTILINESTRINGで動作しなくなりました。単一のラインストリングからなるMULTILINESTRINGについては幸運にも動いていて、最初のポイントを返していました。2.0.0では他のMULTILINESTRINGと同様にNULLを返すようになりました。古い挙動は記載されていませんでしたが、LINESTRINGとして格納されているデータを持っていると思われる人々は2.0でNULLが返って来ることを経験することでしょう。
- ST_GeomFromText - Changed: 2.0.0 前の版ではST_GeomFromText('GEOMETRYCOLLECTION(EMPTY)')が許されていました。SQL/MM標準への適合のためPostGIS 2.0.0では不正とされます。今はST_GeomFromText('GEOMETRYCOLLECTION EMPTY')となります。
- ST_GeometryN - Changed: 2.0.0 以前の版では非マルチのジオメトリではNULLが返りました。ST_GeometryN(..,1)の場合にはジオメトリを返すよう変更されました。
- ST_IsEmpty - Changed: 2.0.0 以前の版のPostGISではST_GeomFromText('GEOMETRYCOLLECTION(EMPTY)')を許しました。PostGIS 2.0.0では、SQL/MM標準により準拠させるため、これは不正となります。
- ST_Length - Changed: 2.0.0 大幅な変更 -- 以前の版ではジオグラフィのPOLYGONやMULTIPOLYGONへの適用によってPOLYGONやMULTIPOLYGONの周囲長を返しました。2.0.0版ではジオメトリの挙動に従うため0を返すように変更しました。ポリゴンの周囲長を求める場合は、ST_Perimeterを使います。
- ST_LocateAlong - Changed: 2.0.0 以前の版ではST_Locate_Along_Measureと呼ばれていましたが、古い名前は非推奨となり、将来的には削除しますが現時点では有効です。
- ST_LocateBetween - Changed: 2.0.0 以前の版でST_Locate_Between_Measuresと呼ばれていましたが、古い名前は非推奨となり、将来的には削除しますが現時点では後方互換のため有効になっています。
- ST_ModEdgeSplit - Changed: 2.0 - 以前の版では名前を間違えてST_ModEdgesSplitになっていました。
- ST_NumGeometries - Changed: 2.0.0 前の版では、ジオメトリがコレクション/マルチ系でない場合にはNULLを返しました。2.0.0以上では、POLYGON, LINESTRING, POINTといった単一ジオメトリについては1を返します。
- ST_NumInteriorRings - Changed: 2.0.0 - 以前の版では、MULTIPOLYGONを渡して最初のPOLYGONの内環の数を返すことができました。
- ST_PointN - Changed: 2.0.0 単一ジオメトリのMULTILINESTRINGで動作しなくなりました。単一のラインストリングからなるMULTILINESTRINGについては幸運にも動いていて、最初のポイントを返していました。2.0.0では他のMULTILINESTRINGと同様にNULLを返すようになりました。
- ST_StartPoint - Changed: 2.0.0では単一ジオメトリのMULTILINESTRINGで動作しなくなりました。単一のラインストリングからなるMULTILINESTRINGについては幸運にも動いていて、最初のポイントを返していました。2.0.0では他のMULTILINESTRINGと同様にNULLを返すようになりました。古い挙動は記載されていませんでしたが、LINESTRINGとして格納されているデータを持っていると思われる人々は2.0でNULLが返って来ることを経験することでしょう。
14.12.9. PostGIS 1.5で新規作成/機能強化/変更された関数
次に示す関数は、新規作成または機能強化されたPostGIS関数です。
- PostGIS_LibXML_Version - Availability: 1.5 LibXML2ライブラリのバージョン番号を返します。
- ST_AddMeasure - Availability: 1.5.0 始点と終点の間を線型補完した、M値を持つ派生ジオメトリを返します。
- ST_AsBinary - Availability: 1.5.0 ジオグラフィが導入されました。 ジオメトリ/ジオグラフィのSRIDメタデータのないWell-Known Binary (WKB)表現を返します
- ST_AsGML - Availability: 1.5.0 ジオグラフィが導入されました。 GML第2版または第3版としてジオメトリを返します。
- ST_AsGeoJSON - Availability: 1.5.0 ジオグラフィが導入されました。 GeoJSON要素としてジオメトリを返します。
- ST_AsText - Availability: 1.5 - ジオグラフィ対応が導入されました。 ジオメトリ/ジオグラフィのSRIDメタデータのないWell-Known Text (WKT)表現を返します。
- ST_Buffer - Availability: 1.5 - ST_Bufferが異なる終端と継ぎ目の型に対応するよう強化されました。たとえば、道路ラインストリングを、丸の代わりに平坦や四角形の終端を持つ道路ポリゴンに変換するのに使います。ジオグラフィ用の薄いラッパが追加されました。最新のジオメトリ機能の利点を得るにはGEOS 3.2以上が必要です。 (T) このジオメトリからの距離が指定された距離以下となる点全てを表現するジオメトリを返します。
- ST_ClosestPoint - Availability: 1.5.0 g2に最も接近するg1上の2次元のポイントを返します。これは最短線の最初のポイントです。
- ST_CollectionExtract - Availability: 1.5.0 (マルチ)ジオメトリを与えると、指定したタイプの要素でのみ構成される (マルチ)ジオメトリを返します。
- ST_Covers - Availability: 1.5 - ジオグラフィ対応が導入されました。 ジオメトリBにジオメトリAの外となるポイントが無い場合には、1 (TRUE)を返します。
- ST_DFullyWithin - Availability: 1.5.0 全てのジオメトリが指定したジオメトリから指定した距離内にある場合にTRUEを返します。
- ST_DWithin - Availability: 1.5.0 ジオグラフィが導入されました。 ジオメトリが指定したジオメトリから指定した距離内にある場合にTRUEを返します。ジオメトリについては、距離は空間参照系で定義されている単位になります。ジオグラフィについては、メートル単位で、デフォルトではuse_spheroid=true (回転楕円体を使った計算)となり、速いチェックをするにはuse_spheroid=falseとして球面を使って計算します。
- ST_Distance - Availability: 1.5.0 1.5でジオグラフィ対応が導入されました。大きいジオメトリや頂点の多いジオメトリについての速度が改善しました。 ジオメトリ型については、二つのジオメトリの、2次元の最小デカルト距離 (空間参照系に基づきます)を、投影法の単位で返します。ジオグラフィ型については、デフォルトでは、二つのジオメトリ間の測地距離をメートル単位で返します。
- ST_DistanceSphere - Availability: 1.5 - ポイント以外のジオメトリが導入されました。以前の版ではポイントでのみ動作しました。 二つの経度緯度ジオメトリの間の最短距離をメートル単位で返します。SRIDで定義された回転楕円体に由来する半径となる球面を使います。より高速ですが、精度が悪くなります。PostGISの1.5より前の版ではポイント間の計測のみ実装していました。
- ST_DistanceSpheroid - Availability: 1.5 - ポイント以外のジオメトリが導入されました。以前の版ではポイントでのみ動作しました。 指定した回転楕円体による、二つの経度緯度ジオメトリ間の最小距離を返します。PostGIS 1.5より前ではポイント間の計測のみ対応していました。
- ST_DumpPoints - Availability: 1.5.0 ジオメトリを作る全ての点のgometry_dump(geom,path)行の集合を返します。
- ST_Envelope - Availability: 1.5.0 挙動が変更され出力がfloat4からfloat8になりました。 ジオメトリの浮動小数点数 (float8)バウンディングボックスを表現するジオメトリを返します。
- ST_GMLToSQL - Availability: 1.5 libxml2 1.6+が必要です。 GML表現から指定したST_Geometry値を返します。これはST_GeomFromGMLの別名です。
- ST_GeomFromGML - Availability: 1.5 libxml2 1.6+が必要です。 GML表現からPostGISジオメトリオブジェクトを出力します。
- ST_GeomFromKML - Availability: 1.5 libxml2 2.6以上が必要です。 ジオメトリのKML表現の入力をとり、PostGISジオメトリオブジェクトを出力します。
- ~= - Availability: 1.5.0 挙動が変更されました AのバウンディングボックスがBのバウンディングボックスと同じ場合にTRUEを返します。
- ST_HausdorffDistance - Availability: 1.5.0 - GEOS 3.2.0以上が必要です。 二つのジオメトリ間のハウスドルフ距離を返します。基本的にジオメトリが似ているかどうかを計測するものです。単位はジオメトリの空間参照系の単位です。
- ST_Intersection - Availability: 1.5 ジオグラフィ型が導入されました。 (T) geomAとgeomBの共有する部分を表現するジオメトリを返します。
- ST_Intersects - Availability: 1.5 ジオグラフィ対応が導入されました。 ジオメトリ/ジオグラフィが「2次元空間で空間的にインタセクトする」 (空間に共有部分がある)場合にTRUEを返します。そうでない (非接続)場合はFALSEを返します。ジオグラフィについては、許容量は0.00001メートルです (近い点はインタセクトと考えられてしまいます)。
- ST_Length - Availability: 1.5.0 ジオグラフィt対応が導入されました。 ジオメトリがLINESTRINGまたはMULTILINESTRINGの場合には、それらの2次元長を返します。ジオメトリでは、単位は空間参照系の単位です。ジオグラフィでは、メートル単位です (回転楕円体がデフォルトです)。
- ST_LongestLine - Availability: 1.5.0 二つのジオメトリの2次元長が最長となるラインを返します。見つかったラインが複数ある場合は、最初のもののみ返します。返されるラインは常にg1側を始点、g2側を終点とします。この関数が返すラインの長さは、常に始点をg1に終点をg2にそれぞれ指定した場合のST_MaxDistanceが返す値と同じになります。
- ST_MakeEnvelope - Availability: 1.5 与えられた最小値と最大値から長方形ポリゴンを生成します。入力値はSRIDで指定された空間参照系でなければなりません。
- ST_MaxDistance - Availability: 1.5.0 二つのジオメトリ間の2次元距離の最大値を、投影法の単位で返します。
- ST_ShortestLine - Availability: 1.5.0 二つのジオメトリの2次元長が最短となるラインを返します。
- && - Availability: 1.5.0 ジオグラフィ対応が導入されました。 Aの2次元バウンディングボックスがBの2次元バウンディングボックスとインタセクトする場合にTRUEを返します。
14.12.10. PostGIS 1.4で新規作成/機能強化/変更された関数
次に示す関数は、新規作成または機能強化されたPostGIS関数です。
- Populate_Geometry_Columns - ジオメトリカラムが型修飾子で定義されるか、適切な制約を持つことを確実にします。ジオメトリカラムがgeometry_columnsに正しく登録されることを確実にします。デフォルトでは、型修飾子によらないジオメトリカラムを型修飾子によるジオメトリカラムに変換します。以前の挙動にするにはuse_typmod=falseとします。 Availability: 1.4.0
- ST_AsSVG - ジオメトリまたはジオグラフィで与えられたSVGパスデータによるジオメトリを返します。
Availability: 1.2.2. Availability: 1.4.0 PostGIS 1.4.0でhttp://www.w3.org/TR/SVG/paths.html#PathDataBNFに従うため、絶対パスにLコマンドが入りました。
- ST_Collect - 他のジオメトリのコレクションから、指定したST_Geometry値を返します。 Availability: 1.4.0 - ST_Collect(geometry)が導入されました。ST_Collectがより多くのジオメトリをより早く扱えるよう強化されました。
- ST_ContainsProperly - BがAの内部にインタセクトするが境界 (または外部)にインタセクトしない場合に、TRUEを返します。Aは自身には、ContainsProperlyではありませんが、Containsです。 Availability: 1.4.0 - GEOS 3.1.0以上が必要です。
- ST_Extent - ジオメトリのバウンディングボックスを返す集約関数です。
Availability: 1.4.0
- ST_GeoHash - ジオメトリのGeoHash表現を返します。 Availability: 1.4.0
- ST_IsValidReason - ジオメトリが妥当か否かを示す文字列を返し、不正な場合は理由を返します。 Availability: 1.4 - GEOS 3.1.0以上が必要です
- ST_LineCrossingDirection - 与えられた二つのラインストリングに関するクロスの種類を-3から3の区間の数で返します。0の場合はクロスしていません Availability: 1.4
- ST_LocateBetweenElevations - 指定したZ値の範囲内にある要素からなる、派生ジオメトリ (コレクション)値を返します。3次元、4次元のLINESTRINGSとMULTILINESTRINGSのみに対応しています。 Availability: 1.4.0
- ST_MakeLine - ポイント、マルチポイント、ラインジオメトリからラインストリングを生成します。 Availability: 1.4.0 - ST_MakeLine(geomarray)が導入されました。ST_MakeLine集約関数はより多くのポイントをより早く扱うための強化が施されています。
- ST_MinimumBoundingCircle - ジオメトリを完全に含む最小の円ポリゴンを返します。デフォルトでは、4分の1円に対して48区分を使用します。 Availability: 1.4.0 - GEOSが必要です。
- ST_Union - ジオメトリの結合の点集合を表現するジオメトリを返します。 Availability: 1.4.0 - ST_Unionが強化されました。ST_Union(geomarray)が導入され、また、PostgreSQL内での集計が速くなりました。GEOS 3.1.0以上を使用している場合は、ST_Unionは、http://blog.cleverelephant.ca/2009/01/must-faster-unions-in-postgis-14.htmlに記述がある、Cascaded Unionアルゴリズムを使います。
14.12.11. PostGIS 1.3で新規作成された関数
次に示す関数は、新規作成されたPostGIS関数です。
- ST_AsGML - GML第2版または第3版としてジオメトリを返します。 Availability: 1.3.2
- ST_AsGeoJSON - GeoJSON要素としてジオメトリを返します。 Availability: 1.3.4
- ST_SimplifyPreserveTopology - 与えられたジオメトリを「簡略化」したものを返します。Douglas-Peukerアルゴリズムを使用します。不正な派生ジオメトリ (特にポリゴン)の生成を回避します。 Availability: 1.3.3