SAOTk Reference Manual
Table of Contents

SAOTk Frame Introduction

The Frame widget is used to display FITS data. It supports both FITS images and binary tables. Multiple extension files are also supported. The widget supports arbitrary zoom, rotation, orientation, and panning. The FITS data is maintained in raw form.  BSCALE, BZERO, and BLANK keywords are supported.

The Frame widget is designed to support rendering of large FITS images and binary tables. For images, the rendering time is constant, and is based on the size of the screen, not the size of the data. Thus, the widget is capable of rendering very large images (8k x 8k or larger), or a large mosaic of images (such as 36 images, each 2k x 4k). Since all rendering is done directly from the raw FITS data, memory requirements are very small.

For binary tables, the rendering time is based on the number of rows or events. Since the the image is binned on the fly, and then rendered to the screen, memory requirements again are very small.

The Frame widget supports a mosaic of images, where each image segment is a separate FITS image. These segments may be located in one multi-extension file, or may be located in a number of different files. The widget uses NOAO mosaic keywords to place each image in its proper place in the overall image space.

One special feature of the Frame widget is the ability to rotate, orient, and zoom an image to align its display to an arbitrary WCS. This feature is very useful for comparisons between images from different instruments or telescopes that have different WCS values.

The Frame widget supports Pseudocolor8, Truecolor8, Truecolor16, and Truecolor24 color environments. The mapping from the raw data to the scaled value is based on the start/stop clip values and the scaling algorithm. Clipping values can be defined using minimum/maximum data values, IRAF zscale, or user specified values. Scaling algorithms currently available are linear, ln (from SAOImage), log (from IRAF), and sqrt.

If the data is a binary table, the data is fbinned in real time, again based on the current block, pan, zoom and rotation values.

The Frame widget can read FITS data from a file, STDIN, or a TCL Channel.

The Frame widget supports a number of different memory management options: memory can be allocated as needed (and swapped to disk), memory can be mapped directly to the FITS file (mmap), or the FITS data can be accessed from a shared memory segment. The default is mmap.

The Frame widget supports a variety of coordinate systems, all defined in the FITS header: Image, Physical, Detector, Amplifier, WCS (FK4, FK5, Galactic, Ecliptic, Linear).

The Frame widget supports PostScript level 1 and level 2 printing. This is not a screen capture process, but a full-featured PostScript driver. A variety of document sizes are available, and grayscale and color imaging is supported. Level 2 output is compressed via RLE and encoded via ASCII85, so the output PostScript size is usually very small.

The Frame widget also supports a variety of markers or regions, including Circle, Ellipse, Rectangle, Polygon, Line, and Point. A marker's position is attached to the image and may be specified in any of the supported coordinated systems. Each marker has a number of properties, including Color, Text, and Name. Each marker's bindings allows specification of behavior such as: whether the marker can be selected, edited, moved, rotated, deleted, etc.