mixiユーザー(id:35581934)

2015年03月02日23:18

756 view

mitakaに探査機の軌道データを入れる方法 part2

前回、nasaのサイトから軌道データをダウンロードするところまで行きました。
今回は、そのデータを mitaka に入れていきます。

まずは、mitaka (正確には ORIHALCONが機能追加した "mitaka plus") で扱われる軌道データの形式を確認するところからはじめます。
軌道データは 拡張子 pth で保存されており、中身をテキストエディタ (メモ帳) で開いてもまったく読めません。つまりバイナリ形式だということ。
ちょいとgoogle先生に聞いてみたところ、同じようなことをやっている方のblogで、「バイナリデータ。double4個で1つ。時刻と座標がひたすら繰り返す。」との記述を発見。

ためしにボイジャー1号のデータをバイナリエディタで開いてみると…
フォト

確かに32バイト単位で同じようなデータが繰り返していました。
※double形式は8バイトでひとつのデータ。

さっそくExcel VBAで読み出してみると、horizonsでダウンロードしたデータと一致しました。

ここまできたら、あとは簡単。

前回、horizonsからダウンロードした messenger の軌道データを Excelにコピペします。
フォト


区切りのないtextデータから、mid関数を使って、ユリウス日とX,Y,Zの座標を分離。
VBAで作るほうが素直なんでしょうけど、プログラム苦手なんでね(笑)

分離されたデータをバイナリファイルに書き込みます。
プログラムとは呼べないレベルの簡単なコードf^^;
フォト


これで無事、軌道データ MESSENGER.PTH が作成されました。

あと必要なのは、2つの定義ファイル。
MESSENGER.DAT と MESSENGER_JP.DAT が必要になります。
中身はこんな感じ。
フォト


探査機の3Dグラフィックデータ (拡張子 3DS)が用意できるのなら、Modelの行で指定できます。
(今回は無視するので、行頭に # を付けてコメントアウトしてます)

これで完成。

mitaka plue を起動して、ターゲットブラウザから探査機を選びます。
日付を妥当なところに設定すると、無事、探査機の起動が表示されました。
フォト


地球で1回、金星で1回目のスイングバイを終えたあたりですね。
このあと、金星でもう1回、水星で3回のスイングバイを経て水星軌道に入ります。


さて…ここまでやってきましたが、ひとつ重要なことを。
米国産の天文シミュレータソフト celestia では、こんな面倒なことをせずとも、有志の方々が作成されたAdd-onデータを追加することで、同様のことが出来ます。あしからず。
4 0

コメント

mixiユーザー

ログインしてコメントを確認・投稿する