2020年2月16日日曜日

小ネタ

 ようやく、注視点の変更が可能になった。



 ベクトル演算むずい。何がどこに関わってるのかワカラン。。。

 地球のポリ数を増やすと、1フレームの描画に50msecくらいかかる。拡大していくと時間が短くなるので、ポリの計算とかより、実際にBitmapに書き込む処理が重そう。大雑把な表示なら15度間隔で割れば十分だけど、拡大して表面に近づくと、5度くらいで割りたくなる。Level of Depthでスケーラブルにポリ数を変える? いやいや、ワイヤーフレームでそんな事やったら……


 ALOSって、左右非対称だし、でかいアンテナパネルあるし、前後が分かりづらいのを除けば、形としては面白い。制御は面倒だろうけど。
 ADEOS-IIやHIMAWARI-8/9もアシンメトリーな形状だけど、短寿命だったり、動き回らなかったり。上図のALOSだって軌道としては忠実じゃないけどね。
 あと、構造がかなりシンプルなのでローポリの3Dモデルでもそれなりにそれっぽく見える。
 前後に関しては、例えば後部は全体が膨らんでいたり、DRCアンテナがついていたり、前部は光学系がついていたり、外観的な特徴はあるけど、低ポリかつ凹凸の無いモデルでは、再現できない。

 ALOS-4だと、またアシンメトリーな感じに戻るのかな。打ち上げ時期が先のせいか、JDAにもカテゴリが作られてない。
 ALOS-4は、PARSARが斜めな気がするんだけど、資料によると左右観測ができるようなので、アンテナは水平に付いてるんだろうか?
 ALOS-3は光学衛星なので、合成開口のように斜め観測の要求がないし、開口も小さくできるから、かなりシンプルな外観。打ち上げも20年度と目前なので、いろいろ画像とかも出てきてる。


 とりあえず、表示周りはある程度使えるようになってきたので、軌道伝搬の方に戻るかな。

 そういえば、ポリゴン類は親子孫でネストして、各段で移動や回転ができるので、例えば太陽光パドルを別のSTLから読み込んで、パドル部分を個別に回転させる、みたいなことも、やろうと思えばできるはずなんだよな。飽きたら気分転換にやってみるか。GEOなら太陽方向を計算して回し続ける、とかもできるし。
 もともとは楕円の計算と表示だけの予定だったのに、どんどん機能が増えていく。。。

***
追記
 スケーリングとかオフセットとかネストとか、いろいろな条件が重なって出てくるバグ取りめっちゃ面倒。。。
 衛星の姿勢はQuaternionで持ってるから、推力ベクトルもそれに合わせれば、軌道変更時の姿勢変更とかも表現できるんだよなぁ。ここまで来ると一通り実装しておきたい気もしてくる。
 ポリ表示のON/OFFとか切り替えられれば、ロケット打ち上げのアニメーションとかも、表示できるんだな。いよいよもってZバッファ必要になってくるが。
 それならCesiumとかで作り直すべきという気もする。が、Cesiumって3Dモデル扱うの面倒だった気がする。ファイルフォーマットが特殊で。5年も前の話だし、最近は使いやすくなってたりするかな? あと、Webサーバー建てないと動作確認もできなかった気がする。機能が豊富だと最初が大変だなぁ。後々楽になってくるんだろうけど。
 もうちょっとC#で頑張ろう。。。

0 件のコメント:

コメントを投稿