ION Script source code:




<!-- Copyright (c) 1997-2002, Research Systems, Inc.  All rights reserved
     Unauthorized reproduction prohibited. -->

<ION_SCRIPT>
<ION_HEADER>
  <TITLE>Scaled Image</TITLE>

  <VARIABLES>
    <VARIABLE_DECL NAME="SCALE_MIN" VALUE="$Form.SCALE_MIN" TYPE="INT" />
    <VARIABLE_DECL NAME="SCALE_MAX" VALUE="$Form.SCALE_MAX" TYPE="INT" />
    <VARIABLE_DECL NAME="SCALE_TOP" VALUE="$Form.SCALE_TOP" TYPE="INT" />
  </VARIABLES>
</ION_HEADER>

<ION_BODY>
  <FONT SIZE="+2">Scaled Image</FONT>
  <BR><BR>

  <!-- Validate the user input -->
  <ION_INCLUDE SRC="ion://ex1_validate.ion"/> 
 
  <ION_IMAGE  WIDTH="$REGION_W" HEIGHT="$REGION_H" TYPE="DIRECT">
    <IDL>
      ; Read in the original image:
      image = read_png( filepath(sub=['products','ion','ion_script', 'examples', 'data'], 'landsat.png'), r, g, b)

      ; Calculate the x subscripts:
      xstart = $CENTER_X - $REGION_W/2
      xend = $CENTER_X + $REGION_W/2 - 1

      ; Calculate the y subscripts:
      ystart = $CENTER_Y - $REGION_H/2
      yend = $CENTER_Y + $REGION_H/2 - 1

      ; Create the region to be displayed:
      region = image[xstart:xend, ystart:yend]

      ; Scale the region:
      scale_region = bytscl(region, MIN=$SCALE_MIN, MAX=$SCALE_MAX, TOP=$SCALE_TOP)

      ; Load the display color table:
      tvlct, r, g, b

      ; Display the region:
      tv, scale_region
    </IDL>
  </ION_IMAGE>

</ION_BODY>
</ION_SCRIPT>