X and tvrd color scaling problem [message #37534] |
Mon, 05 January 2004 20:39  |
Michael Wallace
Messages: 409 Registered: December 2003
|
Senior Member |
|
|
I'm having a strange problem with tvrd(). When using the Z buffer
everything behaves as I expect. However, when using X tvrd() doesn't
seem to scale the colors correctly.
For an example, I created a new window and added a colorbar. In the
window, everything looks normal. But, if I grab the image with tvrd()
and then immediately display it with tv, the colors get scaled
incorrectly and there's a lot of white which is index 255 of the color
table I'm using.
; create a window and a colorbar (a la Coyote)
device, DECOMPOSE = 0
loadct, 39
window, XSIZE = 400, YSIZE = 400
colorbar, format = '(A1)'
; everything looks normal so far...
; grab the image and display it with tv
image = tvrd()
tv, image
; what happened?! the scaling is funky and there's a lot of white!
However, if I use the Z buffer, everything behaves as I expect.
; create an image and a colorbar (a la Coyote)
device, DECOMPOSE = 0
loadct, 39
set_plot, 'Z', /COPY
device, SET_RESOLUTION = [400, 400]
colorbar, format = '(A1)'
; grab the image and switch back to X to display it
image = tvrd()
set_plot, 'X'
window, XSIZE = 400, YSIZE = 400
tv, image
; the image looks normal and there's no weird scaling
What gives? Why doesn't the X method capture the image correctly?
Mike
|
|
|
|