home *** CD-ROM | disk | FTP | other *** search
/ Encyclopedia of Graphics File Formats Companion / GFF_CD.ISO / software / unix / saoimage / saodoc.tar / cursor.txt < prev    next >
Text File  |  1989-11-21  |  10KB  |  191 lines

  1.  
  2. SAOimage cursor mode
  3.  
  4. intro
  5.  
  6. SAOimage provides a variety of "software" cursors to identify or delineate
  7. areas of the image.  These are not to be confused with the workstation's
  8. "mouse cursor" (the icon which moves as you move the physical mouse on the
  9. mouse-pad or desk top).  The software cursors are selected and manipulated
  10. while in cursor mode, which is activated by selecting the "Cursor" button
  11. in the main button menu.  In this section, software cursors will be
  12. referred to as "cursors" and the mouse cursor (also called the pointer)
  13. will be called "the mouse".  Special cursor interactions which work in
  14. conjunction with IRAF are discussed in the section on IRAF.
  15.  
  16. There are five basic cursor shapes: point, polygon, rectangular box, circle,
  17. and ellipse.  The cursor type is selectable by the corresponding button in
  18. the cursor button submenu (see the button menu section).  The latter three
  19. cursor types can be used to make "annuli" of concentric equivalent cursors.
  20. Only one active cursor can exist at any given time.  However, cursors can
  21. be stored, written to disk, and recalled using the "region" features (see
  22. the Region section).  The cursor is always displayed, even when it is not
  23. active (not in cursor mode).  Since the active point cursor has no visible
  24. component, select it when you do not wish to have a cursor visible in your
  25. display.
  26.  
  27. When a cursor is selected, its position, size, and orientation are
  28. manipulated by using the mouse (see the mouse control section).  As a
  29. general rule, the left mouse button controls the position of the cursor,
  30. the middle mouse button controls the shape or size of the cursor, and
  31. the right mouse button controls the angular orientation of the cursor (if
  32. it has one).  You may either "click" or "drag" the mouse.  Positions,
  33. dimensions, and angles (where applicable) are shared among the latter
  34. three cursors.  The point and polygon cursors pose special cases to the
  35. rule; read about them separately, below.
  36.  
  37. When SAOimage is in its verbose mode (see the "etc" section), each time
  38. a cursor manipulation is completed, a message is sent to SAOimage's
  39. associated terminal window, giving the cursor coordinates and
  40. dimensions, in units of image file pixels.
  41.  
  42. positioning
  43.  
  44. To position the cursor by clicking, move the mouse to the pixel where
  45. you want to center the cursor and then click the left mouse button.
  46. To position the cursor by dragging, press and continue holding down
  47. the left mouse button while moving the mouse.  When the cursor is
  48. positioned where you want it to be, release the left mouse button.
  49. Note that you can use the magnifier "tracking" feature to aid in
  50. positioning the cursor (see the "etc" section) and you can use the
  51. keyboard arrow keys to aid in fine positioning the mouse (see the
  52. mouse control or keyboard sections).
  53.  
  54. sizing
  55.  
  56. To adjust the size or shape of the cursor, the same clicking or dragging
  57. procedure is used with the middle mouse button to position the cursor's
  58. edge while its center stays fixed.  When sizing the box or ellipse,
  59. certain restrictions apply, depending on the position of the mouse when
  60. you first press the middle mouse button.  If you are near to a line
  61. through the center and one corner of the box, you will be controlling the
  62. location of the corners of the box (adjusting both dimensions).  If you
  63. are not near one of the diagonals, you will control only the width or
  64. height, depending on the side to which the mouse is closest.  The ellipse
  65. is adjusted by controlling an imaginary box which encloses the ellipse,
  66. having the dimensions of its major and minor axes.  When adjusting the
  67. size of a cursor annuli, since the ratio of width to height is fixed,
  68. the mouse controls the actual edge of the cursor, regardless of its type.
  69.  
  70. rotation angle
  71.  
  72. The right mouse button is used to control the rotation angle of boxes
  73. and ellipses.  When the right mouse button is pressed or held down, the
  74. angle is determined by a line from the center of the cursor to the mouse.
  75. The initial angle (0 degrees) points toward the top of the screen.  To
  76. reset the angle to 0 degrees, click on the "ortho" button in the Cursor
  77. submenu.  For the circle cursor, the right button has no function, while
  78. for points and polygons it performs a special delete function (see below).
  79.  
  80. point cursor
  81.  
  82. The point cursor is used to flag particular image pixels or coordinate
  83. points.  Its position is defined as that of the mouse.  No active cursor
  84. is drawn.  The mouse buttons are mapped directly to region functions (see
  85. regions).  The left mouse key stores a point include region (to flag a
  86. pixel or coordinate of interest).  The middle mouse button stores a point
  87. exclude region (to flag a bad pixel).  With the mouse positioned to point
  88. at the first character in the label of a saved point, pressing the right
  89. mouse button deletes that saved point.
  90.  
  91. Saved points are represented by a label giving either its pixel coordinates
  92. or an index number.  By default, the label is stenciled over the image.
  93. However, if the label is too hard to read, the background around the label
  94. can be made solid by selecting the appropriate command line option.  The
  95. point is at the left edge of the point label, and on a line with the
  96. bottom of the characters (not at the lowest edge of the background).  When
  97. making hard copies, SAOimage always fills in the label backgrounds.
  98.  
  99.  
  100. polygon cursor
  101.  
  102. A polygon is defined by straight lines connecting a set of vertices.  For
  103. the active polygon cursor, each vertex is represented by a tiny box.  To
  104. add additional vertex points, drag or click with the middle mouse button.
  105. The next vertex is always added to the side nearest the mouse pointer when
  106. the middle button is depressed.  To move an existing vertex, point the
  107. mouse directly at it when depressing the middle mouse button.  To delete an
  108. unwanted vertex, point the mouse at the unwanted vertex and click the right
  109. mouse button.
  110.  
  111. The entire polygon can be be moved at any time by using the left mouse
  112. button.  When the left button is depressed, the polygon is moved such that
  113. the nearest vertex has the same position as the mouse pointer.
  114.  
  115. Clicking on any cursor type submenu button, including the "poly", causes
  116. the polygon to be reduced back to a single point.  In other words, if you
  117. switch cursor types, you cannot return to the polygon which you had been
  118. constructing, unless you saved it as a region.
  119.  
  120. cursor annuli
  121.  
  122. Annuli of box, circle, and ellipse cursors are available by selecting the
  123. annuli button from the cursor submenu.  Set the cursor to the desired shape
  124. and angle before selecting the annuli feature, as these cannot be changed
  125. once the annuli feature has been selected.  (The annuli selection changes
  126. the functioning of the middle mouse button and disables any angle control.)
  127.  
  128. Annuli are sized by clicking or dragging with the middle mouse button.
  129. The center, angle, and width to height ratio remain unchanged while sizing.
  130. When the middle mouse button is first depressed, three possible events may
  131. occur, enabling the user to a) create an annulus with an arbitrary radius,
  132. b) create annuli with fixed radius increments, or c) change the size of an
  133. existing annulus.
  134.   a) If the mouse is between existing annuli or not too far from an
  135.      existing annulus, a new annulus will be created sized by the mouse
  136.      position.
  137.   b) If the mouse is well outside the existing cursor annuli, a new cursor
  138.      is create which radius is initially incremented from the outer annulus
  139.      by the same increment as that between the outer two annuli (or the
  140.      annulus and the center if there is only one annulus).  A comparable
  141.      situation applies when the mouse is well inside the innermost annulus.
  142.      However, once the annulus is created, if you proceed to drag the mouse
  143.      with the middle mouse button down, the size of the new annulus reverts
  144.      to being controlled by the mouse.
  145.   c) If the mouse is pointing at the edge of an existing annulus, that
  146.      annulus will be "grabbed" for sizing.
  147.  
  148. To delete an unwanted annulus, point the mouse at or near the unwanted
  149. annulus and click the right mouse button.  The innermost or outermost
  150. annulus can be deleted simply by clicking the right mouse button while
  151. the mouse is inside of outside all of the annuli.
  152.  
  153. All of the annuli are forgotten when any cursor submenu button is
  154. selected, or reselected.  The "annuli" button itself toggles between on
  155. and off.
  156.  
  157.  
  158. cursor coloring
  159.  
  160. Tracking a cursor means updating the displayed cursor as its shape, size,
  161. or location is being manipulated, enabling the user to see the effect of
  162. the manipulation.  Tracking a visible cursor across the display poses a
  163. special problem; how to quickly draw and undraw the cursor as it moves
  164. without wiping out the image underneath.  SAOimage uses two alternative
  165. mechanisms to do this.
  166.  
  167. On halftone workstations, the tracking cursor is drawn simply as the
  168. opposite color (exclusive or) of the image.  Black pixels appear white
  169. and white pixels appear black, as the the cursor tracks across them.
  170. When the tracking action is completed (when the mouse button is
  171. released), the entire display is redrawn, along with the new cursor.
  172.  
  173. The same mechanism, as that used on halftone systems, is used on color
  174. workstations when a large number (>100) of display color levels is needed.
  175. During tracking, the inverse of the display pixels may not result in very
  176. noticeable colors, but at least the "shimmering" of the display as the
  177. cursor moves makes it possible to see where the cursor is.
  178.  
  179. When much cursor manipulation is to be performed, a better alternative is
  180. available.  One bit in each color value is reserved for the cursor.  Then
  181. the cursor may be drawn and undrawn without affecting the display.  This
  182. results in a smooth, continuous display of the cursor throughout any
  183. tracking interaction, with no need to redraw the image at the completion
  184. of the action.  The disadvantage is that the number of available colors
  185. for the image is cut by a factor of two (plus two more colors for the
  186. saved regions and other overlay-like displays).
  187.  
  188. On color workstations, one may switch freely between the overlay and non-
  189. overlay modes by using the "ovlay" toggle button in the "Color" submenu.
  190. See color section for more details.
  191.