public class LazyLoadedCelestialBodies extends Object implements CelestialBodies
CelestialBodyFactory
的行为相匹配。
CelestialBodyFactory
Constructor and Description |
---|
LazyLoadedCelestialBodies(DataProvidersManager dataProvidersManager, TimeScales timeScales, Frame gcrf)
使用给定的辅助数据源创建一个天体工厂。
|
public LazyLoadedCelestialBodies(DataProvidersManager dataProvidersManager, TimeScales timeScales, Frame gcrf)
dataProvidersManager
- 提供JPL天文历辅助数据文件。
timeScales
- 加载天体时要使用的时间尺度集合。
gcrf
- 与ICRF对齐的以地球为中心的参考系。
public void addCelestialBodyLoader(String name, CelestialBodyLoader loader)
name
- 天体的名称(可以是预定义名称之一或用户定义的名称)
loader
- 要为该天体添加的自定义加载器
addDefaultCelestialBodyLoader(String)
, clearCelestialBodyLoaders(String)
, clearCelestialBodyLoaders()
public void addDefaultCelestialBodyLoader(String supportedNames)
supportedNames
- 支持文件名称的正则表达式(如果使用默认的JPL文件名称,则可以为null)
默认加载器查找DE405或DE406 JPL天文历。
addCelestialBodyLoader(String, CelestialBodyLoader)
, addDefaultCelestialBodyLoader(String)
, clearCelestialBodyLoaders(String)
, clearCelestialBodyLoaders()
public void addDefaultCelestialBodyLoader(String name, String supportedNames)
name
- 天体的名称(如果不是预定义名称之一,则方法不执行任何操作)
supportedNames
- 支持文件名称的正则表达式(如果使用默认的JPL文件名称,则可以为null)
默认加载器查找DE405或DE406 JPL天文历。
addCelestialBodyLoader(String, CelestialBodyLoader)
, addDefaultCelestialBodyLoader(String)
, clearCelestialBodyLoaders(String)
, clearCelestialBodyLoaders()
public void clearCelestialBodyLoaders(String name)
调用此方法还会清除通过此CelestialBodyLoader
加载的天体。
public void clearCelestialBodyLoaders()
调用此方法还会清除所有加载的天体。
public void clearCelestialBodyCache(String name)
name
- 天体的名称
public void clearCelestialBodyCache()
调用此方法将从内部缓存中删除所有加载的天体。随后对getBody(String)
或类似方法的调用将导致重新从配置的加载器中加载请求的天体。
public CelestialBody getSolarSystemBarycenter()
CelestialBodies
getSolarSystemBarycenter
在接口 CelestialBodies
中
public CelestialBody getSun()
CelestialBodies
getSun
在接口 CelestialBodies
中
public CelestialBody getMercury()
CelestialBodies
getMercury
在接口 CelestialBodies
中
public CelestialBody getVenus()
CelestialBodies
getVenus
在接口 CelestialBodies
中
public CelestialBody getEarthMoonBarycenter()
CelestialBodies
getEarthMoonBarycenter
在接口 CelestialBodies
public CelestialBody getEarth()
CelestialBodies
getEarth
在接口 CelestialBodies
public CelestialBody getMoon()
CelestialBodies
getMoon
在接口 CelestialBodies
public CelestialBody getMars()
CelestialBodies
getMars
在接口 CelestialBodies
public CelestialBody getJupiter()
CelestialBodies
getJupiter
在接口 CelestialBodies
public CelestialBody getSaturn()
CelestialBodies
getSaturn
在接口 CelestialBodies
public CelestialBody getUranus()
CelestialBodies
getUranus
在接口 CelestialBodies
public CelestialBody getNeptune()
CelestialBodies
getNeptune
在接口 CelestialBodies
public CelestialBody getPluto()
CelestialBodies
getPluto
在接口 CelestialBodies
public CelestialBody getBody(String name)
CelestialBodyFactory
中定义为常量。
如果没有通过调用addCelestialBodyLoader
添加CelestialBodyLoader
,或者之后调用了clearCelestialBodyLoaders
,则addDefaultCelestialBodyLoader
方法将自动调用一次,默认名称为JPL DE星历和一次默认名称为IMCCE INPOP文件。
getBody
在接口 CelestialBodies
name
- 天体的名称
Copyright © 2002-2023 CS GROUP. All rights reserved.