Re: Map graphics [message #19973 is a reply to message #19876] |
Wed, 03 May 2000 00:00  |
Liam E. Gumley
Messages: 378 Registered: January 2000
|
Senior Member |
|
|
Ben Tupper wrote:
> I have a widget routine which displays a map (using Map_Set, etc.)
> with vector overlays. The routine user can call another widget
> application
> that displays some direct graphics plots using !P.Multi = [0,2,2].
> When the user returns to the main routine, plotting the earlier vector
> overlays on the map shows that the plotting parameters have changed.
> All of the vectors get squished toward the center of the graphic.
>
> Before starting the second routine, I have saved a copy of !P.Multi,
> !X.S, !Y.S, and !Map. Each of these is restored after the second
> routine is closed. Short of calling Map_Set again, is there a way I
> can save the mapping/plotting parameters and restore them later?
Ah the joy of global variables....
One way to handle this problem is to 'refresh' the map projection by
calling MAP_SET with the /NOERASE and /NOBORDER keywords to re-create
the map projection whenever you select the graphics window which
contains the map plot.
If you decide to go the system variable route, I would save !X, !Y, !Z,
!P, and !MAP for each graphics window. I use this technique in my IDL
frame tools which allow you to create a map projection in one frame, a
multiple panel plot in the next frame, and then switch between them with
no problems:
http://cimss.ssec.wisc.edu/~gumley/frame.html
Cheers,
Liam.
|
|
|