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

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

3
PostGISのジオメトリSRIDの問題
PostGISで自分のテーブルを作成しました id_borne serial NOT NULL, num_borne character varying, shape_borne geometry を使用してテーブルのSRIDを正常に変更しました select UpdateGeometrySRID('public', 'borne', 'shape_borne', 26191) ; 以前のSRIDは0でした。 問題は、テーブルborneに新しい要素を追加しようとすると、次のメッセージエラーが発生することです。 geometry srid (0) does not match column srid (26191) それが私の問題です!SRIDは更新されていますが、新しいポイントを追加しようとすると、このメッセージが表示されます。

2
GeojsonをWKTに変換する効率的な方法はありますか?
ST_GeomFromText()を使用してベクターデータをPostGISに読み込みたいのですが。ただし、GeojsonタイプからWKTに変換する方法がわかりません。 注意:OGR2OGRを使用してgeojsonを直接アップロードできることはわかっていますが、変換する方法があるかどうかを確認したいだけです。ありがとう。
10 postgis  geojson  wkt 

1
PostGISを使用してポイントからラインを作成しますか?
多数の車両の位置データを含むPostGISテーブルがあり、これらのポイントからラインを作成したいと考えています。 データは車両IDで選択し、タイムスタンプで並べ替えることができますが、結果から行を作成する方法は? 基本的に必要なのは、ポイント1からポイント2までの1つのラインセグメントで、ラインをファイナライズしてから、ポイント2からポイント3までです。 後者は、ある地点から次の地点までの車両の走行方向と速度を計算するために必要です。

3
OpenLayersをPostGISデータに接続する方法は?
OpenLayersでKML、GeoJSONなどのベクターファイルを読み込む方法をOpenLayersで読みました。しかし、どうすればPostGISデータに接続できますか。そうでない場合、WebServicesを使用して直接データを配置する代わりに、なぜPostGISにデータをアップロードする必要があるのですか。何か不足していますか? そして、特徴をクリックして属性を確認できるように、このベクターデータをロードします。今後、クエリを有効にしたいので、PostGISが必要です。PostGISのようなデータベースを維持することによってのみ可能だと思います。しかし、OpenLayersの使い方は? OpenLayers Beginner's Guideを読みましたが、どこにも言及されていません。助けてください!!

2
PostGISで部分3Dフィーチャをどのように扱いますか?
部分的な3D情報を含む調査データの機能があります。 最も一般的な例は、道路を表す2D LineStringで、測量された特定のポイントの標高情報が含まれています。その他の例としては、屋根の形状-いくつかのキーポイントに建築計画からの標高が割り当てられているが、すべてではないMultiLineStringが含まれます。 PostGISを使用して、補間された情報を失ったり生成したりすることなく、可能な限りアクセス可能に保つために、この種の情報を格納するためにどのデータモデルを推奨しますか?
10 postgis  data  3d  model 

1
さまざまな投影法でPostGISラスターデータを管理するにはどうすればよいですか?
私は、サンプルの長方形の配列、つまりラスターイメージとして収集された考古学的地球物理学データを保存および管理する必要があります。 各ラスターは通常、20x20または30x30の浮動小数点サンプルで、通常1m間隔でサンプリングされます。 調査は、特定の場所にあるこれらの1つ以上の画像で構成されます。 2つの異なる調査が異なる国または異なる予測を使用する地域で行われる可能性がありますが、各調査は1つだけの予測を使用します。 これらは一緒に表示される可能性は低く、通常、各調査は単独で行われます。 データはカスタムのフロントエンドによってのみアクセスされるため、ユーザーがデータを直接制御することなどはありませんpsql。 各サンプルは収集されたとおりに保存する必要があるため、1つのサンプルが元の投影よりも多かれ少なかれカバーする可能性があり、分析を実行する必要があるため、Webメルカトルなどの一般的なCRSに再投影することはできません。データについて。 PostGIS Rasterデータベースにデータを保存するにはどうすればよいですか?私が思いついたオプションは次のとおりです。 SRID制約を無視し、すべてのデータを1つのテーブルに格納して、一貫した方法でデータを操作するためのフロントエンドコードを記述します。 すべてのデータを1つのテーブルに保存し、SRID制約をSRIDと調査IDの複合として書き換えます。 テーブルの継承により、新しいSRIDごとに新しいテーブルを作成します。 テーブルの継承により、調査ごとに新しいテーブルを作成します。 1と2はPostGISの自動化された優れた部分のいくつかを壊しますが、そうでなければフロントエンドコードに隠されます。しかし、クエリはおそらく少し長くかかります。 3と4は、テーブルの爆発で終わり、FK制約の管理などが困難になる可能性があります。 実際には、調査ごとのラスタの数は1〜100以上であり、調査の数は数百に達する可能性があります。しかし、明確な予測の数は非常に少ないままである可​​能性が高く、3が有利です。
10 postgis  raster 

3
静的マップの構築に最適な選択肢:PostGIS、SpatiaLite、Shapefile?
私は通常、静的な地形図を作成します。これはほとんどが印刷されます。OSMとラスターファイル(主に異なるDEM)をよく使用しています。私がマッピングしているエリアが20.000km²を超えることはめったにありません。QGIS、SAGA、GRASSなどの排他的なオープンソースソフトウェアを使用しています。 シェープファイルの問題は知っていますが、処理は簡単です。そして、私はpostgisやSpatiaLiteにはあまり詳しくありません。私はpostgisを試しましたが、それを処理するのに多くの問題がありましたが、SpatiaLiteの方が簡単に思えます。 どう思いますか:シェープファイルを使い続けるか、SpatiaLiteやpostgisなどのデータベースに切り替えますか?私の場合の長所と短所は何ですか?

5
旅行需要モデリングのためのオープンソースソリューションはありますか?
旅行需要のモデリングのためのオープンソースツールを探しています(たとえば、4ステップのUTMS)。できればGIS環境で。これはQgis、Grass、Postgisでうまく機能します。 私の質問は、特定のユースケースではなく、より多くの研究に関連しています。 最初の検索が空白になったので、確認を求めました。

2
「穴がシェルの外にある」の修正方法
QGISプラグイン「Geometry Updater」によってジオメトリが更新された、ポリゴンシェイプのデータセットを取得しました。現在、PostGISで「穴がシェルの外側にあります」というエラーメッセージが表示され、無効なジオメトリが表示されるという問題があります。しかし、QGISでジオメトリを観察すると、実際には2つの形状があります。1つはメインジオメトリで、もう1つは(おそらく)穴です。 この理由は、ジオメトリタイプがに設定されているためだと思いましたST_Polygon。しかし、それをに変更した後でもST_MultiPolygon、エラーはまだ残っています。誰かがこれを修正する方法を知っていますか?また、QGISで手動で行っても問題ありません。 編集: これは、写真の形状の元のWKTです(これをに変更する前ST_MultiPolygon): POLYGON((681328.211640639 5312556.84866055,681333.876018639 5312566.85338355,681344.126811639 5312584.17146655,681360.13777864 5312605.81168455,681368.571629639 5312620.16794654,681375.15817664 5312633.84801255,681380.74133464 5312647.74367554,681384.01769064 5312658.41482554,681392.01169764 5312694.63471254,681393.07199764 5312701.83700354,681389.16681464 5312705.85459254,681379.79126564 5312704.26135554,681393.93193764 5312715.39845154,681401.81727164 5312723.43382354,681398.09962564 5312710.95653254,681395.19739764 5312693.68448654 、681387.20535464 5312657.40285554,681383.87846764 5312644.38168654,681378.69327164 5312632.35257854,681367.00831364 5312610.47778954,681346.401239639 5312581.83289054,681336.365640639 531256412.76.12653.56.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.12653.561.5353.561.5353.561.5653.561.53531.561.561.531.5316.51.56.1.53531.561.561.531.53531.56.16.51.531.5314.51.64.1.965.1人1人1人1人3人1人1人1人1人1人1人1人4人1人4人1人4人1人4人1人2人1世3世1世1世6世。]52225764 5312565.30077054,681395.29993964 5312563.90629854,681410.98915364 5312545.67508754,681413.79585564 5312536.98783954,681415.77221864 5312530.93185454,681416.991529641 5312523.86320254,681406.38747164 5312515.12414654,681403.96790864 5312507.57002154,681395.94924164 5312514.30082354,681394.08765664 5312516.71419154,681390.91027864 5312518.71529654,681387.07111564 5312520.63375054,681381.90838164 5312522.38690354,681376.13571264 5312525.04785255,681366.362498639 5312530.79640254,681349.071127639 5312540.57236955,681332.287335639 5312550.05537054 、681321.992430639 5312555.23135255,681328.211640639 5312556.84866055)、(681306.938491638 5312528.24474655,681318.811081639 …

1
PostGISを使用して2点を与えられた最も近い線を見つけますか?
line_positions行タイプの列を含むテーブルtがあります。2つのポイントを考えて、十分に近い(10 km未満)と、避けたいポイント(最小20km)に近すぎない最も近いラインを見つけます。現在使用しています SELECT t.* FROM path t WHERE ST_DWithin(ST_GeographyFromText('Point(69.835 22.596)'), t.line_positions, 10000, FALSE) AND ST_DWithin(ST_GeographyFromText('Point(69.856 22.519)'), t.line_positions, 10000, false) AND NOT ST_DWithin(ST_GeographyFromText('Point(-79.804 9.141)'), t.line_positions, 20000, false) ORDER BY ST_Distance(ST_GeographyFromText('Point(69.835 22.576)'), t.line_positions, false) + ST_Distance(ST_GeographyFromText('Point(69.856 22.519)'), t.line_positions, false) ASC LIMIT 1 ix_path_line_positionsline_positions列に要旨インデックスがあります。 それは動作しますが、3秒から30秒の間で、tの100,000行だけで遅くなります。 分析は与える説明: Limit (cost=9.95..9.95 rows=1 width=1432) (actual time=21729.253..21729.254 rows=1 …

2
PostGISを使用して建物の陰影を生成する
私は現在、既存の建物の太陽ポテンシャル推定ツールに取り組んでいます。アイデアは、建物(=ポリゴン)の形状とその高さを使用して、特定の時間に結果の陰を作成することです。太陽のいくつかの位置についてのみテストを行います。グラス関数r.sun.maskについては知っていますが、私がやろうとしていることには圧倒されます。 とりあえず、太陽が南、空が18°のときだけ日陰を取得したいと思います。したがって、建物はその高さの約3倍の影を落とす必要があります。 私が取得しようとしているもの: しばらく探していましたが、これを行うためのツールがpostgisにありませんでした。バッファリングしてからポリゴンをカットすることを考えていましたが、機能させることができませんでした。ツールを知っているか、それを行う方法について何か考えがありますか?

1
QGISからのPostGIS認証プロセスを簡素化
QGISには、さまざまな(〜15)PostGISデータベースからのデータを含むプロジェクトがあり、次に示すように、接続ごとにログイン資格情報(認証ユーザー/パスワード)が保存されていません。 これで、別のユーザーがプロジェクトを開くとき、彼(または彼女)は使用する各データベースの資格情報を入力する必要があります。 私のユーザーが資格情報の入力を15回受け入れることは正当にできないと強く恐れています(ただし、数百人のユーザーがいる可能性のあるエンタープライズ環境では、受け入れが成功の鍵です)。 したがって、私には2つの質問が生じます。 グローバルプロジェクト変数にユーザー名応じて提案する方法があるuser_account_nameと QGISに、最初のdb接続用に入力された資格情報を他の接続にも使用するように指示する方法はありますか? 以下に提案されているように「資格情報を入力してください」ダイアログを変更することは大きな意味があるかどうかを見積もることはできませんが、これは可能ですか?

4
空間関数による行の制限
以下のクエリのパフォーマンスを改善しようとしています。クエリ(FROM句のサブクエリ、WHERE句のサブクエリ)をどのように記述しても、countery = 24の行が60行しかないにもかかわらず、高価なST_DWITHIN関数ですべての570K行を実行するように要求します。postgresにcounty = 24でフィルターをかけるようにするには、postgis funcを実行する前にどのようにすればよいですか?700msはあまり心配する必要はありませんが、このテーブルが1,000万回以上になると、パフォーマンスが心配になります。 また、p.idは主キー、p.zipcodeはfkインデックス、z.countyはfkインデックス、p.geomはGiSTインデックスです。 クエリ: EXPLAIN ANALYZE SELECT count(p.id) FROM point AS p LEFT JOIN zipcode AS z ON p.zipcode = z.zipcode WHERE z.county = 24 AND ST_DWithin( p.geom, ST_SetSRID(ST_Point(-121.479756008715,38.563236291512),4269), 16090.0, false ) 分析の説明: Aggregate (cost=250851.91..250851.92 rows=1 width=4) (actual time=724.007..724.007 rows=1 loops=1) -> Hash Join (cost=152.05..250851.34 rows=228 …

1
ST_BuildAreaとST_Polygonizeの違いは何ですか?
二つの機能ST_BuildAreaとST_Polygonizeの両方のテイクラインと生産ポリゴン。 ST_BuildArea内輪は穴を表し、結果からそれらを省略し、結果にST_Polygonizeはそれらを含めていると想定しているようです。そして、関数を使用するメカニズムは少し異なります:ST_Polygonizeは集約ですが、をST_BuildArea使用して入力を自分でバンドルする必要がありますST_Collect。 これ以外に、2つの機能に違いはありますか?
9 postgis 


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