Show Mars and Mercury planets

Hi,

I am the owner of https://sbesada.github.io/online.nasa.satellite.tracker.3d/ is a 3d map to show Nasa satellites & Astros like Moon and I would like to show Mars & Mercury but they are too far from the Earth. Mars is about 350 millions of km from the Earth and Mercury distance is 150Mkm from the Earth depending on the orbit. Now it is not possible to show objects more than 2Million of Km in cesium. It would be possible in the future? and if the answer is yes When?

Regards.

Hi,

Welcome to the Cesium community!

Thank you for sharing your project using Cesium. It looks great!

Regarding your question about showing other planets, I believe this is possible as this application has done it. You can also create ellipsoids and texture them to look like the corresponding planet. Regarding the distance, you may not be able to position the planets at their actual distance from Earth (and this would make them really tiny if you’re viewing the whole Solar System at once), but you can create a ratio between the actual distance and distances in your Cesium app.

There is a similar conversation here and here.

I believe this is possible as this application has done it.

That was awesome! I’m assuming it’s tiled resources in the project, but a streaming with the latest datasets (from NASA or equivalant) would be a total killer. What an awesome Cesium app!

Cheers,

Alex

1 Like

HI,

I understand you. I would like to do something similar to this

With Mars & Mercury. If I divide the distance for a factor, satellites like the ISS appear inside the Earth.

I would be able to do another app for planets, but the Moon would appear inside the Earth.

Thanks for your support.

I am experimenting with planets in cesium in Sandcastle.

I found a great source of planetary maps, but I can’t understand how to display multiple ellipsoids with texture:

To use a map:
Select “get capabilities” in above site for your map;
You will get a link like this (for Mars, cylindrical map):
’ https://planetarymaps.usgs.gov/cgi-bin/mapserv?map=/maps/mars/mars_simp_cyl.map&service=WMS&request=GetCapabilities’

Remove the final “&request=GetCapabilities” and use it as “url” parameter in imageryLayers.addImageryProvider():

url : 'https://planetarymaps.usgs.gov/cgi-bin/mapserv?map=/maps/mars/mars_simp_cyl.map&service=WMS'

in the “getCapabilities” window, look for “” to find the names of available layers; in this example:
Mars_Simple_Cylindrical_Rasters
MOLA_THEMIS_blend
THEMIS
THEMIS_controlled
THEMIS_night
MDIM21
MDIM20
MDIM21_color
…

layers : 'THEMIS',

You will get something like:

var imageryLayers = viewer.imageryLayers;
imageryLayers.addImageryProvider(new Cesium.WebMapServiceImageryProvider({
    url : 'https://planetarymaps.usgs.gov/cgi-bin/mapserv?map=/maps/mars/mars_simp_cyl.map&service=WMS',
    layers : 'THEMIS',
    parameters : {
        transparent : true,
        format : 'image/png'
    },
    tilingScheme: new Cesium.GeographicTilingScheme({ ellipsoid: ellipsoidMars }),
    tileWidth: 512,
    tileHeight: 512
}));
1 Like