地理情報システム

地図製作者、地理学者、およびGIS専門家のためのQ&A

2
PostgreSQL / PostGIS空間インデックス-スピードアップなし
PostgreSQL / PostGISデータベースに空間テーブルがあります。その中のすべての行はポリゴンを表します。次の形式です。 +----+--------+ |gid | way | +----+--------+ |241 | 01030..| 幾何学的列は、ポリゴンのジオメトリを含む「ウェイ」です。WKTでは、POLYGON(( '....'))です。2つのポリゴンが相互に含まれているかどうかをテストするために、このテーブルで多くのST_Containsクエリを実行しています: Select ST_Contains(a.way, b.way) From table AS a, table AS b Where a.gid = 15 And b.gid = 16 このクエリを高速化する方法を疑問に思っていて、テーブルに空間インデックスを追加しました。 CREATE INDEX table_way_gist ON table USING gist(way); しかし、実際にはスピードアップは見られません。ST_Containsクエリを実行する前に、テーブルにすべてのポリゴンを入力した後、インデックスを作成します。テーブルを埋める前にインデックスを追加する必要がありますか?インデックスを操作するためのテーブルには特別な要件がありますか?幾何学的列のウェイの投影(srid)は900913に設定されます。 私は使用しています:psql(PostgreSQL)9.1.4 / POSTGIS = "1.5.3"

3
地図製作の心理学に関する本はありますか?
この質問の答えはコミュニティの努力です。この投稿を改善するには、既存の回答を編集してください。現在、新しい回答やインタラクションを受け入れていません。 私は地図製作の心理学に関するセミナーを行うという困難な仕事をしています。私はこの分野で訓練を受けていませんが、誰かがこの角度に取り組んだことがあるかどうか尋ねたいですか?...色と形の意味と認識、象徴性、そしておそらく図像学...しかし、私は深すぎるかもしれません。 誰かが私を刺激する良いサイト、文献、YouTubeリンクなどを知っていますか?

1
更新されたシェープファイルで変更された行を確認する方法は?
郡のGISデータを使用して、OpenStreetMapの道路を更新しています。昨年公開されたコピーと公開されたばかりのコピーがあり、属性またはジオメトリが変更されたLineStringをすべて検索したいと思います。これにより、OpenStreetMapですべての新規および修正された道路が更新されるようになります。 QGISやPython / OGRなどのFOSSソフトウェアを使用してこれを行いたいです。道路セグメントには一意の識別子が必要です。そのため、私の唯一の考えは、両方のシェイプファイルを開き、古い(追加されたセグメント)に存在しない新しいセグメントを見つけ、逆(削除されたセグメント) 、その後、構成座標を比較して一致したペアをループ処理し、変更があったかどうかを確認します。 これは良いアプローチですか?もっと簡単な方法はありますか?

4
標高プロファイル、ラインの両側10 km
地形帯の標高プロファイルを取得するにはどうすればよいですか? (定義された線の両側の)10 km以内の最高標高を考慮する必要があります。 私の質問が明確であることを願っています。事前にどうもありがとうございました。
15 qgis  elevation  line  profile 

3
ArcGIS for Desktopで特定の列のみをCSVファイルにエクスポートしますか?
ポリゴンフィーチャクラスをファイルジオデータベースに出力するarcpyを使用して、Pythonスクリプトを記述しました。属性を別のCSVファイルにエクスポートする機能を追加しました。この投稿で見つけた完全に機能するコードを使用しています。ただし、そのコードは、フィーチャクラスのすべての列をエクスポートします。:私は、以下の名前を持っていないフィールドをエクスポートするOBJECTID、ShapeまたはShape_Length。 CSVファイルが正常に生成され、またはフィールドが正しく含まれていません。ただし、フィールドはファイルに書き込まれます。そのフィールドに書き込まれる値の例は次のとおりです。OBJECTIDShape_LengthShape <geoprocessing describe geometry object object at 0x28CB90A0> フィールド名を印刷する行を追加しましたが、フィールド名を繰り返し処理するため、驚くことにShape印刷されません。ArcGISが非表示にしたり、別の名前を付けたりするようです。 私の関数のコードは次のとおりです。 def exportToTable(): """ Exports the final outputs to a CSV File. """ # Create path to CSV File (note the varialbe outputPath is declared elsewhere). CSVFile = outputPath+'\\FinalOutput.csv' arcpy.AddMessage("Created CSV File: %s" %CSVFile) # Get all fields in FinalOutput …




5
ArcMapで使用される「Python.exe」のパスをプログラムで取得する方法
C#でArcMapのアドインを使用しています。C#コードから、いくつかのPythonスクリプトを実行しました。さて、これらのスクリプトを実行するために、Pythonパスをハードコーディングしています。しかし、これは移植性がありません。したがって、コードからPython実行可能ファイルのパスを取得して使用したいと思います。 質問: ArcMapで使用されるPython実行可能ファイルのパスをC#コードから取得するにはどうすればよいですか? 編集: あなたの提案から、今のところ私はPythonのパスを取得するために「パス環境」を使用しています。 //get python path from environtment variable string GetPythonPath() { IDictionary environmentVariables = Environment.GetEnvironmentVariables(); string pathVariable = environmentVariables["Path"] as string; if (pathVariable != null) { string[] allPaths = pathVariable.Split(';'); foreach (var path in allPaths) { string pythonPathFromEnv = path + "\\python.exe"; if (File.Exists(pythonPathFromEnv)) return pythonPathFromEnv; } …
15 arcgis-10.0  python  c# 

1
GDAL VRT形式-概念を理解できますか?
OK VRT形式について読んでいます。どうか、これについてのあなたの意見をお願いします。また、私が提案することが理にかなっている場合は: VRTは基本的に、ピクセルサイズ、ジオロケーションなど、実際のラスターファイルのさまざまなプロパティを記述するメタデータXMLファイルです。 ステップ1:すべてのGeoTIFFファイルをVRTに変換しました(実際にはVRTを生成しただけではありません)。 これで、VRTをマージできることがわかったので、すべてのメタデータを保持する1つの大きなVRTのVRTメタデータファイルのモザイクを作成できると思います。素晴らしい、つまり、メタデータはおそらくレンダリングの最適化に使用されます。QGISは、どのタイルが現在のキャンバス範囲に収まり、どのタイルが収まらないかを(仮定して)決定するためです。 ステップ2:VRTモザイクを作成する さて、次の利点は、QGISの目次に1つのエントリを追加するだけで、必要に応じてスケール依存のレンダリングやnullデータ値の透過性など、さまざまなものを設定できることです。議論の余地があります。GeoTIFFをQGISにロードしてグループに入れることはできますが、共通のSRSを設定する以外はグループを制御できません。 オルソフォトを小さなスケール(大きなズームアウト)で表示したいが、レンダリングを高速化したい場合は、元のラスターのリサンプリングセットのみでステップを繰り返し、いくつかの大きなVRTデータセットを作成します。 これは理にかなっていますか?:)
15 qgis  gdal  vrt 

3
Webマッピングとジオコーディングを使用して系統データを追跡する
昨年、私は家系図の調査に参加しました。私の父方の祖父は、彼の世代の他の何百人もの人と一緒に、大西洋の離島から来ました、そして、彼らの多くは同じ地域内に定住しました。島は非常に小さいため、少数の姓(約30の姓、同じ名前のいくつかのバリエーション)を共有しました。 GISの知識を使用して、最初に子孫が現在住んでいる場所に関するデータを収集し(最近設立された協会は小さなデータベースをコンパイルしました)、データを分析してさまざまな姓/血統/人種をマッピングします(島民は人種のるつぼであり、絶対に素晴らしいです)。 協会にサービスを提供する前に、誰かが似たようなことを行っているかどうか、そしてそれにアプローチするための最良の方法は何かを知りたいのですが。質問のタイトルで述べたように、ArcGIS Onlineを使用して、他の人が情報を追加し、データを管理できるようにします。いくつかの軽いグーグルは、ジオコーディングの姓が私が探しているものの一部かもしれないことを示していますが、私はそれを経験していないので、よくわかりません。

4
GDALでラスターを平滑化/再補間しますか?
短い: ラスターの解像度を変更し、以下の画像に示すようにグレーのランプを滑らかにします。GDAL、PIL、またはNumpyを使用することをお勧めします。 説明: 私は、高性能地球統計ライブラリーを使用して、20メートルの出力解像度でラスターにポイントをクリギングしています。補間時間が指数関数的に増加するため、出力解像度を変更したくありません。 この解像度では、出力画像は見苦しくなります(ピクセル化およびエイリアス化)。概念的に正しいかどうかはわかりませんが、次の例のように画像をより滑らかにしたいです。これは、画像をより良い解像度に「再補間」するようなものです。私はpythonを使用しているので、私の好みはGDAL、Python Imaging LibraryまたはNumpyです。答えは、アルゴリズム名やこの種の操作の概念を指摘するような理論的なものです。 ソース: 先: gdalwarpキュービックスプラインを使用した結果の編集:
15 python  raster  gdal 

2
ギャップと重複するポリゴン(パーセル)ジオメトリの修正
私は、ほぼ毎日のように修理が必要なリソースに出くわしました。それは私たち自身の製品ではなく、サプライヤーは一般的に問題を修正することに興味がありません。 2000個以上の区画境界を含むポリゴンシェープファイルを使用しています。パーセル自体は、用語の一般的な意味ではパーセルではありませんが、データを非常に効果的に説明しています。「小包」は、小包間で重複したり、隙間を作ったりしてはなりません。ただし、データの品質はひどく低く、スナップが無効になっている状態で区画が手で描かれているようです!以下の図を参照してください。 場合によっては、写真よりもはるかに悪いか、ギャップ/オーバーラップが非常に小さいため、空間手順(交差点など)を実行するまで識別できません。 この種の問題をどのように修正しますか?写真の8つのポリゴンを表すシェープファイルを添付しました。これらの8つのポリゴンは、ギャップと重複の問題の両方を示しています。2000以上の小包を修正するためにプロセスを自動化できますか? http://temp-share.com/show/dPf3mpihW 注:ArcMapで「ジオメトリを修正」ツールを調べましたが、これは重複するポリゴンのみを修正します。ジオメトリのオーバーラップは2つの問題の中で最悪ですが、可能であれば両方を修正したいと思います。

1
ArcPy Cost Path AnalysisツールがArcObjectsよりも高速である理由を理解できますか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 閉じた3年前。 Pythonを使用してジオプロセシングスクリプト/サービスを作成しましたが、ArcObjectsを使用して同等の操作を実行するとパフォーマンスが向上するという印象を受けました。 私が投稿したのArcGIS ServerのGPサービス- RasterIO.dllクラッシュのArcSOC.exeをし、ArcGISのジオプロセシングスクリプトは、デスクトップに罰金を実行しますが、ジオプロセシングサービスとしてクラッシュしますか?Spatial Analystツールを使用してジオプロセシングサービスとして機能するジオプロセシングスクリプトを取得する方法について、過去数日間にわたって説明しました。私の締め切りはすぐに近づいているので、希望の機能を達成するためにSOEルートに行くことにしました。 .NET ESRI.ArcGIS.SpatialAnalyst.RasterDistanceOpClass、特にCostDistanceFull()およびCostPath()メソッドを使用すると、ArcObjectsでコストパス分析を取得するのは比較的簡単でした。 私が物事をどのように行っているかのコードスニペット: Python # Get Cost Path Origin and Destination Points inputPointsShp = 'D:/RasterStuff/test_points.shp' arcpy.MakeFeatureLayer_management(inputPointsShp,"origin",' "TYPE" = \'ORIGIN\' ') arcpy.MakeFeatureLayer_management(inputPointsShp,"destination",' "TYPE" = \'DESTINATION\' ') # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute CostDistance outCostDistance = CostDistance("origin",SOURCE_RASTER,"#","backlink") # …

3
ArcGIS Desktopで重複するポイントを見つけてマージしますか?
赤と青の2つのポイントシェープファイルがあります。各ポイントシェープファイルには、半径を表すz値があります(例ではバッファーとして表されます)。重複ポイントは、2〜10 mの範囲の別のポイントのZ距離内にあるポイントとして定義されます。この例では、10個のペアの重複ポイントがあります。7個のペアは完全に重なり、3個のペアは別のポイントのZ値に収まることで重なります。 Z内で各複製の1つだけを保持し、2つのシェープファイルをArcGIS Desktopで結合します。 重複ポイントを見つけてマージするにはどうすればよいですか?

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