Celestia/1.6.0 功能
程式碼更改,加上目錄更新。程式碼更改已完成,但在簽入之前需要對具體內容進行一些討論。
三軸橢球體應該如何指定?對於恆星,我們使用 SemiAxes [ x y z ] 指定形狀,並將此形狀乘以半徑。但這對於行星來說稍微不方便,因為我們希望能夠簡單地寫成
Mimas
{
SemiAxes [ 209.1 196.2 191.4 ]
}
但是,如果恆星和行星的大小以不同的方式指定,那將是不幸的。我們可以透過對半徑和半軸如何相互作用的更復雜定義來實現這兩種方法。
- 指定了 SemiAxes,未給出半徑:物體半軸為 (sa.x, sa.y, sa.z)
- 指定了半徑,未給出 SemiAxes:物體半軸為 (r, r, r)
- 同時指定了 SemiAxes 和半徑:物體半軸為 (r*sa.x, r*sa.y, r*sa.z)
恆星半軸的順序與 ssc 檔案中其他地方使用的座標系不匹配 - y 和 z 軸已切換,與 Celestia 的內部座標系匹配。與其將此複製到行星,不如更改恆星的工作方式可能更好。
行星和衛星形狀 來自 _IAU/IAG 製圖座標和旋轉元素工作組 (WG)_
_在修訂版 4077 中實施_ --Claurel (討論) 2008 年 2 月 4 日 (UTC) 07:16
我認為這些應該一起考慮,而不是作為單獨的功能
- 觀察者位置座標
- 視赤經/赤緯
- 新的座標網格
- 黃道
- 大地座標(而不是地心緯度/經度)
- 銀河座標
開發列表上的赤經/赤緯討論中出現的一個想法是需要顯示觀察者座標。我認為,無論是否需要它們來理解選擇的物體的位置,這都是正確的。目前,Celestia 顯示觀察者的參考系(跟隨物體和目標物體,跟隨/同步軌道/追蹤/相位鎖定)以及參考系內的速度。顯示速度而不顯示位置似乎是一個嚴重的疏漏!觀察者位置可以以矩形座標或相對於觀察者系中心的球形座標(經度、緯度、高度)顯示。
在 3D 檢視中顯示的一些資料實際上並不屬於那裡:溫度、晝長、自轉速度。這些資料要麼來自可能不可靠的資料,要麼不夠有趣,不值得在 3D 檢視中佔用空間,或者兩者兼而有之。雖然我認為顯示這些資訊仍然有價值,但我認為應該在 GUI 中的資訊面板上顯示它們,在那裡資料可以 همراه با一些解釋性文字。
我認為,在決定哪些資訊進入 3D 檢視時,我們應該優先考慮與觀察者相關的數值,例如距離和視大小。在觀察者的檢視中顯示與觀察者相關的數值有一個易於理解的邏輯。這有一個小的實際後果:與觀察者相關的數值往往在每一幀都會發生變化,因此在每幀都會重新整理一次的檢視中顯示它們很方便。有一些與觀察者無關的基本數值應該出現在 HUD 中。
- 物體型別(恆星、星系、行星等)
- 恆星的光譜型別和絕對星等
- 星系的哈勃型別
- 行星/衛星/小行星的半徑;在適當情況下,三軸尺寸
所有物體的與觀察者相關的數值
- 距離
- 視大小(當不忽略時,> 0.1 角秒)
- 視座標
對於行星
- 相位角
應該從 HUD 中刪除的數值
- 太陽系天體:溫度、晝長
- 恆星:光度、表面溫度、存在行星、自轉速度
“晝長”對於行星來說具有誤導性。它實際上顯示的是恆星自轉速度,而沒有限定詞的“晝長”通常是指太陽日的長度。
_現在為太陽系天體顯示相位角。_ --Claurel (討論) 2008 年 7 月 16 日 (UTC) 16:47
一種可能的增強功能是新增一個標記來顯示當前選定物體的方向。
_推遲到 1.6.0 之後_ --Claurel (討論) 2008 年 10 月 2 日 (UTC) 01:00
_已實施,修訂版 4081_ --Claurel (討論) 2008 年 2 月 4 日 (UTC) 07:14
(按馬丁和其他人的要求)
_在修訂版 4073 中實施_ --Claurel (討論) 2008 年 2 月 27 日 (UTC) 19:35
- minormoon
- surfacefeature
- component
- diffuse
將小型衛星歸類為 minor 將使我們能夠消除巨行星周圍小型衛星軌道的混亂,除非在有人真正想觀察它們的極少數情況下。
feature 和 component 提供了更多分類物體的選項。此外,此類物體永遠不會在遠處以恆星狀圓盤的形式呈現。
可能還需要一個 dwarfplanet 類。
diffuse 類將用於像塵埃羽流和氣體雲這樣的物體。
各種類的預設屬性如下表所示。
Planet Moon Spacecraft Component Invisible Diffuse Visible yes Yes Yes Yes No Yes VisibleAsPoint yes Yes Yes No No No Clickable yes Yes Yes Yes No No(?) Planetshine yes Yes No No No No
4077 版中實現了表面特徵和元件 --Claurel (talk) 2008 年 2 月 4 日 07:12 (UTC)
"4273 版中實現了小衛星和漫射" --Claurel (talk) 2008 年 4 月 14 日 19:07 (UTC)
來自次級光源的照明
[edit | edit source]例如,地球光,環光 - 球諧函式可以用來近似全域性照明嗎?
已實現,但尚未提交到 SVN。仍然需要在計算反射光量時適當考慮相位。 --Claurel (talk) 2008 年 3 月 20 日 17:24 (UTC)
4237 版中完全實現了行星光 --216.231.48.102 (talk) 2008 年 4 月 3 日 18:12 (UTC)
更多高解析度紋理
[edit | edit source]- 地球
- 火星
- 伽利略衛星
- 更多土星衛星
是否可以將這些高解析度紋理打包成單獨的官方包,以便從主包中單獨下載,從而節省頻寬?
資料檔案更新
[edit | edit source]- 新增 Andrew 的 CHARM2 星體半徑測量目錄
- 新增 Selden 的脈衝星目錄
- 我已經有一段時間沒有更新它了,並且遺失了用於生成它的程式 :( Martin (Cham) 從 ATNF 網站進行了更新的翻譯。... Selden (talk) 2008 年 1 月 23 日 12:41 (UTC)
Andrew 提交了 CHARM2 目錄,SVN 修訂版 4462 --Claurel (talk) 2008 年 10 月 2 日 01:02 (UTC)
模型更新
[edit | edit source]- 新增 Itokawa 模型
- 新增改進的 Eros 模型
- 新增改進的 ISS 模型
為標記新增深度排序
[edit | edit source]允許一些標記被標記為“始終位於前景”
在 4119 版中實現 --Claurel (talk) 2008 年 2 月 14 日 00:34 (UTC)
使“修改”功能適用於星體目錄
[edit | edit source]ajtribick 的功能跟蹤請求
在 SVN 修訂版 4416 中實現;為了與 ssc 檔案保持一致,添加了“新增”和“替換”處理。 --Claurel (talk) 2008 年 10 月 2 日 01:04 (UTC)
參考系工作
[edit | edit source](主要是內部內容)
- 清理參考系程式碼;用 1.5.0 參考系重寫舊的參考系(“跟隨”,“同步軌道”等)。
- 在 celx 指令碼中公開 1.5.0 參考系。
- 透過快取來提高參考系的效能
- 為太陽系天體實現參考系層次結構;在渲染器和太陽系瀏覽器中使用此參考系層次結構。
- 為軌道實現速度方法
正在進行中。主要清理已完成,速度方法和快取改進正在測試中。 --Claurel (talk) 2008 年 2 月 14 日 00:39 (UTC)
已實現。軌道還需要更多速度方法。決定在太陽系瀏覽器中繼續使用名稱空間層次結構,因為參考系層次結構會隨時間變化。 --Claurel (talk) 2008 年 2 月 24 日 01:24 (UTC)
所有專案都已實現,儘管一些軌道時間的速度方法尚未完成。決定在太陽系瀏覽器中,名稱空間層次結構比參考系層次結構更合適,因為它不會隨時間變化。 --Claurel (talk) 2008 年 3 月 15 日 01:27 (UTC)
已實現橢圓軌道、取樣軌跡和 SPICE 軌道(截至 4280 版)的速度方法 --Claurel (talk) 2008 年 4 月 16 日 19:19 (UTC)
切換到基於 int64 的 BigFix
[edit | edit source](為了提高效能) 新類已編碼,但需要進行廣泛的測試以確保與舊版本的 Celestia 相容。新類包含高精度乘法運算子,這將使一些參考系程式碼更容易編寫。
已實現;目前正在驗證和分析新類的效能 --Claurel (talk) 2008 年 2 月 4 日 07:13 (UTC)
相對 cel URL
[edit | edit source]在 cel URL 中儲存參考系座標,而不是絕對座標;這將導致更具未來性的 URL。
已實現;正在測試補丁以驗證與現有 cel URL 的相容性 --Claurel (talk) 2008 年 4 月 23 日 20:47 (UTC)
程式碼已在 4318 版中提交。目前,建立版本 3 URL 僅在 Qt4 前端中受支援 --Claurel (talk) 2008 年 5 月 6 日 20:07 (UTC)
Toti 的動畫紋理
[edit | edit source]推遲到 1.6.0 之後。 --Claurel (talk) 2008 年 10 月 2 日 01:10 (UTC)
改進的 SPICE 支援
[edit | edit source]- 處理方向核
- 自動確定有效的時間視窗
- 更好地處理相對路徑
添加了自動時間視窗確定,以及在單個 SpiceOrbit 中支援多個核(修訂版 4128)。 --Claurel (talk) 2008 年 2 月 24 日 01:27 (UTC)
實現了基於 SPICE 參考系的旋轉模型,允許使用航天器方向核。(修訂版 4247)。 --Claurel (talk) 2008 年 4 月 9 日 03:31 (UTC)
可選標記
[edit | edit source]如果可以點選標記的物件並選擇它們,而不管它們表面的亮度,那將很方便。ajtribick 的功能跟蹤請求
推遲到 1.6.0 之後。 --Claurel (talk) 2008 年 10 月 2 日 01:11 (UTC)
celx 指令碼中的備用星體目錄支援
[edit | edit source]Celx 指令碼應該能夠查詢星體的 HD 和 SAO 目錄號。ajtribick 的功能跟蹤請求
在 4116 版中實現 --Claurel (talk) 2008 年 2 月 14 日 00:37 (UTC)
這裡有一個有趣的銀河系星團目錄,包括位置(包括距離)、光度引數、金屬丰度等:http://physwww.physics.mcmaster.ca/%7Eharris/mwgc.dat
球狀星團之前已經討論過,關於它們是否應該被歸類為星系、疏散星團還是一種新型深空天體,存在一些分歧。我目前的觀點是,我們應該新增一種新型深空天體。如果我們這樣做,我們需要選擇一套合適的引數。
由 Fridger 實現,SVN 版本 4447-4449 --Claurel (討論) 2008 年 10 月 2 日 00:58 (UTC)
時間線是一個新的 SSC 屬性,它解決了複雜外掛中經常出現的問題。一個有說服力的例子是卡西尼-惠更斯任務。惠更斯探測器最初與卡西尼號宇宙飛船相連。2004 年 12 月 25 日,它從卡西尼號分離,進行了三週的自由飛行,然後進入土衛六大氣層,最後降落在其表面。使用三個參考系來描述整個任務是最方便的:卡西尼號的本體固定座標系、自由飛行段的土星中心慣性座標系,最後是土衛六的本體固定座標系。在 Celestia 1.5.0 中,一個天體只有一個參考系,因此惠更斯探測器的 SSC 檔案必須使用三個不同的天體來表示探測器。使用時間線,可以為任務的不同階段指定不同的參考系、軌跡和旋轉模型。
這是一個 SSC 檔案中惠更斯任務可能的樣子示例
"Huygens" "Sol"
{
Class "spacecraft"
Mesh "huygens.3ds"
Radius 0.00135
Timeline
[
# Attached to Cassini
{
Beginning "1997 10 15 09:27"
OrbitFrame { BodyFixed { Center "Sol/Cassini" } }
FixedPosition [ ... ]
BodyFrame { BodyFixed { Center "Sol/Cassini" } }
FixedRotation { ... }
}
# Free flight
{
Beginning "2004 12 25 02:01"
OrbitFrame { EclipticJ2000 { Center "Sol/Saturn/Titan" } }
SampledTrajectory { ... }
BodyFrame { EclipticJ2000 { } }
SampledOrientation { ... }
}
# Landed on Titan
{
Beginning "2005 1 14 09:00"
OrbitFrame { BodyFixed { Center "Sol/Saturn/Titan" } }
FixedPosition [ ... ]
BodyFrame { BodyFixed { Center "Sol/Saturn/Titan" } }
FixedRotation { ... }
}
]
}
已實現並提交。需要完成文件。 --Claurel (討論) 2008 年 2 月 24 日 01:25 (UTC)
一些太陽系天體的旋轉不能用繞固定軸的恆定旋轉來充分描述。我們需要為這些天體建立自定義旋轉模型,使用 C++ 函式來計算方向。它們應該透過 CustomRotation SSC 屬性來使用,類似於 CustomOrbit 的工作方式。
我們應該為以下天體建立 CustomRotations
- 地球(歲差和章動)
- 月球
- 土星的主要衛星(尤其是土衛一)
- 伽利略衛星
- 海王星的衛星海衛一
- IAU 行星模型
極點位置的長期項應該被限制,以避免行星在遙遠的過去或將來發生“翻滾”。
已實現 IAU 行星、月球、火星、木星和土星主要衛星的模型。 --Claurel (討論) 2008 年 2 月 24 日 01:36 (UTC)
已實現地球的歲差:P03 模型和 P03 的長期擴充套件。 --Claurel (討論) 2008 年 3 月 15 日 01:24 (UTC)
已實現天王星主要衛星的 IAU 旋轉模型。 --Claurel (討論) 2008 年 5 月 2 日 22:17 (UTC)
Celestia 1.5.0 無法處理距離太陽超過 16,000 光年的恆星。這個限制在版本 4198 中得到了解決,最大距離增加到 1000 萬光年。
在版本 4198 中實現 --Claurel (討論) 2008 年 3 月 22 日 01:35 (UTC)
在 1.5.0 中,太陽系天體和深空天體可以擁有 InfoURLs,但恆星始終使用預設的 SIMBAD URL。能夠為恆星提供 InfoURLs 也將非常有用。與其他擴充套件的恆星屬性一樣,InfoURLs 僅適用於 stc 檔案中定義的恆星。
在版本 4185 中實現 --Claurel (討論) 2008 年 3 月 22 日 01:35 (UTC)
在 1.5.0 中經常出現的一個問題是冥王星的軌道不再可見。這是因為冥王星的軌道是相對於冥王星-卡戎質心重新定義的,而質心的日心軌道沒有顯示。1.6.0 將被修改為,如果繞該參考點執行的天體中存在行星、衛星、小行星或航天器,則渲染參考點的軌道。
在版本 4237 中實現 --Claurel (討論) 2008 年 4 月 9 日 03:30 (UTC)
在 SampledTrajectory 記錄中新增速度向量可以使軌跡在給定記憶體佔用量下更加準確(即相同精度下需要更少的樣本)。HORIZONS 可以生成帶有速度的星曆錶,因此存在現成的 xyz+速度軌跡資料的來源。帶有位置和速度的檔案將具有副檔名 xyzv;這些檔案可以在不修改 ssc 或 stc 檔案的情況下替換 SampledOrbit 或 SampledTrajectory 中的 xyz 檔案。
在版本 4236 中實現 --216.231.48.102 (討論) 2008 年 4 月 3 日 18:17 (UTC)
卡西尼號的當前軌跡只覆蓋了標稱任務,該任務於 2008 年 6 月結束。現在擴充套件任務的軌跡已經可用,我們應該將其包含在 Celestia 中。此外,新的時間線功能可以用於將惠更斯探測器定義為一個單獨的天體,而不是分別定義為連線到卡西尼號和自由飛行任務段的兩個天體。
在 SVN 版本 4420 中添加了新的卡西尼號任務。 --Claurel (討論) 2008 年 10 月 2 日 01:08 (UTC)
除了現有的赤道網格之外,還要新增新的網格型別:水平(地平線)、黃道和銀道。繪製的網格線應該隨著使用者放大而改變,保持大致一致的線密度。網格弧線的細分應該是自適應的,以使它們始終顯示為平滑的。為了使標籤有用,它們必須始終顯示在視野內的點,而不是像當前實現中那樣顯示在固定位置。
在 SVN 版本 4352 中實現 --Claurel (討論) 2008 年 5 月 31 日 02:29 (UTC)
- Celestia 1.5.0 仍然無法計算行星圍繞雙星執行時的溫度(比如星球大戰中的塔圖因)。
- 如果兩顆恆星都有行星,那麼只有其中一顆恆星的行星會出現在太陽系瀏覽器中。而且總是同一個,而不是最近的那個!
太陽系瀏覽器的問題在 Celestia 的 Qt 版本中已經修復。溫度計算將在 1.6.0 之後解決。在我看來,溫度並不重要到應該顯示在疊加文字中的程度。它應該顯示在單獨的資訊視窗中(可能附帶一些關於平衡溫度的解釋——人們發現金星比地球更冷時會感到困惑)。 --Claurel (討論) 2008 年 7 月 16 日 16:52 (UTC)
切換到更嚴格且有更好文件的方法來從HIPPARCOS資料集構建stars.dat。使用新的歸約作為起點。
Andrew從最新版本的HIPPARCOS目錄中產生的新stars.dat。SVN版本4462 --Claurel (討論) 01:10, 2008年10月2日 (UTC)
使使用與恆星和深空天體相同的冒號分隔名稱列表,為太陽系天體分配多個名稱成為可能。
- Qt4介面
- 大氣渲染
- HDR
- 高解析度瓦片渲染
- 附加元件的包系統