トップページ > .CELXスクリプトガイド > 天体

天体


celestia:find


object celestia:find(string:name)
指定した天体のobjectオブジェクトを返します。
name: 指定する天体
地球なら"Earth"、月なら"Moon"と指定します。なお、太陽系外からはこの方法ではアクセスできないのでそれぞれ"Sol/Earth"、"Sol/Earth/Moon"とする事を推奨します。
例:
obs = getobserver() -- 視点を取得 
earth = celestia:find("Sol/Earth")
obs:goto(earth) --移動

celestia:getselection


object celestia:getselection()
選択している天体のobjectオブジェクトを返します。
例:
-- 選択している天体の名前を表示
obj = celestia:getselection()
celestia:flash(obj:name())

celestia:select


celestia:select(object:o)
天体を選択します。
o: 選択する天体
objectオブジェクトで選択します。名前を直接書いても動作しません。
例:
earth = celestia:find("Sol/Earth") -- 地球のobjectオブジェクトを生成
celestia:select(earth) -- 現在の状態を取得

celestia:mark


celestia:mark(object:o)
天体にマーカーをつけます。
o:指定する天体
例:
celestia:show("markers") -- マーカー表示ON
obs = celestia:getobserver()
earth = celestia:find("Sol/Earth") -- 地球のobjectオブジェクトを取得
obs:center(earth, 3) -- 地球を中心に
wait(3)
celestia:mark(earth) -- 地球にマーカー

celestia:unmark


celestia:unmark(object:o)
天体のマーカーを外します。
o:指定する天体
例:
celestia:show("markers") -- マーカー表示ON
obs = celestia:getobserver()
earth = celestia:find("Sol/Earth") -- 地球のobjectオブジェクトを取得
obs:center(earth, 3) -- 地球を中心に
wait(3)
celestia:mark(earth) -- 地球にマーカー
wait(1)
celestia:unmark(earth) -- 地球のマーカーを外す

celestia:unmarkall


celestia:unmarkall(object:o)
天体につけられているマーカーを全て外します。
例:
celestia:show("markers") -- マーカー表示ON
obs = celestia:getobserver()
obj = celestia:find("Alnilam") -- オリオン座の三ツ星のobjectオブジェクトを取得
obs:center(obj, 3) -- 三ツ星を中心に
wait(3)
celestia:mark(obj) -- 真ん中の星にマーカー
wait(1)
obj = celestia:find("Alnitak")
celestia:mark(obj) -- 左の星(天の北極を上として)にマーカー
wait(1)
obj = celestia:find("Mintaka")
celestia:mark(obj) -- 右の星(天の北極を上として)にマーカー
wait(2)
celestia:unmarkall() -- 全てのマーカーを外す

celestia:getstarcount


number celestia:getstarcount()
Celestiaで使用されている恒星の数を表示します。
例:
-- 恒星の数を表示
celestia:flash("Total star count: " .. celestia:getstarcount())

celestia:getstar


number celestia:getstar(number:index_number)
Celestiaで使用されている恒星のインデックスを取得します。
index_number:指定するインデックス
※ Celestia内部でのインデックスです。ヒッパルコス番号とは一致しません。
例:
-- 実行する度にランダムな恒星へ移動
obs = celestia:getobserver() -- observerオブジェクトを取得
s = math.random(celestia:getstarcount()) -- 恒星総数を取得してその範囲内でのランダムな値を設定
obj = (celestia:getstar(s)) -- objectオブジェクトを設定
celestia:select(obj) -- 選択
obs:center(obj, 3)
wait(3)
obs:goto(obj, 3) -- 移動
wait(3)

celestia:getdsocount


number celestia:getdsocount()
1.5.0Celestiaで使用されている深宇宙天体の数を表示します。
例:
-- 深宇宙天体の数を表示
celestia:flash("Total DSO count: " .. celestia:getstarcount())

celestia:getdso


number celestia:getstar(number:index_number)
1.5.0Celestiaで使用されている深宇宙天体のインデックスを取得します。
index_number:指定するインデックス
※ Celestia内部でのインデックスです。ヒッパルコス番号とは一致しません。
例:
-- 実行する度にランダムな深宇宙天体へ移動
obs = celestia:getobserver() -- observerオブジェクトを取得
s = math.random(celestia:getdsocount()) -- 深宇宙天体総数を取得してその範囲内でのランダムな値を設定
obj = (celestia:getdso(s)) -- objectオブジェクトを設定
celestia:select(obj) -- 選択
obs:center(obj, 3)
wait(3)
obs:goto(obj, 3) -- 移動
wait(3)

トップページ > .CELXスクリプトガイド > 天体