3D axis - draw a 3D coordinate axis system over a 3D field

Name

      3D axis - draw a 3D coordinate axis system over a 3D field

Summary

      Name        3D axis

Type

      mapper

Inputs

     field 3D, any data; OR
		  field 2D uniform or rectilinear

Outputs

    geometry

Parameters

 _N_a_m_e                 _T_y_p_e
                  x axis ticks         slider
                  y axis ticks         slider
                  z axis ticks         slider
                  tick size            slider
                  xz plane position    slider
                  xy plane position    slider
                  yz plane position    slider
                  Show xz plane        toggle
                  Show xy plane        toggle
                  Show yz plane        toggle
                  font size            slider
                  label precision      slider
		  font number	       slider
                  x label density      slider
                  y label density      slider
                  z label density      slider
                  origin labels        type-in
                  Show labels          toggle
		  Axis Min	       typein
		  Axis Max	       typein

Description

      This module generates 3D coordinate axes for a 3D data set.  It will
      also optionally generate tick marks along each axis, numeric labels
      for the tick marks, and movable mesh planes perpendicular to each of
      the axes.
      Functionality has been added so that 2D rectilinear or uniform
      fields will be accepted as well.  The x/y coordinates are provided
      with the field, the z coordinates for the axes are computed from the
      data in the field.
INPUT
      The input is an AVS field which must fit into one of the
	following categories:
	1. Uniform field, 2 or 3 data dimensions, with or without extents.
	2. Rectilinear field, 2 or 3 data dimensions, with or without extents.
	3. Irregular field, N-data dimensions, 3 spatial dimensions,
		with or without extents.
	The data type in the field is irrelevant.  Only the coordinate
	information is looked at.
OUTPUT
      The output is a geometry object consisting of lines forming the axes,
      with optional tick marks, mesh planes, and labels.
PARAMETERS
      x axis ticks
      y axis ticks
      z axis ticks      - These sliders set the number of ticks shown along
                          an axis.
      tick size         - This slider adjusts the size of the ticks marks.
      xz plane position
      xy plane position
      yz plane position - These sliders set the position of the mesh planes.
			  This value is in the coordinate system of the axes,
			  rather than being a relative position along the
			  axes (as in previous releases).
      Show xz plane
      Show xy plane
      Show yz plane     - These switches turn the mesh planes on and off.
                          Mesh line spacing is determined by tick spacing,
                          so that if there are no ticks shown, there will be
                          no mesh planes shown regardless of the setting of
                          these switches.
      font size         - This slider sets the relative label font height.
      label precision   - This slider sets the number of digits shown to the
                          right of the decimal in the numeric labels.
      font number       - A slider used to select from 22 different fonts.
      x label density
      y label density
      z label density   - These sliders set the frequency of label display,
                          relative to tick marks.  That is, if n is a label
                          density setting, a numeric label will be displayed
                          every n ticks along the axis.
      origin labels     - This is a type-in field which is scanned for an x,
                          y, and z.  For any of these characters present in
                          the string, the origin numeric label appropriate
                          for the respective axis is displayed.  This facility
                          is provided to reduce label confusion at the origin.
                          If all axis minimum (origin) values are the same,
                          that value is shown by default at the origin.
      Show labels       - This switch turns tick labeling on and off.
      Axis Min
      Axis Max         - These type-in fields show, and allow adjustment of,
                          the axis minmum (origin) and maximum (end point)
                          values.
                          If the data set is UNIFORM, adjustment of these
                          fields simply changes the values of any displayed
                          numeric labels. This allows the user to make the
                          labeling better reflect the true dimensions of the
                          data.
		Addendum to Uniform fields: Uniform fields may be mapped
			into an arbitrary rectangle in space.  3D Axis may
			be used to plot an axis with respect to the mapped
			rectangle.  If no extents are present in the 
			uniform field, the axes defaults to -1..1 in x,y,z.
                          If the data set is RECTILINEAR or IRREGULAR,
                          adjustment of these fields will change the actual
                          on sreen location of the chosen points, without
                          changing the labels on the unaffected part of the
                          axis.  For example, if the initial minimum x co-
                          ordinate is 10, changing it to 0 would move the
                          axis origin 10 units in the negative x direction.
                          This would have the effect of moving the coordinate
                          axis system origin outside of the displayed data set.
                          But the tick labeled 10 would still be in the same
                          place and it would still be labeled 10.
                          (For further discussion refer to DATA MAPPING
                          below.)
DATA MAPPING
      If the input is a UNIFORM data set then there are no coordinate
      values stored in the data set and the coordinate axes, along with
      the data, are drawn in normalized space (see Addendum above).  
      The axis origin is
      placed in the far lower left corner of the displayed data set.  The
      initial axis min values are set to zero, and the max values are set
      to the respective dimensions of the data set.  These values, and
      therefore the tick label values, are independent of the actual drawing
      on screen.
      If the input is a RECTILINEAR or IRREGULAR data set then the axes,
      along with the data, are drawn in the world space of the data set.  In
      this case, the origin of the axis system is placed at the minimum
      world value for each data dimension, and ticks are labeled accordingly.
      (For a RECTILINEAR data set, this is typically the far lower left
      corner of the displayed data set).  Note that this may or may not
      coincide with the world origin (0,0,0) which is defined by the data
      set's stored coordinate information.  For example, if the minimum
      values of the data set coordinates for each axis is 10, then the point
      (0,0,0) would lie outside of the data set.  If the axis min or max
      values are changed, then the drawn axis will change position or length,
      but labels will remain consistant with the stored data set (world)
      coordinates.

Example

      The following network shows a typical usage of 3D axis:
                      read volume or read field
                     _____________|
                    |             |
                    |       field to float
                 3D axis          |
                    |        isosurface
                    |_____________|
                                  |
                           render geometry
                                  |
                           display pixmap

Related modules

	set extents
AVS Module							      3D_axis
Lawrence Berkeley Laboratory					 31 July 1992