summaryrefslogtreecommitdiffstats
path: root/funtools/doc/reggeometry.html
diff options
context:
space:
mode:
authorWilliam Joye <wjoye@cfa.harvard.edu>2016-10-26 21:13:00 (GMT)
committerWilliam Joye <wjoye@cfa.harvard.edu>2016-10-26 21:13:00 (GMT)
commitda2e3d212171bbe64c1af39114fd067308656990 (patch)
tree9601f7ed15fa1394762124630c12a792bc073ec2 /funtools/doc/reggeometry.html
parent76b109ad6d97d19ab835596dc70149ef379f3733 (diff)
downloadblt-da2e3d212171bbe64c1af39114fd067308656990.zip
blt-da2e3d212171bbe64c1af39114fd067308656990.tar.gz
blt-da2e3d212171bbe64c1af39114fd067308656990.tar.bz2
rm funtools for update
Diffstat (limited to 'funtools/doc/reggeometry.html')
-rw-r--r--funtools/doc/reggeometry.html1148
1 files changed, 0 insertions, 1148 deletions
diff --git a/funtools/doc/reggeometry.html b/funtools/doc/reggeometry.html
deleted file mode 100644
index faca53f..0000000
--- a/funtools/doc/reggeometry.html
+++ /dev/null
@@ -1,1148 +0,0 @@
-<!-- =defdoc reggeometry reggeometry n -->
-<HTML>
-<HEAD>
-<TITLE>Region Geometry</TITLE>
-</HEAD>
-<BODY>
-
-<!-- =section reggeometry NAME -->
-<H2><A NAME="reggeometry">RegGeometry: Geometric Shapes in Spatial Region Filtering</A></H2>
-
-<!-- =section reggeometry SYNOPSIS -->
-<H2>Summary</H2>
-<P>
-This document describes the geometry of regions available for spatial
-filtering in IRAF/PROS analysis.
-
-<!-- =section reggeometry DESCRIPTION -->
-<H2>Geometric shapes</H2>
-<P>
-Several geometric shapes are used to describe regions. The valid
-shapes are:
-
-<PRE>
- shape: arguments:
- ----- ----------------------------------------
- ANNULUS xcenter ycenter inner_radius outer_radius
- BOX xcenter ycenter xwidth yheight (angle)
- CIRCLE xcenter ycenter radius
- ELLIPSE xcenter ycenter xwidth yheight (angle)
- FIELD none
- LINE x1 y1 x2 y2
- PIE xcenter ycenter angle1 angle2
- POINT x1 y1
- POLYGON x1 y1 x2 y2 ... xn yn
-</PRE>
-
-
-All arguments are real values; integer values are automatically
-converted to real where necessary. All angles are in degrees and
-specify angles that run counter-clockwise from the positive y-axis.
-
-<P>
-Shapes can be specified using "command" syntax:
-<PRE>
- [shape] arg1 arg2 ...
-</PRE>
-or using "routine" syntax:
-<PRE>
- [shape](arg1, arg2, ...)
-</PRE>
-or by any combination of the these. (Of course, the parentheses must
-balance and there cannot be more commas than necessary.) The shape
-keywords are case-insensitive. Furthermore, any shape can be
-specified by a three-character unique abbreviation. For example, one
-can specify three circular regions as:
-
-<PRE>
- "foo.fits[CIRCLE 512 512 50;CIR(128 128, 10);cir(650,650,20)]"
-</PRE>
-
-(Quotes generally are required to protect the region descriptor
-from being processed by the Unix shell.)
-
-<HR>
-
-<P>
-The <B>annulus</B> shape specifies annuli, centered at xcenter,
-ycenter, with inner and outer radii (r1, r2). For example,
-<PRE>
- ANNULUS 25 25 5 10
-</PRE>
-specifies an annulus centered at 25.0 25.0 with an inner radius of 5.0 and
-an outer radius of 10. Assuming (as will be done for all examples in this
-document, unless otherwise noted) this shape is used in a mask of size 40x40,
-it will look like this:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:....................111111111...........
- 33:...................11111111111..........
- 32:.................111111111111111........
- 31:.................111111111111111........
- 30:................11111111111111111.......
- 29:...............1111111.....1111111......
- 28:...............111111.......111111......
- 27:...............11111.........11111......
- 26:...............11111.........11111......
- 25:...............11111.........11111......
- 24:...............11111.........11111......
- 23:...............11111.........11111......
- 22:...............111111.......111111......
- 21:...............1111111.....1111111......
- 20:................11111111111111111.......
- 19:.................111111111111111........
- 18:.................111111111111111........
- 17:...................11111111111..........
- 16:....................111111111...........
- 15:........................................
- 14:........................................
- 13:........................................
- 12:........................................
- 11:........................................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-<HR>
-
-<P>
-The <B>box</B> shape specifies an orthogonally oriented box,
-centered at xcenter, ycenter, of size xwidth, yheight. It requires four
-arguments and accepts an optional fifth argument to specify a rotation angle.
-When the rotation angle is specified (in degrees), the box is rotated by
-an angle that runs counter-clockwise from the positive y-axis.
-
-<P>
-The <B>box</B> shape specifies a rotated box, centered at
-xcenter, ycenter, of size xwidth, yheight. The box is rotated by an angle
-specified in degrees that runs counter-clockwise from the positive y-axis.
-If the angle argument is omitted, it defaults to 0.
-
-<HR>
-
-<P>
-The <B>circle</B> shape specifies a circle, centered at xcenter,
-ycenter, of radius r. It requires three arguments.
-
-<HR>
-
-<P>
-The <B>ellipse</B> shape specifies an ellipse, centered at
-xcenter, ycenter, with y-axis width a and the y-axis length b defined such
-that:
-<PRE>
- x**2/a**2 + y**2/b**2 = 1
-</PRE>
-Note that a can be less than, equal to, or greater than b. The ellipse
-is rotated the specified number of degrees. The rotation is done according
-to astronomical convention, counter-clockwise from the positive y-axis.
-An ellipse defined by:
-<PRE>
- ELLIPSE 20 20 5 10 45
-</PRE>
-will look like this:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:........................................
- 33:........................................
- 32:........................................
- 31:........................................
- 30:........................................
- 29:........................................
- 28:........................................
- 27:............111111......................
- 26:............11111111....................
- 25:............111111111...................
- 24:............11111111111.................
- 23:............111111111111................
- 22:............111111111111................
- 21:.............111111111111...............
- 20:.............1111111111111..............
- 19:..............111111111111..............
- 18:...............111111111111.............
- 17:...............111111111111.............
- 16:................11111111111.............
- 15:..................111111111.............
- 14:...................11111111.............
- 13:.....................111111.............
- 12:........................................
- 11:........................................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-
-<HR>
-
-<P>
-The <B>field</B> shape specifies the entire field as a
-region. It is not usually specified explicitly, but is used implicitly in the
-case where no regions are specified, that is, in cases where either a null
-string or some abbreviation of the string "none" is input.
-<B>Field</B> takes no arguments.
-
-<HR>
-
-<P>
-The <B>pie</B> shape specifies an angular wedge of the entire field,
-centered at xcenter, ycenter. The wedge runs between the two specified angles.
-The angles are given in degrees, running counter-clockwise from the positive
-x-axis. For example,
-<PRE>
- PIE 20 20 90 180
-</PRE>
-defines a region from 90 degrees to 180 degrees, i.e., quadrant 2 of the
-Cartesian plane. The display of such a region looks like this:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:11111111111111111111....................
- 39:11111111111111111111....................
- 38:11111111111111111111....................
- 37:11111111111111111111....................
- 36:11111111111111111111....................
- 35:11111111111111111111....................
- 34:11111111111111111111....................
- 33:11111111111111111111....................
- 32:11111111111111111111....................
- 31:11111111111111111111....................
- 30:11111111111111111111....................
- 29:11111111111111111111....................
- 28:11111111111111111111....................
- 27:11111111111111111111....................
- 26:11111111111111111111....................
- 25:11111111111111111111....................
- 24:11111111111111111111....................
- 23:11111111111111111111....................
- 22:11111111111111111111....................
- 21:11111111111111111111....................
- 20:........................................
- 19:........................................
- 18:........................................
- 17:........................................
- 16:........................................
- 15:........................................
- 14:........................................
- 13:........................................
- 12:........................................
- 11:........................................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-The pie slice specified is always a counter-clockwise sweep between
-the angles, starting at the first angle and ending at the second. Thus:
-<PRE>
- PIE 10 15 30 60
-</PRE>
-describes a 30 degree sweep from 2 o'clock to 1 o'clock, while:
-<PRE>
- PIE 10 15 60 30
-</PRE>
-describes a 330 degree counter-clockwise sweep from 1 o'clock to 2 o'clock
-passing through 12 o'clock (0 degrees). Note in both of these examples that
-the center of the slice can be anywhere on the plane. The second mask looks
-like this:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:111111111111111111111111................
- 39:11111111111111111111111.................
- 38:11111111111111111111111.................
- 37:1111111111111111111111..................
- 36:1111111111111111111111..................
- 35:111111111111111111111...................
- 34:11111111111111111111....................
- 33:11111111111111111111....................
- 32:1111111111111111111....................1
- 31:1111111111111111111..................111
- 30:111111111111111111.................11111
- 29:111111111111111111................111111
- 28:11111111111111111...............11111111
- 27:1111111111111111..............1111111111
- 26:1111111111111111.............11111111111
- 25:111111111111111............1111111111111
- 24:111111111111111..........111111111111111
- 23:11111111111111.........11111111111111111
- 22:11111111111111........111111111111111111
- 21:1111111111111.......11111111111111111111
- 20:111111111111......1111111111111111111111
- 19:111111111111....111111111111111111111111
- 18:11111111111....1111111111111111111111111
- 17:11111111111..111111111111111111111111111
- 16:1111111111.11111111111111111111111111111
- 15:1111111111111111111111111111111111111111
- 14:1111111111111111111111111111111111111111
- 13:1111111111111111111111111111111111111111
- 12:1111111111111111111111111111111111111111
- 11:1111111111111111111111111111111111111111
- 10:1111111111111111111111111111111111111111
- 9:1111111111111111111111111111111111111111
- 8:1111111111111111111111111111111111111111
- 7:1111111111111111111111111111111111111111
- 6:1111111111111111111111111111111111111111
- 5:1111111111111111111111111111111111111111
- 4:1111111111111111111111111111111111111111
- 3:1111111111111111111111111111111111111111
- 2:1111111111111111111111111111111111111111
- 1:1111111111111111111111111111111111111111
-</PRE>
-The pie slice goes to the edge of the field. To limit its scope, pie
-usually is is combined with other shapes, such as circles and annuli,
-using boolean operations. (See below and in "help regalgebra").
-
-<P>
-Pie Performance Notes:
-<P>
-Pie region processing time is proportional to the size of the image,
-and not the size of the region. This is because the pie shape is the
-only infinite length shape, and we essentially must check all y rows
-for inclusion (unlike other regions, where the y limits can be
-calculated beforehand). Thus, pie can run very slowly on large images.
-In particular, it will run MUCH more slowly than the panda shape in
-image-based region operations (such as funcnts). We recommend use of
-panda over pie where ever possible.
-
-<P>
-If you must use pie, always try to put it last in a boolean &&
-expression. The reason for this is that the filter code is optimized
-to exit as soon as the result is know. Since pie is the slowest
-region, it is better to avoid executing it if another region can decide
-the result. Consider, for example, the difference in time required to
-process a Chandra ACIS file when a pie and circle are combined in
-two different orders:
-
-<PRE>
- time ./funcnts nacis.fits "circle 4096 4096 100 && pie 4096 4096 10 78"
-2.87u 0.38s 0:35.08 9.2%
-
- time ./funcnts nacis.fits "pie 4096 4096 10 78 && circle 4096 4096 100 "
-89.73u 0.36s 1:03.50 141.8%
-</PRE>
-
-<P>
-Black-magic performance note:
-
-<P>
-Panda region processing uses a <B>quick test</B> pie region instead of
-the normal pie region when combining its annulus and pie shapes. This
-<B>qtpie</B> shape differs from the normal pie in that it utilizes the
-y limits from the previous region with which it is combined. In a
-panda shape, which is a series of annuli combined with pies, the
-processing time is thus reduced to that of the annuli.
-
-<P>
-You can use the qtpie shape instead of pie in cases where you are
-combining pie with another shape using the && operator. This will
-cause the pie limits to be set using limits from the other shape, and
-will speed up the processing considerably. For example, the above
-execution of funcnts can be improved considerably using this technique:
-
-<PRE>
- time ./funcnts nacis.fits "circle 4096 4096 100 && qtpie 4096 4096 10 78"
-4.66u 0.33s 0:05.87 85.0%
-</PRE>
-
-<P>
-We emphasize that this is a quasi-documented feature and might change in
-the future. The qtpie shape is not recognized by ds9 or other programs.
-
-<HR>
-
-<P>
-The <B>line</B> shape allows single pixels in a line between (x1,y1) and
-(x2,y2) to be included or excluded. For example:
-<PRE>
- LINE (5,6, 24,25)
-<PRE>
-displays as:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:........................................
- 33:........................................
- 32:........................................
- 31:........................................
- 30:........................................
- 29:........................................
- 28:........................................
- 27:........................................
- 26:........................................
- 25:.......................1................
- 24:......................1.................
- 23:.....................1..................
- 22:....................1...................
- 21:...................1....................
- 20:..................1.....................
- 19:.................1......................
- 18:................1.......................
- 17:...............1........................
- 16:..............1.........................
- 15:.............1..........................
- 14:............1...........................
- 13:...........1............................
- 12:..........1.............................
- 11:.........1..............................
- 10:........1...............................
- 9:.......1................................
- 8:......1.................................
- 7:.....1..................................
- 6:....1...................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-<HR>
-
-<P>
-The <B>point</B> shape allows single pixels to be included or
-excluded. Although the (x,y) values are real numbers, they are truncated
-to integer and the corresponding pixel is included or excluded, as specified.
-
-<P>
-Several points can be put in one region declaration; unlike the
-original IRAF implementation, each now is given a different region mask value.
-This makes it easier, for example, for funcnts to determine the number of
-photons in the individual pixels. For example,
-<PRE>
- POINT (5,6, 10,11, 20,20, 35,30)
-</PRE>
-will give the different region mask values to all four points, as shown below:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:........................................
- 33:........................................
- 32:........................................
- 31:........................................
- 30:..................................4.....
- 29:........................................
- 28:........................................
- 27:........................................
- 26:........................................
- 25:........................................
- 24:........................................
- 23:........................................
- 22:........................................
- 21:........................................
- 20:...................3....................
- 19:........................................
- 18:........................................
- 17:........................................
- 16:........................................
- 15:........................................
- 14:........................................
- 13:........................................
- 12:........................................
- 11:.........2..............................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:....1...................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-<HR>
-
-<P>
-The <B>polygon</B> shape specifies a polygon with vertices
-(x1, y1) ... (xn, yn). The polygon is closed automatically: one should
-not specify the last vertex to be the same as the first. Any number of
-vertices are allowed. For example, the following polygon defines a
-right triangle as shown below:
-<PRE>
- POLYGON (10,10, 10,30, 30,30)
-</PRE>
-
-looks like this:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:........................................
- 33:........................................
- 32:........................................
- 31:........................................
- 30:..........11111111111111111111..........
- 29:..........1111111111111111111...........
- 28:..........111111111111111111............
- 27:..........11111111111111111.............
- 26:..........1111111111111111..............
- 25:..........111111111111111...............
- 24:..........11111111111111................
- 23:..........1111111111111.................
- 22:..........111111111111..................
- 21:..........11111111111...................
- 20:..........1111111111....................
- 19:..........111111111.....................
- 18:..........11111111......................
- 17:..........1111111.......................
- 16:..........111111........................
- 15:..........11111.........................
- 14:..........1111..........................
- 13:..........111...........................
- 12:..........11............................
- 11:..........1.............................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-Note that polygons can get twisted upon themselves if edge lines
-cross. Thus:
-<PRE>
- POL (10,10, 20,20, 20,10, 10,20)
-</PRE>
-will produce an area which is two triangles, like butterfly wings, as shown
-below:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:........................................
- 33:........................................
- 32:........................................
- 31:........................................
- 30:........................................
- 29:........................................
- 28:........................................
- 27:........................................
- 26:........................................
- 25:........................................
- 24:........................................
- 23:........................................
- 22:........................................
- 21:........................................
- 20:........................................
- 19:..........1........1....................
- 18:..........11......11....................
- 17:..........111....111....................
- 16:..........1111..1111....................
- 15:..........1111111111....................
- 14:..........1111..1111....................
- 13:..........111....111....................
- 12:..........11......11....................
- 11:..........1........1....................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-<HR>
-
-<P>
-The following are combinations of pie with different shapes
-(called "panda" for "Pie AND Annulus") allow for easy specification of
-radial sections:
-<PRE>
- shape: arguments:
- ----- ---------
- PANDA xcen ycen ang1 ang2 nang irad orad nrad # circular
- CPANDA xcen ycen ang1 ang2 nang irad orad nrad # circular
- BPANDA xcen ycen ang1 ang2 nang xwlo yhlo xwhi yhhi nrad (ang) # box
- EPANDA xcen ycen ang1 ang2 nang xwlo yhlo xwhi yhhi nrad (ang) # ellipse
-</PRE>
-
-The <B>panda</B> (<B>P</B>ies <B>AND</B> <B>A</B>nnuli) shape can be
-used to create combinations of pie and annuli markers. It is analogous
-to a Cartesian product on those shapes, i.e., the result is several
-shapes generated by performing a boolean AND between pies and
-annuli. Thus, the panda and cpanda specify combinations of annulus and
-circle with pie, respectively and give identical results. The bpanda
-combines box and pie, while epanda combines ellipse and pie.
-
-<P>
-Consider the example shown below:
-<PRE>
- PANDA(20,20, 0,360,3, 0,15,4)
-</PRE>
-Here, 3 pie slices centered at 20, 20 are combined with 4 annuli, also
-centered at 20, 20. The result is a mask with 12 regions (displayed in
-base 16 to save characters):
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:..............44444444444...............
- 33:............444444444444444.............
- 32:...........88444444444444444............
- 31:.........888844443333344444444..........
- 30:........88888833333333333444444.........
- 29:........88888733333333333344444.........
- 28:.......8888877733333333333344444........
- 27:......888887777332222233333344444.......
- 26:......888877777622222222333334444.......
- 25:.....88887777766622222222333334444......
- 24:.....88887777666622222222233334444......
- 23:.....88887777666651111222233334444......
- 22:.....88877776666551111122223333444......
- 21:.....88877776666555111122223333444......
- 20:.....888777766665559999aaaabbbbccc......
- 19:.....888777766665559999aaaabbbbccc......
- 18:.....888777766665599999aaaabbbbccc......
- 17:.....88887777666659999aaaabbbbcccc......
- 16:.....888877776666aaaaaaaaabbbbcccc......
- 15:.....888877777666aaaaaaaabbbbbcccc......
- 14:......8888777776aaaaaaaabbbbbcccc.......
- 13:......888887777bbaaaaabbbbbbccccc.......
- 12:.......88888777bbbbbbbbbbbbccccc........
- 11:........888887bbbbbbbbbbbbccccc.........
- 10:........888888bbbbbbbbbbbcccccc.........
- 9:.........8888ccccbbbbbcccccccc..........
- 8:...........88ccccccccccccccc............
- 7:............ccccccccccccccc.............
- 6:..............ccccccccccc...............
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-
-<HR>
-
-<P>
-Several regions with different mask values can be combined in the
-same mask. This supports comparing data from the different regions.
-(For information on how to combine different shapes into a single
-region, see "help regalgebra".) For example, consider the following
-set of regions:
-<PRE>
- ANNULUS 25 25 5 10
- ELLIPSE 20 20 5 10 315
- BOX 15 15 5 10
-</PRE>
-The resulting mask will look as follows:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........................................
- 35:........................................
- 34:....................111111111...........
- 33:...................11111111111..........
- 32:.................111111111111111........
- 31:.................111111111111111........
- 30:................11111111111111111.......
- 29:...............1111111.....1111111......
- 28:...............111111.......111111......
- 27:...............11111.222222..11111......
- 26:...............111112222222..11111......
- 25:...............111112222222..11111......
- 24:...............111112222222..11111......
- 23:...............111112222222..11111......
- 22:...............111111222222.111111......
- 21:..............211111112222.1111111......
- 20:............322211111111111111111.......
- 19:............32222111111111111111........
- 18:............22222111111111111111........
- 17:............222222211111111111..........
- 16:............22222222111111111...........
- 15:............222222222...................
- 14:............22222222....................
- 13:............222222......................
- 12:............33333.......................
- 11:............33333.......................
- 10:........................................
- 9:........................................
- 8:........................................
- 7:........................................
- 6:........................................
- 5:........................................
- 4:........................................
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-Note that when a pixel is in 2 or more regions, it is arbitrarily
-assigned to a one of the regions in question (often based on how a
-give C compiler optimizes boolean expressions).
-
-<P>
-<H2>Region accelerators</H2>
-
-<P>
-Two types of \fBaccelerators</B>, to simplify region specification,
-are provided as natural extensions to the ways shapes are described.
-These are: extended lists of parameters, specifying multiple regions,
-valid for annulus, box, circle, ellipse, pie, and points; and
-<B>n=<int></B>, valid for annulus, box, circle, ellipse, and pie (not
-point). In both cases, one specification is used to define several
-different regions, that is, to define shapes with different mask
-values in the region mask.
-
-<P>
-The following regions accept <B>accelerator</B> syntax:
-<PRE>
- shape arguments
- ----- ------------------------------------------
- ANNULUS xcenter ycenter radius1 radius2 ... radiusn
- ANNULUS xcenter ycenter inner_radius outer_radius n=[number]
- BOX xcenter ycenter xw1 yh1 xw2 yh2 ... xwn yhn (angle)
- BOX xcenter ycenter xwlo yhlo xwhi yhhi n=[number] (angle)
- CIRCLE xcenter ycenter r1 r2 ... rn # same as annulus
- CIRCLE xcenter ycenter rinner router n=[number] # same as annulus
- ELLIPSE xcenter ycenter xw1 yh1 xw2 yh2 ... xwn yhn (angle)
- ELLIPSE xcenter ycenter xwlo yhlo xwhi yhhi n=[number] (angle)
- PIE xcenter ycenter angle1 angle2 (angle3) (angle4) (angle5) ...
- PIE xcenter ycenter angle1 angle2 (n=[number])
- POINT x1 y1 x2 y2 ... xn yn
-</PRE>
-Note that the circle accelerators are simply aliases for the annulus
-accelerators.
-
-<P>
-For example, several annuli at the same center can be specified in one
-region expression by specifying more than two radii. If <B>N</B>
-radii are specified, then <B>N</B>-1 annuli result, with the outer
-radius of each preceding annulus being the inner radius of the
-succeeding annulus. Each annulus is considered a separate region, and
-is given a separate mask value. For example,
-<PRE>
- ANNULUS 20 20 0 2 5 10 15 20
-</PRE>
-specifies five different annuli centered at 20 20, and is equivalent to:
-<PRE>
- ANNULUS 20.0 20.0 0 2
- ANNULUS 20.0 20.0 2 5
- ANNULUS 20.0 20.0 5 10
- ANNULUS 20.0 20.0 10 15
- ANNULUS 20.0 20.0 15 20
-</PRE>
-The mask is shown below:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:.............5555555555555..............
- 38:...........55555555555555555............
- 37:.........555555555555555555555..........
- 36:........55555555555555555555555.........
- 35:......555555555555555555555555555.......
- 34:.....55555555544444444444555555555......
- 33:....5555555544444444444444455555555.....
- 32:....5555555444444444444444445555555.....
- 31:...555555444444444444444444444555555....
- 30:..55555544444444444444444444444555555...
- 29:..55555544444443333333334444444555555...
- 28:.5555554444444333333333334444444555555..
- 27:.5555544444433333333333333344444455555..
- 26:555555444444333333333333333444444555555.
- 25:555554444443333333333333333344444455555.
- 24:555554444433333332222233333334444455555.
- 23:555554444433333322222223333334444455555.
- 22:555554444433333222222222333334444455555.
- 21:555554444433333222111222333334444455555.
- 20:555554444433333222111222333334444455555.
- 19:555554444433333222111222333334444455555.
- 18:555554444433333222222222333334444455555.
- 17:555554444433333322222223333334444455555.
- 16:555554444433333332222233333334444455555.
- 15:555554444443333333333333333344444455555.
- 14:555555444444333333333333333444444555555.
- 13:.5555544444433333333333333344444455555..
- 12:.5555554444444333333333334444444555555..
- 11:..55555544444443333333334444444555555...
- 10:..55555544444444444444444444444555555...
- 9:...555555444444444444444444444555555....
- 8:....5555555444444444444444445555555.....
- 7:....5555555544444444444444455555555.....
- 6:.....55555555544444444444555555555......
- 5:......555555555555555555555555555.......
- 4:........55555555555555555555555.........
- 3:.........555555555555555555555..........
- 2:...........55555555555555555............
- 1:.............5555555555555..............
-</PRE>
-
-<P>
-For boxes and ellipses, if an odd number of arguments is specified,
-then the last argument is assumed to be an angle. Otherwise, the
-angle is assumed to be zero. For example:
-<PRE>
- ellipse 20 20 3 5 6 10 9 15 12 20 45
-</PRE>
-specifies an 3 ellipses at a 45 degree angle:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:........................................
- 38:........................................
- 37:........................................
- 36:........33333333........................
- 35:......333333333333......................
- 34:.....3333333333333333...................
- 33:....333333333333333333..................
- 32:....33333332222233333333................
- 31:...3333332222222222333333...............
- 30:...33333222222222222233333..............
- 29:...333332222222222222223333.............
- 28:...3333222222211112222223333............
- 27:...33332222211111111222223333...........
- 26:...333322222111111111122223333..........
- 25:...3333222211111111111122223333.........
- 24:....3332222111111..1111122223333........
- 23:....333322211111.....11112222333........
- 22:....33332222111.......11112223333.......
- 21:.....33322221111.......11122223333......
- 20:.....33332221111.......11112223333......
- 19:.....33332222111.......11112222333......
- 18:......33332221111.......11122223333.....
- 17:.......33322221111.....111112223333.....
- 16:.......3333222211111..1111112222333.....
- 15:........3333222211111111111122223333....
- 14:.........333322221111111111222223333....
- 13:..........33332222211111111222223333....
- 12:...........3333222222111122222223333....
- 11:............333322222222222222233333....
- 10:.............33333222222222222233333....
- 9:..............3333332222222222333333....
- 8:...............33333333222223333333.....
- 7:.................333333333333333333.....
- 6:..................3333333333333333......
- 5:.....................333333333333.......
- 4:.......................33333333.........
- 3:........................................
- 2:........................................
- 1:........................................
-</PRE>
-Note in the above example that the lower limit is not part of the
-region for boxes, circles, and ellipses. This makes circles and annuli
-equivalent, i.e.:
-<PRE>
- circle 20 20 5 10 15 20
- annulus 20 20 5 10 15 20
-</PRE>
-both give the following region mask:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........................................
- 39:.............3333333333333..............
- 38:...........33333333333333333............
- 37:.........333333333333333333333..........
- 36:........33333333333333333333333.........
- 35:......333333333333333333333333333.......
- 34:.....33333333322222222222333333333......
- 33:....3333333322222222222222233333333.....
- 32:....3333333222222222222222223333333.....
- 31:...333333222222222222222222222333333....
- 30:..33333322222222222222222222222333333...
- 29:..33333322222221111111112222222333333...
- 28:.3333332222222111111111112222222333333..
- 27:.3333322222211111111111111122222233333..
- 26:333333222222111111111111111222222333333.
- 25:333332222221111111111111111122222233333.
- 24:33333222221111111.....11111112222233333.
- 23:3333322222111111.......1111112222233333.
- 22:333332222211111.........111112222233333.
- 21:333332222211111.........111112222233333.
- 20:333332222211111.........111112222233333.
- 19:333332222211111.........111112222233333.
- 18:333332222211111.........111112222233333.
- 17:3333322222111111.......1111112222233333.
- 16:33333222221111111.....11111112222233333.
- 15:333332222221111111111111111122222233333.
- 14:333333222222111111111111111222222333333.
- 13:.3333322222211111111111111122222233333..
- 12:.3333332222222111111111112222222333333..
- 11:..33333322222221111111112222222333333...
- 10:..33333322222222222222222222222333333...
- 9:...333333222222222222222222222333333....
- 8:....3333333222222222222222223333333.....
- 7:....3333333322222222222222233333333.....
- 6:.....33333333322222222222333333333......
- 5:......333333333333333333333333333.......
- 4:........33333333333333333333333.........
- 3:.........333333333333333333333..........
- 2:...........33333333333333333............
- 1:.............3333333333333..............
-
-</PRE>
-
-<P>
-As a final example, specifying several angles in one pie slice
-expression is equivalent to specifying several separate slices with
-the same center. As with the annulus, if <B>N</B> angles are
-specified, then <B>N</B>-1 slices result, with the ending angle of
-each preceding slice being the starting angle of the succeeding slice.
-Each slice is considered a separate region, and is given a separate
-mask value. For example,
-<PRE>
- PIE 12 12 315 45 115 270
-</PRE>
-specifies three regions as shown below:
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:2222222222222222222222222222222222222222
- 39:2222222222222222222222222222222222222221
- 38:2222222222222222222222222222222222222211
- 37:2222222222222222222222222222222222222111
- 36:2222222222222222222222222222222222221111
- 35:3222222222222222222222222222222222211111
- 34:3222222222222222222222222222222222111111
- 33:3322222222222222222222222222222221111111
- 32:3322222222222222222222222222222211111111
- 31:3332222222222222222222222222222111111111
- 30:3332222222222222222222222222221111111111
- 29:3333222222222222222222222222211111111111
- 28:3333222222222222222222222222111111111111
- 27:3333322222222222222222222221111111111111
- 26:3333322222222222222222222211111111111111
- 25:3333322222222222222222222111111111111111
- 24:3333332222222222222222221111111111111111
- 23:3333332222222222222222211111111111111111
- 22:3333333222222222222222111111111111111111
- 21:3333333222222222222221111111111111111111
- 20:3333333322222222222211111111111111111111
- 19:3333333322222222222111111111111111111111
- 18:3333333332222222221111111111111111111111
- 17:3333333332222222211111111111111111111111
- 16:3333333333222222111111111111111111111111
- 15:3333333333222221111111111111111111111111
- 14:3333333333322211111111111111111111111111
- 13:3333333333322111111111111111111111111111
- 12:33333333333.1111111111111111111111111111
- 11:3333333333331111111111111111111111111111
- 10:333333333333.111111111111111111111111111
- 9:333333333333..11111111111111111111111111
- 8:333333333333...1111111111111111111111111
- 7:333333333333....111111111111111111111111
- 6:333333333333.....11111111111111111111111
- 5:333333333333......1111111111111111111111
- 4:333333333333.......111111111111111111111
- 3:333333333333........11111111111111111111
- 2:333333333333.........1111111111111111111
- 1:333333333333..........111111111111111111
-</PRE>
-
-<P>
-The annulus, box, circle, ellipse, and pie shapes also accept an
-<B>n=[int]</B> syntax for specifying multiple regions. The
-<B>n=[int]</b>syntax interprets the previous (shape-dependent)
-arguments as lower and upper limits for the region and creates n
-shapes with evenly spaced boundaries. For example, if <B>n=[int]</B>
-is specified in an annulus, the two immediately preceding radii
-(<B>rn</B> and <B>rm</B>) are divided into <B>int</B> annuli, such
-that the inner radius of the first is <B>rn</B> and the outer radius
-of the last is <B>rm</B>. For example,
-<PRE>
- ANNULUS 20 20 5 20 n=3
-</PRE>
-is equivalent to:
-<PRE>
- ANNULUS 20 20 5 10 15 20
-</PRE>
-If this syntax is used with an ellipse or box, then the two preceding
-pairs of values are taken to be lower and upper limits for a set of
-ellipses or boxes. A circle uses the two preceding arguments for upper
-and lower radii. For pie, the two preceding angles are divided into n
-wedges such that the starting angle of the first is the lower bound
-and the ending angle of the last is the upper bound. In all cases,
-the <B>n=[int]</B> syntax allows any single alphabetic character
-before the "=", i.e, i=3, z=3, etc. are all equivalent.
-
-<P>
-Also note that for boxes and ellipses, the optional angle argument is
-always specified after the <B>n=[int]</B> syntax. For example:
-<PRE>
- ellipse 20 20 4 6 16 24 n=3 45
-<PRE>
-specifies 3 elliptical regions at an angle of 45 degrees:
-
-<PRE>
- 1234567890123456789012345678901234567890
- ----------------------------------------
- 40:........33333333........................
- 39:.....33333333333333.....................
- 38:....33333333333333333...................
- 37:...33333333333333333333.................
- 36:..33333333333333333333333...............
- 35:.3333333333222223333333333..............
- 34:3333333322222222222233333333............
- 33:33333332222222222222223333333...........
- 32:333333222222222222222222333333..........
- 31:3333322222222222222222222333333.........
- 30:33333222222222111122222222333333........
- 29:333332222222111111112222222333333.......
- 28:3333222222211111111111222222333333......
- 27:3333222222111111111111112222233333......
- 26:33332222221111111111111112222233333.....
- 25:33332222211111111.111111112222233333....
- 24:333322222111111......111111222223333....
- 23:333322222111111.......111112222233333...
- 22:33333222221111.........11111222223333...
- 21:333332222211111.........11112222233333..
- 20:.33332222211111.........11111222223333..
- 19:.33333222221111.........111112222233333.
- 18:..33332222211111.........11112222233333.
- 17:..333332222211111.......111111222233333.
- 16:...333322222111111......111111222223333.
- 15:...333332222211111111.111111112222233333
- 14:....333332222211111111111111122222233333
- 13:.....33333222221111111111111122222233333
- 12:.....33333322222211111111111222222233333
- 11:......3333332222222111111112222222333333
- 10:.......333333222222221111222222222333333
- 9:........33333322222222222222222222333333
- 8:.........333333222222222222222222333333.
- 7:..........33333332222222222222223333333.
- 6:...........3333333322222222222233333333.
- 5:.............3333333333222223333333333..
- 4:..............33333333333333333333333...
- 3:................33333333333333333333....
- 2:..................33333333333333333.....
- 1:....................33333333333333......
-</PRE>
-
-<P>
-Both the variable argument syntax and the <B>n=[int]</B> syntax must
-occur alone in a region descriptor (aside from the optional angle for
-boxes and ellipses). They cannot be combined. Thus, it is not valid
-to precede or follow an <B>n=[int]</B> accelerator with more angles or
-radii, as in this example:
-<PRE>
- # INVALID -- one too many angles before a=5 ...
- # and no angles are allowed after a=5
- PIE 12 12 10 25 50 a=5 85 135
-</PRE>
-Instead, use three separate specifications, such as:
-<PRE>
- PIE 12 12 10 25
- PIE 12 12 25 50 a=5
- PIE 12 12 85 135
-</PRE>
-The original (IRAF) implementation of region filtering permitted this
-looser syntax, but we found it caused more confusion than it was worth
-and therefore removed it.
-
-<P>
-NB: Accelerators may be combined with other shapes in a boolean
-expression in any order. (This is a change starting with funtools
-v1.1.1. Prior to this release, the accelerator shape had to be
-specified last). The actual region mask id values returned depend on the
-order in which the shapes are specified, although the total number of
-pixels or rows that pass the filter will be consistent. For this
-reason, use of accelerators in boolean expressions is discouraged in
-programs such as funcnts, where region mask id values are used
-to count events or image pixels.
-
-<P>
-[All region masks displayed in this document were generated using the
-<B>fundisp</B> routine and the undocumented "mask=all" argument (with
-spaced removed using sed ):
-<PRE>
- fundisp "funtools/funtest/test40.fits[ANNULUS 25 25 5 10]" mask=all |\
- sed 's/ //g'
-</PRE>
-Note that you must supply an image of the appropriate size -- in this case,
-a FITS image of dimension 40x40 is used.]
-
-<!-- =section reggeometry SEE ALSO -->
-<!-- =text See funtools(n) for a list of Funtools help pages -->
-<!-- =stop -->
-
-<P>
-<A HREF="./help.html">Go to Funtools Help Index</A>
-
-<H5>Last updated: March 12, 2007</H5>
-
-</BODY>
-</HTML>