missioncommand / emp3-web

Extensible Map Platform (EMP) web development kit
Other
18 stars 9 forks source link

Graphic Path type inconsistencies. #333

Open alberto-acevedo opened 7 years ago

alberto-acevedo commented 7 years ago

There 3 path types : Rhumb (constant bearing), great circle (geodesic or shortest distance), and linear.

Cesium and WorldWind are defaulting path type to great circle. The SEC renderer is using rhumb. I checked and the EMP core geo libraries used for calculations are using great circle. So the only component using rhumb is the SEC renderer. There must be an option in the core and API to set the path type for all engines. What path types should be the default?

alberto-acevedo commented 7 years ago

After further discussion and investigation the default path type should be rhumb for all engines. If rhumb is the path type of choice then there is no need to expose a property for path type in the EMP API.

Cesium will add an option for selecting rhumb type : https://github.com/AnalyticalGraphicsInc/cesium/issues/4000.

alberto-acevedo commented 7 years ago

-WW Android is fine handling rhumb

alberto-acevedo commented 6 years ago

WSEC complaint that Android map calculations for graphics is incorrect because they are expecting geodesic and the map is rendering rhumb. The same issue happens also in emp3-web because it is using the same geo libraries Android map uses. The solution is to replace to library that supports geodesic like in the following link:

https://geographiclib.sourceforge.io/scripts/geod-calc.html

Cesium by default does support geodesic. WW web ? Leaflet ?

The Javascript renderer only supports rhumb. I need to talk to @michael-spinelli about the level of effort required to upgrade the renderer to use geodesic.