タグ付けされた質問 「postgis」

PostGISは、PostgreSQLオブジェクトリレーショナルデータベースの拡張機能で、地理オブジェクトのサポートを追加します。

2
2つのテーブル間のPostGISユニオン、属性を保持
私は、各シェイプの上位レベルと下位レベルの両方の名前を含む1つのPostGISテーブルを生成するような方法で、米国州レベルの上位レベルと下位レベルの政府境界を結合しようとしています。 以下の私の例でUは、はデータセットであり、行UAとを含む列がありUBます。L別のデータセットであるとありLA、LBとLC。形状を結合すると、同じ形状になりますLが、結合されていない新しいデータセットには両方のデータ列があります。 編集:上記の私のサンプル画像はかなり下手です。これまでの回答は、ジオメトリが使用可能であると想定したデータのクエリに関連しています。これは重要ですが、私の質問のより混乱する部分をスキップしています。より良い例: 黄色の形状はからU、オレンジの形状はからLです。それらは重なり合っていますが、ポリゴンの一部が別の形状内に完全に含まれていないことに注意してください(私の例ではLB、とLCは完全に内にありますUB)。 私が尋ねようとしたのは、2つのレイヤーを正しくチョッピングして、結果のデータセットに重複がないようにすることです。たとえば、このメーリングリストの投稿をご覧ください。
8 postgis  union 

3
PostGISにタイムスタンプ付きのGPSトラックを保存する
データベースにタイムスタンプ付きの一連のGPSポイント(さまざまな車両のトレース)を保存する必要があります。 PostGISテーブルにそれらを格納するために選択する2つのアプローチのいずれかを考えています。 2.)ラインストリングまたはマルチラインストリングを4番目のM座標とともに使用します。これには、トラック上のポイントの時間のUNIXタイムスタンプが含まれます。これは、個別のトラックごとに1つの行を意味します。

1
緯度/経度の位置がポリゴン内にあるかどうかを確認するにはどうすればよいですか?
住所の緯度/経度情報をPostGISテーブルに保存するシステムに取り組んでいます。Lat / Longをジオメトリデータタイプに格納するには、ST_GeometryFromText関数を使用しています。 たとえば、次の関数呼び出しは、指定されたLong / Lat位置に対するジオメトリ値を取得します。 myPointGeo = ST_GeometryFromText('POINT(40.758871 -73.985114)'); 同様に、ポリゴンを次のように幾何学的表現に変換します。 myPolygonGeo = ST_GeometryFromText('POLYGON ((40.7566484549725 -73.9878561496734, 40.7556894646734 -73.9853026866913, 40.7545841705587 -73.9860537052154, 40.7548036054111 -73.9881458282471, 40.7559820394514 -73.9887895584106, 40.7566484549725 -73.9878561496734 ))') 上記の緯度/経度の位置がこのポリゴン内にあるかどうかを確認したいと思います。これには、ST_Within関数を使用しています。しかし、 'myPointGeo'は実際にはポリゴン内に存在しますが、ST_Withinはfalseを返します。私はこのようにST_Withinを使用しています: St_Within(myPointGeo,myPolygonGeo) ここで何が悪いのですか?この目的のために他の関数を使用する必要がありますか?
8 postgis 

2
shp2pgsql Windowsバイナリはどこにありますか?
PostGIS全体をインストールせずに、Windows用の利用可能なshp2pgsqlバイナリはどこにありますか?特に、そのインポートツールのコマンドラインバージョンが必要です。 shp2pgsql.exeを使用するバッチスクリプトを同僚と共有したいのですが、shp2pgsql.exeを共有する方法がわかりません。私のpostgres / binフォルダーからそのファイルをコピーできますか?私は少なくともlibpg.dllが必要だと思います。他のファイル(libgdal-1.dll、libproj.dll)はどうですか?
8 postgis 


1
ESRIファイルジオデータベースからPostGISにデータをインポートするときのジオメトリエラー
次のコマンドを実行して、ESRI fgdbからpostgisにデータをインポートすると... ogr2ogr -f "PostgreSQL" -a_srs "EPSG:28355" -t_srs "EPSG:3857" PG:"dbname=tp_test user=postgres port=54321 password=xxxxxxx host=localhost" -overwrite P:\2012\183_TownPlanning_Symbology\Working\QueryLayer\TP_Query_Final_28355.gdb ...私は...! 警告1:OrganizePolygons()が予期しないジオメトリを受け取りました。内部リングを持つポリゴン、または4ポイント未満のポリゴン、または非ポリゴンジオメトリのいずれか。引数をコレクションとして返します。警告1:ポリゴンのジオメトリはシンプルジオメトリに変換できません。すべてのポリゴンはマルチポリゴンに含まれます。 ESRIでジオメトリを確認したところ、エラーは報告されていません。これで問題が解決するかどうかを確認するために、マルチパートからシングルパートを実行していますが、これにより、アークマップ10.1がクラッシュし、ディゾルブが発生します。問題なくソートが実行され、データセットを開くことができます。 以前にデータセットを正常にインポートしましたが、ESRI Diceツールを実行して大きなポリゴンを15,000以下の頂点に分割し、処理を高速化する必要がありました。 私はpostgisが初めてです。 新しいgdbの問題を修正する方法、またはpostgis自体でポリゴンを分割する方法はありますか?

2
オンライン戦略的ウォーゲームのどのジオスタックですか?
私は数週間ぐらついていますが、プロジェクトをどこから始めればいいのか、また利用可能なジオスタックのどの部分が私のニーズに必須であるのかを理解するのにいくつかの困難があります。 私は強力なJavaのバックグラウンドがあり、Pythonにいくらか興味があり、いくつかの新しいテクノロジーを学ぶことに完全にオープンです。 趣味として、私の仕事と密接に関連しているため、インタラクティブなマップに基づいてWeb MMO戦略的ウォーゲームを開発する予定です(基本的には戦術的な状況を表示し、ユニットに命令を出すため)。 これが私が考えていたものです: 地図とレイヤーを提供するジオサーバー。 地理データを格納するためのPostGIS。 ブラウザに表示するGeoExt JavaアプリケーションサーバーとしてのApache Click(戦闘解決、ユニット管理) 私はなんとかGeoServerをデプロイしました(tomcatでのウォー、簡単は難しい)。PostGreSQLをインストールしました。GeoExtに関するチュートリアルをいくつか実行しました。Javascriptを少し体験する必要があります。Apache Clickを使用してページとフォームを提供しました。 これが私が考えていた流れです: GeoServerは、静的オブジェクト(都市、勝利ポイント、テリトリーなど)のPostGISデータから構築されたマップの背景とレイヤーを提供します Apache Clickは、クライアントブラウザーでHTML + GeoExtページを生成します。 Apache Clickは、ユーザーのアクションに応答してCRUDコマンドをPostGISに送信します。 [何か] PostGISを定期的に更新します(移動、戦闘解決、ユニット特性管理...) Apache Clickは動的にKMLファイルを生成し、アイコン、ゾーン(範囲、検出...)でユニットを表示するためにブラウザー(KML NetworkLink?)をライブ更新します... そして今、私の小さな壁に欠けているレンガ: 「海/陸」レイヤーを実装するにはどうすればよいですか。たとえば、陸を通過する船の動きを無効にするにはどうすればよいですか。GeoServerレイヤー?PostGISで定義されたゾーン? 次のフローは、ユーザーアクション後にマップを更新するのに十分な反応がありますか:HTML / GeoExtイベント-> Apacheクリックプロセス-> PostGIS更新-> GeoServerレイヤー更新-> HTML / GeoExt表示 主なポイントは:計算と更新に使用したい場合、データはどこにありますか?GeoServer静的レイヤーまたはPostGISテーブル?

2
PostGIS断続的なINDEXパフォーマンス
約5500万のデータポイント(ポイントはSRID 4326のジオメトリ)を含むテーブルがあり、クエリのために、これを大きなポリゴンからさまざまな範囲のさまざまな( 2000 km四方)からかなり小さい(小さいのは約100 km四方)。 ユーザーが選択した最初のクエリは、最初の5500万ポイントを、ユーザーが選択した日付範囲などに応じて約30万ポイントに絞り込みます。次に、結合が行われ、クエリが完了すると、使用するために選択したエリアセットに応じて、通常は最大150,000に絞り込まれます。 私が抱えている問題は、クエリがときどき停止するだけで、予想される〜25秒ではなく、最大〜18分かかる場合があることです。この時点で、通常、VACUUM ANALYZEを実行し、いくつかのクエリを実行してから、再び動作を開始する必要があります。この時点では、データまたはエリアテーブルのデータは追加、更新、または削除されていません。 私は考えることができるすべてのものをいじってみましたが、これはまだそれも不変で起こっているようです。data.point列とarea.polygon列の両方にGIST INDEXESがあります。 data.point列からINDEXを削除すると、状況が少し安定したように見えましたが、通常は35秒程度遅くなっています。しかし、INDEXを削除することは、妨げにならないようにするのに役立たないので、非常に悪い選択のようです。 PostGIS 1.5でPostgreSQL 9.1.4を使用しています これが私が実行しているクエリです select * FROM data, area WHERE st_intersects (data.point, area.polygon) AND (readingdatetime BETWEEN '1948-01-01' AND '2012-11-19') AND datasetid IN(3) AND "polysetID" = 1 AND area.id IN(28,29,30,31,32,33,25,26,27,18,19,20,21,12,13,14,15,16,17,34,35,1,2,3,4,5,6,22,23,24,7,8,9,10,11) 説明する Nested Loop (cost=312.28..336.59 rows=5 width=2246) (actual time=1445.973..11557.824 rows=12723 loops=1) …

1
SQL Server 2012とPostGIS UnionAggregateの速度の違い
ユニオン集計関数を使用すると、PostGISとSQL Server 2012の速度に大きな違いがあるようです。 SELECT geometry::UnionAggregate(the_geom) FROM loc GROUP BY LocalityCo 対 SELECT ST_Multi(ST_Union(the_geom)) FROM dummydata.loc GROUP BY "LocalityCo" SQL Server 2012では1秒未満ですが、PostGISでは約25秒です。 PostGISバージョンは次のとおりです。 1.5 USE_GEOS=1 USE_PROJ=1 USE_STATS=1 PostGISクエリを高速化するために何かできることはありますか? 注:どちらにも空間インデックスがあります。
8 postgis 

3
PostGISデータベース間でデータを転送するにはどうすればよいですか?
古いPostGISデータベース(バージョン "1.1.6")にかなりのGISデータがあり、それを別のPostGISデータベース( "POSTGIS =" 1.5.3 ")に転送する必要があります。 バックアップを作成して新しいデータベースに復元してみましたが、数百のエラーが発生します。 データを転送する正しい方法は何ですか?


1
PostGIS-GPXパス上のポイント間の累進距離を計算します
PostGIS-PostgreSQLのみを使用して標高プロファイルを作成しようとしています。GPXデータをPostGisデータベースにインポートしました。これで、トラックのGPS座標とトラックのすべてのGPSポイントのタイムスタンプを含むテーブルができました。次に、1行に2つ目のテーブルを作成します。 トラックID 始点からの増分距離を表すフロートの配列 開始点からの増分時間を表す浮動小数点数の配列 単一のSQLストアドプロシージャでそれを行うことは可能ですか? おかげで、 アンドレア

1
PostGISクエリとQGISフィルター
約300万の形状を持つPostGISデータセットがあります。一度に表示する必要がある図形は約1,500個だけですが、表示する必要がある図形は、別のデータセットで選択されているフィーチャによって異なります。 私の質問は、PostGIS内で大規模なデータセットをフィルタリングしてからQGISに提供するのと、データセット全体をQGISにロードしてから組み込みのレイヤーフィルタリングを使用することの速度の違いは何ですか?PostGIS 2とQGIS 1.8を実行しています。 PostGISの方が高速だと思いますが、どのくらい高速ですか?あるソリューションのコーディングに他のソリューションよりも時間をかける前に、セカンドオピニオンが欲しい ありがとう!

2
PostGISデータディレクトリがある既存のハードドライブを新しいコンピューターに移動する
PostGISがインストールされている古いコンピュータを置き換える新しいコンピュータを持っています。 古いコンピューターには、PostGISデータディレクトリが格納されている2番目のハードドライブがあります。このドライブを新しいコンピューターに移動して、データストレージに引き続き使用したいと考えています。 2台目のハードドライブを新しいマシンにインストールできますか?PostGISをインストールするときに、このハードドライブのデータディレクトリをポイントすると、すべてが機能しますか? または、データベースをバックアップして復元する必要がありますか? 古いマシンと新しいマシンのPostGISは同じバージョン(PostgreSQL 9.1では2.0)で、オペレーティングシステムはWindows XP(32ビット)とWindows 7(64ビット)です。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.