EarthSatellite = _libastro.EarthSatellite readdb = _libastro.readdb readtle = _libastro.readtle constellation = _libastro.constellation separation = _libastro.separation now = _libastro.now millennium_atlas = _libastro.millennium_atlas uranometria = _libastro.uranometria uranometria2000 = _libastro.uranometria2000 # We also create a Python class ("Mercury", "Venus", etcetera) for # each planet and moon for which _libastro offers specific algorithms. for index, classname, name in _libastro.builtin_planets(): exec(''' class %(name)s(_libastro.%(classname)s): "Create a Body instance representing %(name)s" __planet__ = %(index)r ''' % dict(name=name, classname=classname, index=index)) del index, classname, name # We now replace two of the classes we have just created, because # _libastro actually provides separate types for two of the bodies. Jupiter = _libastro.Jupiter Saturn = _libastro.Saturn Moon = _libastro.Moon
EarthSatellite = _libastro.EarthSatellite readdb = _libastro.readdb readtle = _libastro.readtle constellation = _libastro.constellation separation = _libastro.separation now = _libastro.now millennium_atlas = _libastro.millennium_atlas uranometria = _libastro.uranometria uranometria2000 = _libastro.uranometria2000 # We also create a Python class ("Mercury", "Venus", etcetera) for # each planet and moon for which _libastro offers specific algorithms. for index, classname, name in _libastro.builtin_planets(): exec(''' class {name}(_libastro.{classname}): "Create a Body instance representing {name}" __planet__ = {index!r} '''.format(name=name, classname=classname, index=index)) del index, classname, name # We now replace two of the classes we have just created, because # _libastro actually provides separate types for two of the bodies. Jupiter = _libastro.Jupiter Saturn = _libastro.Saturn Moon = _libastro.Moon