解説用の星図をさっさかつくるプロジェクト メモ6 Javascript+fireworks+VB2005編
前のメモでは、解説用の星図を作るのに
・だいたいの下図が自動的に作られ、それを、パーツごとにちょっと修正できるようにする
そのためにVB2005で、fireworks に星図の下図を描かせる命令スクリプトを出力するプログラムを書いた。
これは、案外あっけなく作動したが、細かな部分で問題があり、実用には使えない。
また、作成した星図は、全天域を、投影せずに表示しただけ。実際には、一部拡大、円周、観測座標などでの星図がほしい。
これらに共通する課題は、座標変換と投影法である。
必要な座標変換と投影法を列挙しておく
全天星図用には、
赤道座標(α、δ) → 地球上任意地点での観測座標(Azimuth、Elevation)
平射図法投影
心射図法投影
ステレオ投影(星座早見)
黄道座標(L,B)→赤道座標(α、δ)太陽系天体の座標変換 不要かも
メモ:世の中には、いろいろなことをやる人がいるもので、本格的な星図を趣味で作った人がいる。
天文ファンの滝さんは、修正横メルカトル図法 による美しく実用的な星図を作っている。
これには、二重星や星雲星団などの位置も掲載されている。将来的には参考にしたい。
現在の、座標変換ルーチン部分は、下記の通り。
Public Function fwCircle(ByVal X As Single, ByVal Y As Single, ByVal R As Single) As String
Dim leftX As Single, topY As Single, rightX As Single, bottomY As Single
Dim comString As String = "fw.getDocumentDOM().addNewOval({"
leftX = X - R
topY = Y + R
rightX = X + R
bottomY = Y - R
fwCircle = comString & "left:" & Str(leftX) & ",top:" & Str(topY) & ",right:" & Str(rightX) & ",bottom:" & Str(bottomY) & "});"
Exit Function
End Function
問題の整理だけで終わってしまった。
2008年01月17日 記す