Re: question re: projections

Hi John-

John C Cartwright wrote:

I wanted to confirm my understanding of how IDV 1.2b1 handles map projections and ask a couple of related questions.

First, let me say that we know we need to revamp how we deal with
map projections in the IDV.  However, it's not high on our priority
list at this point.

1) an IDV "projection" combines the map projection with maximum spatial extent ("Default Zoom"). This is a spatial clip of the data and not actually a limit on the minimum scale.

Each Projection has a "class" (e.g. Transverse Mercator) with a
defaultMapArea (spatial bounding box).  I'm not sure what you mean
by a minimum scale.

2) the Default Zoom cannot be edited via the Projection Manager and can only be edited manually in the $HOME/.metapps/DefaultIdv/projections.xml. There is no import facility to bring in an externally-created projection definition.

You can set the defaultMapArea using the rubber band box in the display
under the Edit option.  However, there is no option to type in the
bounding box parameters.

3) only 4 map projections: Geographic (unprojected), Lambert Conformal Conic, Transverse Mercator, and Stereographic are supported.

What you call geographic is what we call LatLon.  We recently added
a Mercator projection.  You could write your own classes to support
other map projections, but there is no easy way to add these into
the projection manager widget (short of modifying the code).

4) When the "Reset Projection With New Data" option is selected, the display is set to the geographic extent of the last dataset added and all previously added datasets are not only clipped/zoomed in, but reprojected to the current map projection. If this option is not selected, datasets using different projections are overlaid without re-projecting the data.

All data in the IDV is reprojected on the fly into the current
projection.  If the option to reprojection is enabled, the
display's map projection will be set to the projection of the data
and all other data will be remapped to that.  If the option is
not selected, then all data is projected into whatever projection
is being used by the display.  Note that in some cases, the projection
is not what you may think of as a geographic projection.  Satellite and
radar images have their own navigation which may depend on the
particular satellite.  The parameters are complex and not easily
broken down into a few well defined numbers.

There is no clipping done to the data itself.  If you use the
View->Clip View At Box menu, then data displayed outside the default
map area is hidden.

Can someone please correct or confirm these assumptions?

Also, can someone point me to the facility for programatically adding/editing Saved Projections as an alternative to using the GUI Projection Manager?

Custom projections are saved in your user resource directory
(typically $HOME/.metapps/DefaultIdv) in projections.xml.  The
system ones are in projections.xml in /ucar/unidata/idv/resources.
We don't advocate editing these files directly, but you could if
you really wanted to (and thus suffer any reprocussions).

Is there a way to get information about the current projection? For example "Reset projection with new data" is true, one adds a new datasource/display, and the projection is changed. How can I find the parameters of this new projection?

There isn't at present, but that could be a future enhancement.  As
I said at the beginning, we need to revamp the whole projection
manager, and perhaps we can add this feature.  Again, some of the
projections are satellite projections and depend on the sat navigation
to interpret.

Thanks so much for the help!

Don
*************************************************************
Don Murray                               UCAR Unidata Program
dmurray@xxxxxxxxxxxxxxxx                        P.O. Box 3000
(303) 497-8628                              Boulder, CO 80307
http://www.unidata.ucar.edu/staff/donm
        "Time makes everyone interesting, even YOU!"
*************************************************************