comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Re: Why is my code truncating my image dimensions?
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Why is my code truncating my image dimensions? [message #81055 is a reply to message #81054] Mon, 13 August 2012 09:03 Go to previous messageGo to previous message
Helder Marchetto is currently offline  Helder Marchetto
Messages: 520
Registered: November 2011
Senior Member
On Monday, August 13, 2012 5:33:51 PM UTC+2, adh...@gmail.com wrote:
> Hi!
>
>
>
> I am trying to read in two datasets (Landsat and NLDAS) using a .ctl file but my code seems to be truncating the last digit of the Landsat image. I have run through various trials to see why this is happening, with not luck. If someone could take a look below and see if a glaring error pops out I would greatly appreciate it!
>
>
>
> NOTE*** The Landsat image has dimensions 7931 x 7001. The NLDAS file has dimensions of 224 x 464. The NLDAS data dimensions read in correctly, but the Landsat image prints 793 and 700. In the code below 'nmx' and 'nmy' represent the Landsat input while 'nx' and 'ny' represent the NDLAS input. My original thought was that the data type was set wrong, but I no longer think this to be the case after several test. Also, the truncation occurs when it is first read in not after the FIX operation (if that matters).
>
>
>
> Any suggestions would be appreciated! Thank you!!
>
>
>
> Here is the code:
>
>
>
> OPENR, 1,fname_ctl
>
>
>
> nmx = 0L & nmy = 0L & nx = 0L & ny = 0L & rad_fname = '' & $
>
> fname0 = '' & fname1 = '' & fname2 = '' & fname3= '' & fname4= '' & fname5= '' & $ fname6= '' & fname7= '' & fname8= '' & fname9= '' & fname10= '' & $
>
> fname11= '' & fname12= '' & fname13= '' & fname14= '' & fname15= '' & $
>
> fname16= '' & fname17= '' & fname18= '' & fname19= '' & fname20= '' & $
>
> fname21= '' & fname22= '' & fname23='' & fname50= ''
>
>
>
> ; Read in each line
>
>
>
> WHILE (~ EOF(1)) DO BEGIN
>
>
>
> READF,1,$
>
> FORMAT = '(I3,3(/,I3),25(/,A100),/,A100)',nmx,nmy,nx,ny,rad_fname, fname0, $
>
> fname1,fname2,fname3,fname4,fname5,fname6,fname7,fname8,fnam e9,fname10,$
>
> fname11,fname12,fname13,fname14,fname15,fname16,fname17,fnam e18,fname19,fname20,$ fname21,fname22,fname23,fname50
>
>
>
> PRINT,$
>
> FORMAT = '(I3,3(/,I3),25(/,A100),/,A100)',nmx,nmy,nx,ny,rad_fname, fname0, $
>
> fname1,fname2,fname3,fname4,fname5,fname6,fname7,fname8,fnam e9,fname10,$
>
> fname11,fname12,fname13,fname14,fname15,fname16,fname17,fnam e18,fname19,fname20,$ fname21,fname22,fname23,fname50
>
>
>
>
>
> ENDWHILE
>
>
>
> ; Convert the read in values to proper type
>
>
>
> nx = FIX(nx, TYPE = 3) ; nx and ny are the dimensions of the NLDAS data.
>
> ny = FIX(ny, TYPE = 3)
>
>
>
> nmx = FIX(nmx, TYPE = 3) ; nmx and nmy are the dimensions of the LANDSAT
>
> nmy = FIX(nmy, TYPE = 3) ; image taken from the header information.
>
>
>
> ****THIS IS WHAT PRINTS OUT-
>
> 793
>
> 700
>
> 224
>
> 464

Hi,
although I have no experience with such images, my first guess is that you need to change the FORMAT in the READF command.
Using '(I3)' will read 3 digits of integer numbers. I would put a I4. Can you check what comes up by doing that?
Therefore try with: FORMAT = '(I4,/,I4,2(/,I4),25(/,A100),/,A100)'
(I have not tested this...!!!)
Cheers,
Helder
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: widget event structure doesn't tranfer
Next Topic: Why is my code truncating my image dimensions?

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 18:12:28 PDT 2025

Total time taken to generate the page: 0.00453 seconds