地理情報システム

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

2
Google Maps APIのクリックまたはドラッグイベントから座標を取得しますか?
Googleバージョン3ジオコーダーを作成しました。マーカーをドラッグまたはクリックしたときに、マーカーの座標を取得できるようにしたいと思います。以下は私のコードです: <!DOCTYPE html> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <title>Google Maps JavaScript API v3 Example: Geocoding Simple</title> <link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" /> <script src="http://maps.google.com/maps/api/js?v=3.5&sensor=false"></script> <script type="text/javascript"> var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var myOptions = …

4
3000以上のポリゴンを処理するための最良のオープンソースWebマッピングソリューションは何ですか[非公開]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 閉じた2年前。 流域(18の主要な流域)を表す3000以上のポリゴンがあります。最初の段階では、18の分水界すべてが表示され、そのリストが左側のサイドバーに配置されます。ユーザーがマップ上にマウスを移動すると、ポップアップのみに流域名が表示されます。ユーザーがマップ上の主要な分水界をクリックすると、詳細が表示されたポップアップウィンドウが開きます。より大きなズームでは、すべての流域が表示されます。 大量のポリゴンを処理するのに最適なオープンソースソリューションはどれですか。 LeafletまたはOpenLayersについて考えていましたが、大量のポリゴンを処理できるかどうかわかりません。 また、それらをmysqlに保存することをお勧めしますか?

1
GDAL RasterizeLayerはすべてのポリゴンをラスターに焼き付けませんか?
GDALのRasterizeLayerを使用して、シェープファイルをラスターに焼き付けようとしています。特定のピクセルサイズを指定して、異なるシェープファイルから対象エリアラスタを事前に作成します。このAOIは、その後のすべてのラスター化(同じ数の列と行、同じ投影と地理変換)のベースとして機能します。 ただし、同じピクセルサイズと投影に基づいて、シェイプを独自のラスターに書き込むときに問題が発生します。下のリンク(画像を投稿するのに十分な担当者がいない)は、元のシェープファイルを黄褐色で示し、RasterizeLayerがデータを書き込んだ場所に濃いピンク色を示しています。淡いピンクは、濃いピンクのラスターデータのnodata値です。灰色は、シェープファイルの書き込みが完了したAOIに基づいています。 シェープファイルポリゴンの範囲を考えると、表示されるデータの下にある2つのピクセルだけでなく、下の2つの角にも書き込み値が表示されると予想されます。ただし、明らかにそうではありません。 以下は、これらを生成するために使用したコードです。すべての形状はQGISを使用して作成され、すべて同じ投影で作成されました。(表示されている写真のグリッディングは、使用しているピクセルサイズを示すためのものであることに注意してください。) from osgeo import ogr from osgeo import gdal aoi_uri = 'AOI_Raster.tif' aoi_raster = gdal.Open(aoi_uri) def new_raster_from_base(base, outputURI, format, nodata, datatype): cols = base.RasterXSize rows = base.RasterYSize projection = base.GetProjection() geotransform = base.GetGeoTransform() bands = base.RasterCount driver = gdal.GetDriverByName(format) new_raster = driver.Create(str(outputURI), cols, rows, bands, datatype) new_raster.SetProjection(projection) …

1
PythonでGDALに例外を適切に発生させる方法はありますか?
私はPythonでGDALを使用していますが、GDALで例外を発生させて、有用なことを行えるようにしたいと考えています。たとえば、gdal.Open()でファイルを開くことができない場合、gdalがNoneを返す代わりに例外をスローしたいと思います。エラーをsys.stdoutにダンプするのではなく、キャプチャする方法が欲しいのです。 現在、このgdal.UseExceptions()関数を使用しようとしましたが、問題に遭遇しました。ときにgdal.UseExceptions()設定されていることは、特定のエラーを隠し、それらに例外を発生させないように思われます。たとえば、ERROR 5: Access window out of range in RasterIO() Requested (1,15) of size 25x3 on raster of 26x17消えて例外は発生しません。これはかなり危険なようです。 どんなアイデアでも感謝します、ありがとう。
12 python  gdal  ogr  osgeo 


1
インテリジェントな巡回セールスマンはいますか?
冗談はさておき、私はほとんど巡回セールスマンの問題(TSP)であるルーティングの問題がありました。 開始点が定義されています 終点は始点と一致します 各ノードを訪問する必要があります 総コストを最小限に抑える必要があります 2年前、TSPは完全に一致すると考えていたため、いくつかのサンプルデータをtsp_solveConcordeで実行しました。幸いなことに、TSPの最短パスが実際の最短パスではないことがすぐに明らかになりました。これは、ノードを一度だけ正確にアクセスすることを非現実的に要求することで問題が簡単になるためです。この図は、計算されたソリューションの最適化を1ステップで手動で試みたものであり、すでに使用されている最も長いエッジの距離を節約しています。 マッピング/監視サイトのサブセットへの最適なルートを見つけようとしているため、問題が表面化しました。ロケーションおよび道路ネットワークのデータは非常に正確かつ正確であるため、このような演習は理にかなっています。 TSPの一般化を見てきましたが、適切なアルゴリズムが見つかりませんでした。最小スパニングツリーは、ブランチからの戻りを考慮していません(ここでの最初の解決策にはさらに3つのコストがかかります)。私が理解していることから、最短経路の問題は最終的に2つのノードのみを考慮し、最適な経路から外れたノードは除外されます。車両のルーティングの問題の特殊なケースが最適であるように見えますが、それが非直接経路を考慮するかどうかはわかりません。 私の質問:この種の問題(家族)の定まった名前、定義はありますか?どのアルゴリズムとツールを使用して解決しますか? 計算量が多いと確信していますが、一般的な(無限のリソース)答えと実用的な答えの両方に興味があります。

1
LiDARデータを使用した建物の抽出(プロセスの改善)
Lasファイルから建物のアウトライン/フットプリントを自動的に作成するための次のプロセスがあり、誰かがそれを改善するのを助けることができるか、使用する他のプロセスの提案がありますか? 実験: A. ArcGIS-Lidardatasetツール:建物のクラスポイントのみを表示できますが、ポリゴンを自動的に作成することはできません。最小の境界ジオメトリがありますが、データセット全体を見ると、各建物のポイントを手動で選択する必要があります。 B. Overwatchによる外部ライダー分析ツール -建物の抽出はコア機能です。http://www.featureanalyst.com/lidar_analyst.htm(アクティブではなくなりました-2014年7月28 日)裸の地球(必須)を作成してから建物を抽出するのに約8分かかりました。木々の下の建物をキャプチャすることで、最高の結果が得られます(1&4)。これは非常に直感的なインターフェイスであるため、チュートリアルを見ることさえありません。 いくつかの問題は、覆われた廊下を逃したが(3)、開いた屋根を正しく除外したことです(2)。 C. LASTOOLS- lasmergeを使用して関連する4つのタイルをマージし、次にラスクリップを使用してAOIのゾーンのみを抽出しました。 arcpy.lasboundary("AOI.las","1","buildings","true","true","shp","AOI_buildings.shp","","#","true") 出力は非常にぎざぎざだったので、私は使用しました: arcpy.SimplifyBuilding_cartography("AOI","AOI_buildings_simplified.shp","4 Meters","0 SquareMeters","NO_CHECK") その後、実行しました: arcpy.SimplifyPolygon_cartography("AOI_buildings_simplified","AOI_s.shp","POINT_REMOVE","1 Meters","0 SquareMeters","NO_CHECK","KEEP_COLLAPSED_POINTS") 1と2は問題領域を示しています。その一部は、悪いLIDAR分類によるものです。 これにより、長くまっすぐな縁のある建物に良い建物ラインが提供されますが、枝が重なり合っている場合、または複数のエッジ、互いに近い複数のレベルの屋根などがある複雑な建物の場合、詳細なサイトレベルの作業には手動での作成が必要です。一般的な推定屋根形状の場合、プロセスは十分に正確です。プロセスが完了すると、プロセスは合計10分未満で完了します。 私の研究:/programming/5037588/simplified-or-smooth-polygons-that-c​​ontain-the-original-detailed-polygonとプロセスが@gromixによって提案や定義、アルゴリズムと実用的なソリューションは何ですか凹包の

2
空間的に有効化されたPostgresデータベース
空間的に有効なPostGISデータベースを作成しようとしています。私はPostGISのドキュメントhttp://postgis.net/docs/manual-1.5/ch02.html#id2648455をフォローしています。 ショートバージョンでは、私は実行しました、 createdb yourdatabase createlang plpgsql yourdatabase しかし、最後の3つのコマンドは実行しませんでした。 psql -d yourdatabase -f postgis.sql psql -d yourdatabase -f postgis_comments.sql psql -d yourdatabase -f spatial_ref_sys.sql データベースはまだ空間的に有効になっていますか?そうでない場合は、これらの.sqlファイルの場所を教えてください。次のエラーが表示されるため、最後のコマンドを実行できます。 postgis.sql: No such file or directory Ubuntu 12.04を使用しています

1
ラスターデータをポリゴンデータに変換する
ラスタデータをポリゴンデータに変換しようとしています。以前は、shapefile.pyを使用して、ラスター上の個々の緯度/経度にポイントデータを作成していました。しかし、それは巨大なデータを作成し、それをクエリすることは大きな問題になります。 したがって、ラスターデータをポリゴンデータに変換できればさらに良いでしょう。SAGAは見つかりましたが、.grdファイルしか変換できないようです。GeoTIFF形式または一般的なラスターデータセットをポリゴンに変換する方法はありますか? 更新:gdal_polygonize.pyを使用する 私は次のコード行を実行しています、 gdal_polygonize.py ~/development/Biodiversity/biodiversity/GeoTIFF/bio11.tif -f "ESRI Shapefile" bio11.shp しかし、次のエラーが表示されます。私のgdalバージョンは1.9.0です。 Traceback (most recent call last): File "/usr/bin/gdal_polygonize.py", line 34, in <module> import gdal, ogr, osr File "/usr/lib/python2.7/dist-packages/gdal.py", line 2, in <module> from osgeo.gdal import deprecation_warn File "/usr/lib/python2.7/dist-packages/osgeo/__init__.py", line 21, in <module> _gdal = swig_import_helper() File "/usr/lib/python2.7/dist-packages/osgeo/__init__.py", line 17, in …

1
ジオデータをどのように整理しますか?
ジオデータベースは、データを階層的に整理する際の柔軟性があまりありません。すべての機能セットは、データベースの最上位レベル、または機能データセットの1レベル下に存在します。フィーチャデータセットに別のデータセットを含めることはできません。特に、ジオデータベースを使用する必要があり、これらの制限に縛られている環境で、他の人がどのようにデータを整理するかを聞きたいです。

2
ArcGISでマルチコア処理を最適化する方法
デスクトップコンピューターで利用可能なマルチコア処理能力を最大限に活用するための学習方法に興味があります。Arcは、ユーザーがバックグラウンドジオプロセシングで複数のコアを利用できると述べていますが、タスクは基本的に前のタスクが完了するまで待機する必要があります。 Arc / Pythonで並列またはマルチスレッドのジオプロセシング手法を開発した人はいますか?個々のタスクでマルチコア処理を妨げるハードウェアのボトルネックはありますか? Stackoverflowで興味深い例が見つかりましたが、これはジオプロセシングの例ではありませんが、興味を惹きました。 from multiprocessing import Pool import numpy numToFactor = 976 def isFactor(x): result = None div = (numToFactor / x) if div*x == numToFactor: result = (x,div) return result if __name__ == '__main__': pool = Pool(processes=4) possibleFactors = range(1,int(numpy.floor(numpy.sqrt(numToFactor)))+1) print 'Checking ', possibleFactors result = pool.map(isFactor, …

5
QGISに回転ツールはありますか?
移動ツールが見えます。しかし、複数のバージョンにまたがって、Quantum GISにRotateツールはありませんでした。私は筋金入りの機能編集者として、かなり難しいと感じました。明らかな何かを見逃していますか?
12 qgis  editing 

3
ArcGIS DesktopでMergeとAppendのパフォーマンスの違いを測定しますか?
多くの場合、自分のツールが新しいフィーチャクラスを生成するかどうかは気にしませんが、大規模なデータセットをすべて結合するのにかかる時間は気にします。Appendツールの代わりにMergeツールを使用して新しいフィーチャクラスを作成するのに時間がかかりますか、それともMergeとAppendはパフォーマンスの面で本質的に同じですか?


6
プライベートWebアプリケーション用の無料のマップサービス
バックグラウンド Webページにマップを表示すること(内部使用のみ)。アプリケーションは、(マップサービスホストにデータを送信せずに)カスタムレイヤーを追加できる必要があります。 市区町村(シェープファイルで定義) カスタムゾーン(ポリゴンで定義され、場合によっては市区町村ゾーンで定義されます) サイトの場所(緯度/経度で定義) 追加の都市データ(シェープファイルで定義) プライベートベンチャーであるため、Googleマップ、Bing、Yahoo!など、多くのマップサービスが不要になります。マップ、MapQuest、およびその他の有料サービス。 アップデート#1 おそらくMapQuestは可能性です。 アップデート#2 言及し忘れた要件: OpenStreetMapの一部ではない追加データ(都市、町、集落)があります。これらの都市は、データをマッププロバイダーに提供せずに含める必要があります。 データの検索場所をマッププロバイダーに通知せずに、表示する必要があるさまざまなレイヤー(従業員の場所など)があります(つまり、データはファイアウォールの内側にあります)。 現在の開発 現在、要件を満たすサーバーを見つけることができなかったため、さまざまなWebサイトで指示に従ってMapnik Webサーバーをインストールしました。 http://dbsgeo.com/foss4g2010/html/_static/pdf/osm-rendering-foss4g2010.pdf http://osgeo.org.cn/l18n/geodjango/install.html http://wiki.openstreetmap.org/wiki/Mapnik/Installation http://www.postgresonline.com/journal/archives/180-pgAdmin113plugins_postgis.html http://blog.geoserver.org/2009/01/30/geoserver-and-openstreetmap/ http://workshops.opengeo.org/stack-intro/postgis.html 複数のシェープファイルをPostGISに一括読み込み この時点で、さまざまなデータがあります。 市および自治体のデータ(PostGISに読み込まれた形状ファイル) Natural Earthデータ(シェイプファイル。ロードされません) Mapnikスタイルシート(さまざまなファイル。ロードされません) GeoServer GeoServer(Mapnikより前)をインストールしようとしましたが、ドキュメントが不足しており、Webベースの管理ツールの設定が面倒で、2 GHzマシンの応答性が非常に遅い(タイルをレンダリングするのに10秒かかりました)単層:道路)、およびデフォルトの美的ブランド。(スタイルシートを使用してプレゼンテーションを活気づけることができますが、それは適切なファイルを見つけて(または作成して!)、それらをインストールし、テストするなどのことを意味します。) 必要条件 技術的な要件は次のとおりです。 都市、道路、水域(湖、川、海) 政治的境界(州、国) 高品質(視覚的にはGoogleマップ、MapQuestなどに類似) 高い稼働率 900913投影(Googleマップに類似) レスポンシブタイル(タイルあたり0.1秒未満) カナダの道路データの優れたカバレッジ 滑りやすいマップに役立ちます(OpenLayersと互換性があります) 1日あたり10,000タイルリクエスト 商用(または個人)使用は無料ですか、それとも年間2000ドル未満ですか? 良い例え ここに私が達成しようとしているものの素晴らしい例(OpenLayers)があります: 悪い例 私が達成したくないものの例: 不完全なデータの例: 関連リンク http://atlas.nrcan.gc.ca/site/english/dataservices/web_map_service.html …

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