logo
ホーム •  フォーラム •  日本語wikiトップ •  アカウント情報 •  サイト内検索 •  新規登録
 ログイン
ユーザー名:

パスワード:


パスワード紛失

新規登録
 メインメニュー
 米国サイト
 オンライン状況
20 人のユーザが現在オンラインです。 (3 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 20

もっと...

osm2cityの使い方

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 .5 .6 .7 .8 | 投稿日時 2017-10-5 12:06 | 最終変更
radio01  常連   投稿数: 23
こんにちは
前回お世話になったTerragearによる丘珠空港は完成できてません
(標高データを入れると雲より高くとんがった山に囲まれてしまうため標高データをいれてません)
空港のレイアウトは完成しました。
目印になる建造物を配置してセスナ172などでVFRでも位置がわかるようにめざしてます。

そこで幹線道路をosm2cityで配置できればよりVFR飛行ができると思い、osm2city、OSMデータのダウンロードをしてシーナリーを生成するあたりで詰まってしまいました。
わかっているのは基本のterrainデータ、objectデータ、と一緒にosm2cityで生成したloadsデータ(stg)を読み込ませることで基本の風景に幹線道路を表示させるのかな?といったところです
buildingデータは制作したオブジェクトと干渉してしまいそうなのでここでは使いません。

おそらく個々の.pyファイルを使ってloadsデータ、buildingデータ等を生成するはずですがどうやってOSMデータを読み込ませればいいのかわかってません

ぜひ少しでもわかる方、こういうことではという推測でも、または英語ができて本家フォーラムに質問できる方でも、どんなことでもいいので協力して頂ければ幸いです。
よろしくおねがいします。

ubuntu14.04 LTS
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-10-6 17:45
inomaty  長老   投稿数: 161
こんにちは、radio01さん。inomatyです。


SRTMのデータ欠損のためでしょうか?真っ平らな土地というのも寂しいのでそちらも何とかしたいところですが、それは置いておいて、

以前から私もosm2cityに興味ありましたがpythonに触れる機会も少なかったので先へ先へとなってましたが、良い機会だと思い勉強してみました(安定版ですとFlightGear2017.3.1以降では道路に車が走るのもいいですね)。
英語Wikiにある使い方ページ(http://osm2city.readthedocs.io/en/latest/index.html)を参考にしつつ、私の方ではWindows環境下でPreparation [Builder]のOSMのデータを落とすというとこまでは来ましたが、radio01さんはどこまで進んでいるのでしょうか?もうScenery Generation [Builder]に入るとこまで来ているで良いのでしょうか?
作成範囲によっては単純にScenery Generation [Builder]ページのOverview of Programsの2つめのコード部分のように.pyファイルを実行していくのではなく、バッチファイルを実行させるようですけどその辺りはどうなのでしょうか?

--
OS:Win7 Pro 64bit
  Ubuntu14.04LTS
FG version:Win7:3.4,2017.3.1
      Ubuntu:2016.1.1,2016.2.0

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-10-6 20:23
radio01  常連   投稿数: 23
inomatyさんこんにちは
シーナリー制作でお忙しいところ調べていただきありがとうございます。

SRTMデータいくつか(ユーザー登録必須のデータも)試して見ましたがどれもだめでした、Flightgearのデフォルトの標高データがあればいいのですが。

本題ですが僕もOSMデータをGeofabrikから北海道全域(本当は札幌の一部だけでいいのですが)のOSMデータをダウンロードはできました。
ただ、引用:Please be aware of the Tile Index Schema in FlightGear. It is advised to set boundaries, which do not cross tiles.
がいまいちよくわからず無視していいのかわかりません。

Setting a Minimal Set of Parametersはやっとわかってきたので書いていて、すこしずつ進んでいます
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-10-6 20:37
radio01  常連   投稿数: 23
すみません書き忘れがありました。

引用:作成範囲によっては単純にScenery Generation [Builder]ページのOverview of Programsの2つめのコード部分のように.pyファイルを実行していくのではなく、バッチファイルを実行させるようですけどその辺りはどうなのでしょうか?
ここのバッチファイルを使用するという表記が見つけられませんでした。
もしよければ使い方ページの引用も合わせて教えていただけるとありがたいです。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-10-7 0:27
inomaty  長老   投稿数: 161
こんばんは、inomatyです。

Terrain生成で何か問題があればログメッセージで何か出るかと思うのでそれがヒントになるのでは無いかと思いますが、こちらで再現も出来ないのでアドバイスも難しそうですね。シェープファイルはv0マップでしょうか?


引用:
Please be aware of the Tile Index Schema in FlightGear. It is advised to set boundaries, which do not cross tiles.
この部分ですが、以下リンク先の地図見ながら読んで下さい。直線で囲まれてる長方形一つ一つがTerrainの一つ一つのファイルの区切りとなってます。各タイルがどの位置のものなのかという住所がそれぞれのタイルに付いてます。例えば丘珠空港のターミナルは5267777の番号のタイルにあります。
ここで丘珠空港の建物を何かモデリングソフトで作って設置するとします。それを記述するファイルが シーナリーフォルダ/Objects/e140n40/e141n43/5267777.stg です(パス間違っていたらすみません)。これが例えば間違って丘珠空港の北側のタイルの5267785.stgに位置の記述をするとFlightGearの側で不都合がおこります(というのがさっきの引用文の次の文
引用:
Otherwise the scenery objects can jitter and disappear / re-appear due to the clusters of facades crossing tiles. Another reason to keep within boundaries is the sheer amount of data that needs to be kept in memory.
に当たります)。だからタイルの境界線を超えないように気をつけてね という内容ですね。

radio01さんが東経131.25〜131.5度、北緯43.0〜43.125度の5267777のタイルに収まる範囲のみしかosm2cityを使う必要が無ければバッチファイルは関係無いですが、それ以上の範囲を作るとなるとタイルの範囲ごとparams.iniを作って.pyファイルを実行しなければなりません(多分)。面倒ですね(特に範囲がメチャクチャ広くなると)(^_^;) そこでバッチファイルを使ってオートでやってもらう方法があるよ、というのがその下の段落の内容です。
引用:
E.g. Switzerland is around 46 degrees of latitude, therefore the boundary can be set in increments of 0.125 degrees of latitude and 0.25 degrees of longitude. Smaller works fine. If you are using the recommended approach of batch processing, then these details will be taken care of for you automatically.

batch processingというリンク先をクリックするとバッチファイルが2種類(build_tiles.pyとbuild_tiles_db.py)ありますよという説明に入ります。前者の方が操作手順がはるかに多くて2016年秋から放置してるようですが、後者はOSMデータをPostGISデータベースにするという作業が必要なようです(現在Ubuntu Linuxを使う方法しか書いてありません)。Ubuntu使っているなら後者で良いのでは無いですかね?事前準備としてPostGISなどダウンロードしてosm.pbfファイルを何たらするという内容がDatabase Based Batches with build_tiles_db.pyの最初のリンク先prepare OSM data in a databaseにあります。


こんなとこだと思うのですがどうでしょうか?

--
OS:Win7 Pro 64bit
  Ubuntu14.04LTS
FG version:Win7:3.4,2017.3.1
      Ubuntu:2016.1.1,2016.2.0

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-10-9 22:10
radio01  常連   投稿数: 23
すみません、身内に不幸があったため自宅を離れてます(スマホから)
あさって夜にはパソコンを開けそうです

ログメッセージはどこから見るのでしょうか?
3.4.0の時はコマンドラインから見れたのですが。
v0マップです。

タイルはそういうことにだったんですね!
3Dオブジェクト配置に5267777ファイルに配置データを書いたことあります。

タイルを3つほどカバーしたいのでバッチファイル後者を使おうと思います、pbfファイル使うんですね、osmファイルダウンロードしちゃいました(汗)、重くなかったので大丈夫ですが。

何度も申し訳ありませんm(__)m
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-10-12 23:16
inomaty  長老   投稿数: 161
こんばんは、radio01さん。

遅くなってすみません。
ログメッセージの件ですが、TerraGear関連のファイル(gdalchopとかterrafitとか〜)の実行時のログですね。関西地区を作っていたときに 何か作成したTerrainがおかしい->ログを見る->明らかに広葉樹林ファイルのogr-decode通過時間が短い->広葉樹林ファイルに問題がありそうだ と探っていったので、参考にならないかと思い書いてみました。私のWindows環境、TerraGear GUIのCreate log fileにチェックが入っている状態ではシーナリー作成フォルダに〜.logというファイルがいくつか出来ます。Ubuntuですと端末(ターミナル)でTerraGearの個々のファイルを実行していますかね?以前UbuntuでTerraGearを実行したとき以降にそのPCを一旦リセットしたようで記録が無いので憶測でしか話せませんが、もしログの記録が端末でしか表示されないようでしたら、「tee」コマンドというログとかエラーを記録するコマンドがあるのでそれを使ってみればログ等が残って良いかと思います。

マニュアル読む限りWindowsだと面倒なバッチファイル(タイル毎作られたshファイルを一つ一つ実行していく)しか方法が無いようですので、私のとこではCore2DuoのUbuntuを利用するか、Windowsでの便利な方法が確立されるのを待つかですかね(^_^;) 
まだこちらは全然進んでいないのでradio01さんのご報告お待ちしています。

--
OS:Win7 Pro 64bit
  Ubuntu14.04LTS
FG version:Win7:3.4,2017.3.1
      Ubuntu:2016.1.1,2016.2.0

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-10-13 12:35
radio01  常連   投稿数: 23
こんにちは

いえいえ僕も今日やっとPCに触れました。
Terragearのほうですがlogファイルを見るとhgtchop.logにunzipの項目があり、どうもunzipのあたりが文字化けを起こしていて正しく解凍できていなかったみたいです。
あらかじめ解凍してあげるとうまくterrainが生成されました。
このためにログファイルがあるのですね、逃げずに何かあればログファイルを見るようにします。ありがとうございました

実はWindowsのほうでTerragearの環境ができているのでWindowsでシーナリー生成、Ubuntuで飛行する形になってます。

バッチファイルしか方法がないのですね、Ubuntuが入ってるのでやってみます、進展があれば書き込みますのでよろしくお願いします
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2017-11-13 17:02
radio01  常連   投稿数: 23
inomatyさんこんにちは

osm2cityで使うosmデータを分割するところで止まってしまいました
Preparation [Builder]のGetting OpenStreetMap Dataのコードをubuntuで実行するとECHOコマンドやREMコマンド他が認識されずエラーになります
@ECHO: コマンドが見つかりません
@を外しても変わらず、頭に#!/bin/shを入れてもダメ。

/home/tom/bin/osmosis-latest/bin/osmosis.bat --read-pbf file="/home/tom/fg_customscenery/project/raw_data/hokkaido-latest.osm" --bounding-box completeWays=yes top=43.2 left=141.2 bottom=42.9 right=141.5 --wx file="/home/tom/fg_customscenery/project/RJCO/rjco_wider.osm"

ECHO: not found
REM: not found
IF: not found


windowsで実行するとスタックオーバーフローを起こしてしまい「 バッチの再帰数がスタック制限を越えました ****** 再帰回数=400, スタック使用率=90 パーセント ****** バッチ処理が中止されました ******」と表示され中断されてしまいます
再帰回数は500近くになってたはずです。
ちなみにwindowsではosmosisフォルダとfg_customsceneryフォルダをcドライブ直下に入れて絶対パスで入力してます。
そしてbatファイル内で指定する%ALLUSERSPROFILE%(program files)に入れて実行しました

バージョンを下げても結果は同じでした。

osmデータを分割しないで進んでしまおうかとも思いましたが北海道全域をそのままとなると莫大な時間がかかりそうです。

知恵を貸していただけると幸いです。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-11-14 23:42
inomaty  長老   投稿数: 161
radio01さん、こんばんは。

まずUbuntuの側ですが、バッチファイル(.bat)はWindows向けのファイルです。Getting OpenStreetMap Dataのコードを参考にターミナルに打ったのかと思いますが、その上の部分に"E.g. on Windows it could look as follows:"(例 ウィンドウズでは以下のようになるでしょう)と書いてあります。osmosisのLinuxへのインストールページ(http://wiki.openstreetmap.org/wiki/Osmosis/Installation#Linux)で最後にbin/osmosisとあるので、
/home/tom/bin/osmosis-latest/bin/osmosis --read-pbf file="/home/tom/fg_customscenery/project/raw_data/hokkaido-latest.osm" --bounding-box completeWays=yes top=43.2 left=141.2 bottom=42.9 right=141.5 --wx file="/home/tom/fg_customscenery/project/RJCO/rjco_wider.osm"
ならエラー出ないのかな?と思いますがどうでしょうか?


次にWindowsの方ですが、当方の環境(OS:Win7 Pro 64bit, RAM:8GB, JAVA 8 Update 151 )で
"D:\Downloads\osmosis-latest\bin\osmosis.bat" --read-pbf file="D:\Downloads\ tohoku-latest.osm.pbf" --bounding-box completeWays=yes top=38.3 left=140.7 botto m=38 right=141 --wx file="D:\FlightGear\rjss_wider.osm"

"D:\Downloads\osmosis-latest\bin\osmosis.bat" --read-pbf file="D:\Downloads\
hokkaido-latest.osm.pbf" --bounding-box completeWays=yes top=43.2 left=141.2 bot
tom=42.9 right=141.5 --wx file="D:\FlightGear\rjco_wider.osm"
の両方を試してみましたが、どちらも無事にrjss_wide.osmとrjco_wide.osmが出力されました。いろいろパソコンいじっている過程で覚えていないが変えている可能性もありますが、私もプログラミングの専門家ではないので申し訳ありませんが原因が分かりません。どうしてもうまくいかないようであればどこかに私が作ったrjco_wide.osmをあげます。

--
OS:Win7 Pro 64bit
  Ubuntu14.04LTS
FG version:Win7:3.4,2017.3.1
      Ubuntu:2016.1.1,2016.2.0

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-11-18 20:58 | 最終変更
radio01  常連   投稿数: 23
inomatyさんこんばんは

ubuntuを使っていながらbatファイルの事をよくわかっていませんでした。
おかげさまで拡張子が付いてない方を使うとうまく行きました
ありがとうございます

postgresqlデータベースへのアップデートもやっとの思いで無事完了し、Generating Elevation Dataのterrasyncでシーナリー取得も終わり、やっとbuild_tiles_db.pyを実行するだけだと思ったらpython3のモジュールが無いと言われ結局10〜20のモジュールをpipでインストールしました。

気を取り直しbuild_tiles_db.pyを実行するとずらーーっと出てくる中にタイルごとのelev.pklファイル(標高データ)が見つからないらしい表示が出るも完了して飛んでみると、札幌中心に設定したはずが南西の方向にある温泉街(定山渓周辺)に生成されてしまいました、一番都市部に近く生成されたのが手稲でした(お時間があれば検索してみてください)
案の定地下に生成されてました。

140.9_42.9_141.5_43.2(西_南_東_北) をboudaryに設定しましたがどうも実行すると大まかな座標に設定されるみたいでうまくログをコピーできたらここに載せます。

標高データも恐らくfgelevという実行ファイルが何かしら関係してくるはずなんですが、本家フォーラムでも実行されないとかメモリリーク等のバグがあるらしく、じっくり本家フォーラムを調べていこうと思います。
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2017-11-18 22:00
radio01  常連   投稿数: 23
実行内容をログに保存できました

INFO:root:Reading parameters from file: RJCO/params.ini
INFO:root:Overall boundary 141.2, 42.9, 141.5, 43.2
INFO:root:Added new scenery tile: Tile index: 5267768, prefix: e140n40/e141n42/5267768; boundary west: 141.2 - south: 42.9 - east: 141.25 - north: 43.0
INFO:root:Added new scenery tile: Tile index: 5267769, prefix: e140n40/e141n42/5267769; boundary west: 141.25 - south: 42.9 - east: 141.5 - north: 43.0
INFO:root:Added new scenery tile: Tile index: 5267776, prefix: e140n40/e141n43/5267776; boundary west: 141.2 - south: 43.0 - east: 141.25 - north: 43.125
INFO:root:Added new scenery tile: Tile index: 5267784, prefix: e140n40/e141n43/5267784; boundary west: 141.2 - south: 43.125 - east: 141.25 - north: 43.2
INFO:root:Added new scenery tile: Tile index: 5267777, prefix: e140n40/e141n43/5267777; boundary west: 141.25 - south: 43.0 - east: 141.5 - north: 43.125
INFO:root:Added new scenery tile: Tile index: 5267785, prefix: e140n40/e141n43/5267785; boundary west: 141.25 - south: 43.125 - east: 141.5 - north: 43.2

見づらいかも。
投稿前の確認でわかりましたが結果的にwestとeastが同じだったりしてました(汗)
中途半端だといけないようですね。
投票数:0 平均点:0.00

  条件検索へ


 検索

高度な検索
 新しい登録ユーザ
asunyzob 2017-12-12
Siverson70 2017-12-12
avubivem 2017-12-12
yxosyvu 2017-12-12
ajezofuhi 2017-12-11
icujyqox 2017-12-11
apyfeqe 2017-12-11
ykefy 2017-12-11
ihozubi 2017-12-11
amojoluq 2017-12-11
 最近の画像(画像付)
舞洲シーナリー改良 (2017-11-26)
舞洲シーナリー改良
舞洲の場周経路図 (2017-11-14)
舞洲の場周経路図
水上機マリーナ完成 (2017-11-14)
水上機マリーナ完成
大阪に陸海3飛行場 (2017-10-24)
大阪に陸海3飛行場
舞洲ヘリポート (2017-9-10)
舞洲ヘリポート
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Theme designed by OCEAN-NET