Celestia/Celx 脚本/CELX Lua 方法/CEL 命令 chase
外观
chase { }
告诉 Celestia 将活动坐标系设置为chase,它会追随当前选中的对象穿越太空。
该命令没有参数。
CELX 等效-1
基于 observer:setframe() 方法。
- 找到名为 <string> 的目标对象,作为追随对象并存储在 "objectname" 中。
objectname = celestia:find( <string> )
- 创建一个新的追随参考系,以 "objectname" 作为参考对象,并存储在 "frame" 中。
frame = celestia:newframe("chase", objectname)
- 获取活动视图的观察者实例,并将参考系的坐标系设置为 "frame"。
obs = celestia:getobserver() obs:setframe(frame)
总结
objectname = celestia:find( <string> ) frame = celestia:newframe("chase", objectname) obs = celestia:getobserver() obs:setframe(frame)
CELX 等效-2
基于 observer:chase() 方法。
- 找到名为 <string> 的目标对象,作为追随对象并存储在 "objectname" 中。
objectname = celestia:find( <string> )
- 获取活动视图的观察者实例,并激活 "objectname" 上的追随模式。
追随模式与将参考系设置为以 objectname 作为参考对象的追随模式相同。
obs = celestia:getobserver() obs:chase(objectname)
总结
objectname = celestia:find( <string> ) obs = celestia:getobserver() obs:chase(objectname)
示例
以下示例选择月球,将坐标系设置为chase,然后前往月球。
CEL
select { object "Sol/Earth/Moon" } chase { } goto { time 2 } wait { duration 2 }
CELX-1 使用 observer:setframe() 方法
moon = celestia:find("Sol/Earth/Moon") celestia:select(moon) frame = celestia:newframe("chase", moon) obs = celestia:getobserver() obs:setframe(frame) obs:goto(moon, 2.0) wait(2.0)
CELX-2 使用 observer:chase() 方法
moon = celestia:find("Sol/Earth/Moon") celestia:select(moon) obs = celestia:getobserver() obs:chase(moon) obs:goto(moon, 2.0) wait(2.0)