This project has moved. For the latest updates, please go here.

Anti-Meridian View

Topics: Data Access, SharpMap v2.0, WinForms Controls
Oct 11, 2007 at 12:23 AM

I am trying to implement an anti-meridian view (ie where the dateline is centred horizintally on the map) . Could anyone advise how best to proceed; I cannot decide whether I should be trying to do this ate the level of the data (I am using shapefiles) or whether I should be using the same map data and customizing the map class of the vector layer etc.

Has anyone done this, and if not what advice on how to proceed ??


Steve hayles
Oct 14, 2007 at 8:11 AM
Hi Steve -

In general, you don't need to do tranformation of a coordinate system to the data... that's what the SharpMap.CoordinateSystem namespace is for. I'm not quite clear, though: do you just want to display the map rotated 90 degrees, or do you want a transverse reprojection of the data?
Oct 15, 2007 at 9:21 AM
Thanks for your reply,

In the perfect world I be able to display the map in a completely 'circular' fashion with any map 'scrolling' going seemlessly through the dateline and returning back to a view on the Greenwich Meridian.

Displaying the map rotated through 180 degrees would be perfect but I would also need the imagetoworld and worldtoimage methods to work.

I am currently referencing the binaries in my project so am getting up to speed with the source code and was after a general approach as to how to fix my problem. Thanks very much for any further help you can provide.

Oct 16, 2007 at 7:00 AM
Hey Steve,

That is an interesting usage scenario - a pan which wraps from east to west. I'm trying to figure out how to do that with the current architecture. The problem is that such an operation is a non-linear transform, and the map view is only set up for linear and affine transforms. I'll make this a work item in case others have some insight into it.
Oct 16, 2007 at 7:01 AM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.