Catalyst Source-OGraphics Directory On-Line Help

This page was created by the IDL library routine mk_html_help. For more information on this routine, refer to the IDL Online Help Navigator or type:

     ? mk_html_help

at the IDL command line prompt.

Last modified: Sun Oct 26 20:43:12 2008.


List of Routines


Routine Descriptions

CATOBJECTVIEW

[Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW

 PURPOSE:

       This object implements a methodology for displaying object graphics in
       the Catalyst Object Library. The object contains an IDLgrView or IDLgrScene
       object, written in object graphics that can be displayed in an ODrawWidget
       object. If fact, the ODrawWidget will *only* accept a CATOBJECTVEW object.

 AUTHORS:

        FANNING SOFTWARE CONSULTING   BURRIDGE COMPUTING
        1645 Sheely Drive             18 The Green South
        Fort Collins                  Warborough, Oxon
        CO 80526 USA                  OX10 7DN, ENGLAND
        Phone: 970-221-0438           Phone: +44 (0)1865 858279
        E-mail: davidf@dfanning.com   E-mail: davidb@burridgecomputing.co.uk

 SUPERCLASSES:

       CATATOM
       CATCONTAINER
       IDL_CONTAINER

 SYNTAX:

      objectView = OBJ_NEW ('CATOBJECTVIEW')

 CLASS_STRUCTURE:

   class = { CATOBJECTVIEW, $       ; The object class definition.
             INHERITS CATATOM, $    ; Part of the Catalyst Object Library.
             _no_destroy: 0L, $     ; A flag that governs the destroying of theView.
             _theView: Obj_New(), $ ; The IDLgrView or IDLgrScene object to be displayed.
           }

 MODIFICATION_HISTORY:

       Written by: David Fanning, 30 June 2003.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::CLEANUP

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::CLEANUP

 PURPOSE:

       This is the CATOBJECTVIEW object class destructor method.

 SYNTAX:

       Called automatically when the object is destroyed.

 ARGUMENTS:

       None.

 KEYWORDS:

       None.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::CREATEVIEW

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::CREATEVIEW

 PURPOSE:

       This method is a dummy method. Subclassed objects should override this method
       to construct the IDLgrView object that is stored in the object

 SYNTAX:

       aView -> CreateView

 ARGUMENTS:

      None.

 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::EVENTHANDLER

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::EVENTHANDLER

 PURPOSE:

       A dummy event handler method to catch widget events. If events come here, they
       are simply displayed. If you wish to use this event handler, sub-class the CatObjectView
       object and write your own event handler.

 SYNTAX:

       Called from the CATEVENTDISPATCHER utility routine.

 ARGUMENTS:

       Event:  The event structure from a widget event.

 KEYWORDS:

       None.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::GETPROPERTY

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::GETPROPERTY

 PURPOSE:

       This method enables the getting of the CATOBJECTVIEW object properties.

 SYNTAX:

       CATOBJECTVIEW -> GetProperty ...

 ARGUMENTS:

      None.

 KEYWORDS:

     NO_DESTROY:  The current state of the NO_DESTROY flag.

     VIEW:        The IDLgrView or IDLgrScene object contained in the object.

     _EXTRA:      Any keywords appropriate for the superclass SetProperty method.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::INIT

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::INIT

 PURPOSE:

       This method is called upon object creation.

 SYNTAX:

       Called automatically when the object is created thus:

           viewObject = OBJ_NEW ('CATOBJECTVIEW')

 ARGUMENTS:

       theView:    An object of type IDLgrView, IDLgrScene, IDLgrModel, or IDLgrGraphic.
                   If this is not a view or scene, the appropriate heirarchy will be automatically
                   constructed. The viewplane rectangle for all objects that don't contain a view
                   is [0,0,1,1] with the default EYE distance. The view object will be destroyed
                   when the CatObjectView object is destroyed unless the NO_DESTROY keyword is set.

 KEYWORDS:

      NO_DESTROY: If this keyword is set, the view object (theView) will not be destroyed when the
                  CatObjectView object is destroyed.

      _EXTRA:     Any keyword appropriate for the INIT method of the superclass object. If theView
                  is not an IDLgrView object, this keyword can also be used to pass DLgrView keywords
                  to the created IDLgrView object.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::RESIZE

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::RESIZE

 PURPOSE:

       This method resizes the object. Subclass members should override this method.

 SYNTAX:

       self -> Resize, xsize, ysize

 ARGUMENTS:

       xsize:   The new X size.

       ysize:   The new Y size.

 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::SETPROPERTY

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::SETPROPERTY

 PURPOSE:

       This method enables the setting of the CATOBJECTVIEW object properties.

 SYNTAX:

       CATOBJECTVIEW -> SetProperty ...

 ARGUMENTS:

     None.

 KEYWORDS:

     NO_DESTROY:  If this keyword is set, the view object (theView) will not be destroyed when the
                  CatObjectView object is destroyed.

     VIEW:        Set the IDLgrView or IDLgrScene object.

     _EXTRA:      Any keywords appropriate for the superclass SetProperty method.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATOBJECTVIEW::SETVIEW

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATOBJECTVIEW::SETVIEW

 PURPOSE:

       This method is a quick way to set the IDLgrView object into the object.
 SYNTAX:

       aCatObjView -> SetView, theView

 ARGUMENTS:

     theView.

 KEYWORDS:

     VIEW:       Set the IDLgrView or IDLgrScene object.

(See C:\IDL\Catalyst\source\ographics\catobjectview__define.pro)


CATSUFACE::EVENTHANDLER

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSUFACE::EVENTHANDLER

 PURPOSE:

       This method is the event handler for the CatSurface object.

 SYNTAX:

       The method is called automatically when a widget generate an event..

 ARGUMENTS:

     event:  The event structure from the object that caused the event.

 KEYWORDS:

     None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::CLEANUP

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::CLEANUP

 PURPOSE:

       This is the CATSURFACE object class destructor method.

 SYNTAX:

       Called automatically when the object is destroyed.

 ARGUMENTS:

       None.

 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::CONTROLPANEL

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::CONTROLPANEL

 PURPOSE:

       This method creates a control panel for the CATSURFACE object.

 SYNTAX:

       theObject -> ControlPanel, baseObject

 ARGUMENTS:

       baseObject:    The object reference of a base widget for this control to
                      be added to. If not supplied, the control panel will be in a
                      self contained window (i.e., a TOPLEVELBASE object).

 KEYWORDS:

       _EXTRA:       Any keywords appropriate for the CatControlPanel::INIT method.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::CREATE_VEIW

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::CREATE_VEIW

 PURPOSE:

       This method creates the IDLgrView object that will be displayed in the oDrawGraphics window.

 SYNTAX:

       theView = self -> Create_View()

 ARGUMENTS:

       data:               A 2D array of surface data.

       x:                  A vector of X data values.

       y:                  A vector of Y data values.

 KEYWORDS:

       COLORTABLE:         Set this keyword to a number between 0 and 40 to select one
                           of the pre-selected IDL color tables for elevation shading.

       ELEVATION_SHADING: Set this keyword to put elevation shading into effect.

       EXACT:             Set this keyword to a one-, two-,or three-element array to set exact axis
                          scaling for the X, Y, and Z axes, respectively. If Exact is a one-element array,
                          all three axes are set to the same value. For example, to set the X axis to
                          exact scaling and the Y and Z axes to normal scaling, type:

                             IDL> FSC_Surface, Exact=[1,0,0]

       HIDDEN_LINES:      Set this keyword to draw the surface with hidden lines removed. The default
                          is to show hidden lines.

       POSITION:          A two-, four- or six-element array of normalized (0 to 1) coordinates
                          used to position the X, Y, and Z axis in the coordinate space. Uses the form
                          [x0, x1, y0, y1, z0, z1]. In the absence of POSITION information, the Z position
                          is always [0,1] and the X and Y positions are calculated in a manner that
                          preserves the aspect ratio of the surface data.

       SHADED_SURFACE:    Set this keyword to set up a shaded surface plot rather than a wire
                          mesh surface, which is the default.

       TITLE:             A string used as the title of the plot.

       XTITLE:            A string used as the X title of the plot.

       YTITLE:            A string used as the Y title of the plot.

       ZTITLE:            A string used as the Z title of the plot.

       _EXTRA:            This keyword collects otherwise undefined keywords that are passed to the
                          IDLgrSURFACE initialization routine.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::GETPROPERTY

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::GETPROPERTY

 PURPOSE:

       This method enables the getting of the CATSURFACE object properties.

 SYNTAX:

       aCATSURFACE -> GetProperty, ...

 ARGUMENTS:

     None.

 KEYWORDS:

     TRACKBALL:  The trackball object contained within the IDLgrView object.

     _EXTRA:     Any keywords appropriate for the superclass SetProperty method.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::INIT

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::INIT

 PURPOSE:

       This is the CATSURFACE object class initialization method

 SYNTAX:

       Called automatically when the object is created.

 ARGUMENTS:

       data:               A 2D array of surface data.

       x:                  A vector of X data values.

       y:                  A vector of Y data values.

 KEYWORDS:

       COLORTABLE:         Set this keyword to a number between 0 and 40 to select one
                           of the pre-selected IDL color tables for elevation shading.

       ELEVATION_SHADING: Set this keyword to put elevation shading into effect.

       EXACT:             Set this keyword to a one-, two-,or three-element array to set exact axis
                          scaling for the X, Y, and Z axes, respectively. If Exact is a one-element array,
                          all three axes are set to the same value. For example, to set the X axis to
                          exact scaling and the Y and Z axes to normal scaling, type:

                             IDL> FSC_Surface, Exact=[1,0,0]

       HIDDEN_LINES:      Set this keyword to draw the surface with hidden lines removed. The default
                          is to show hidden lines.

       LANDSCAPE:         Set this keyword if you want printing of the surface to be in landscape mode.

       POSITION:          A two-, four- or six-element array of normalized (0 to 1) coordinates
                          used to position the X, Y, and Z axis in the coordinate space. Uses the form
                          [x0, x1, y0, y1, z0, z1]. In the absence of POSITION information, the Z position
                          is always [0,1] and the X and Y positions are calculated in a manner that
                          preserves the aspect ratio of the surface data.

       SHADED_SURFACE:    Set this keyword to set up a shaded surface plot rather than a wire
                          mesh surface, which is the default.

       TITLE:             A string used as the title of the plot.

       XTITLE:            A string used as the X title of the plot.

       YTITLE:            A string used as the Y title of the plot.

       ZTITLE:            A string used as the Z title of the plot.

       _EXTRA:            This keyword collects otherwise undefined keywords that are passed to the
                          IDLgrSURFACE initialization routine or for the superclass INIT method.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::MESSAGEHANDLER

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::MESSAGEHANDLER

 PURPOSE:

       This method responds to "messages" sent from other objects. It is called
       automatically by other objects. To receive messages, it is necessary to
       "register" with the messaging object.

 SYNTAX:

       None. Called by other objects.

 ARGUMENTS:

       TITLE:  The message title. This is the "name" of the message indicated when
               the object registered for messages with the messaging object.

 KEYWORDS:

       DATA:   Information from the SENDER that may be relevant in processing the message.
               Typically, an anonymous structure variable, although it could be anything at all.

       SENDER: An output keyword. This is the object reference of the object that is sending
               the message.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::RESIZE

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::RESIZE

 PURPOSE:

       This method resizes the trackball for the object

 SYNTAX:

       self -> Resize, xsize, ysize

 ARGUMENTS:

       xsize:   The new X size.

       ysize:   The new Y size.

 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SELECTCOLORS

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SELECTCOLORS

 PURPOSE:

       This method is used to allow user-selection of various surface plot colors.
       If no keywords are used, the color of the surface is changed.

 SYNTAX:

       aCatSurface -> SelectColors

 ARGUMENTS:

     None.

 KEYWORDS:

     AXIS:          Set this keyword to allow the user to select a color for all three axes.

     BACKGROUND     Set this keyword to allow the user to select a color for the background color.

     ELEVATION:     Set this keyword to allow the user to select elevation shading colors
                           from a COLORTOOL object.

     SURFACE        Set this keyword to allow the user to select a color for the surface color.

     TITLE:         Set this keyword to allow the user to select a color for the title color.

     XAXIS:         Set this keyword to allow the user to select a color for the X axis color.

     YAXIS:         Set this keyword to allow the user to select a color for the Y axis color.

     ZAXIS:         Set this keyword to allow the user to select a color for the Z axis color.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SETPROPERTY

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SETPROPERTY

 PURPOSE:

       This method enables the setting of the CATSURFACE object properties.

 SYNTAX:

       aCatSurface -> SetProperty ...

 ARGUMENTS:

     None.

 KEYWORDS:

     AXIS_COLOR:           A three-element color triple array, specifying the new axes color.

     BACKGROUND_COLOR:     A three-element color triple array, specifying the new background color.

     ELEVATION_COLORS:     Set this keyword to allow the user to select elevation shading colors
                           from a COLORTOOL object.

     ELEVATION_OFF:        Set this keyword to turn elevation shading off for the surface.

     ELEVATION_ON:         Set this keyword to turn elevation shading on for the surface.

     HIDDEN_LINES:         Set this keyword to 1 to display with surface with hidden lines removed.

     ORIGINAL_ROTATION:    Set this keyword to return the surface to its original rotation.

     SURFACE_COLOR:        A three-element color triple array, specifying the new surface color.

     SURFACE_STYLE:        Use this keyword to select the surface style. Values are:
                              0: Dot surface
                              1: Mesh surface
                              2: Solid surface
                              3: Horizontal line surface
                              4: Vertical line surface
                              5: Lego surface
                              6: Filled lego surface

     TITLE_COLOR:          A three-element color triple array, specifying the new title color.

     XAXIS_COLOR:          A three-element color triple array, specifying the new X axis color.

     YAXIS_COLOR:          A three-element color triple array, specifying the new Y axis color.

     ZAXIS_COLOR:          A three-element color triple array, specifying the new Z axis color.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SURFACELEVATION

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SURFACELEVATION

 PURPOSE:

       This method is the event handler for surface elevation parameters.

 SYNTAX:

       theObject -> SurfaceElevation, event

 ARGUMENTS:

     event:  The event structure from the object that caused the event.


 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SURFACEOUTPUT

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SURFACEOUTPUT

 PURPOSE:

       This method is the event handler for surface output.

 SYNTAX:

       theObject -> SurfaceOutput, event

 ARGUMENTS:

     event:  The event structure from the object that caused the event.


 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SURFACEPRINTING

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SURFACEPRINTING

 PURPOSE:

       This method is the event handler for surface printing.

 SYNTAX:

       theObject -> SurfacePrinting, event

 ARGUMENTS:

     event:  The event structure from the object that caused the event.


 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SURFACEPROPERTIES

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SURFACEPROPERTIES

 PURPOSE:

       This method is the event handler for surface properties.

 SYNTAX:

       theObject -> SurfaceProperties, event

 ARGUMENTS:

     event:  The event structure from the object that caused the event.


 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE::SURFACESTYLE

[Previous Routine] [Next Routine] [List of Routines]
 NAME:
       CATSURFACE::SURFACESTYLE

 PURPOSE:

       This method is the event handler for surface style parameters.

 SYNTAX:

       theObject -> SurfaceStyle, event

 ARGUMENTS:

     event:  The event structure from the object that caused the event.


 KEYWORDS:

      None.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)


CATSURFACE__DEFINE

[Previous Routine] [List of Routines]
 NAME:
       CATSURFACE__DEFINE

 PURPOSE:

       The purpose of this routine is to implement an object graphics surface
       command for display in an ODrawWidget object. To create a rotating surface
       in the draw widget, button events MUST be turned on for the draw widget.

 AUTHORS:

        FANNING SOFTWARE CONSULTING   BURRIDGE COMPUTING
        1645 Sheely Drive             18 The Green South
        Fort Collins                  Warborough, Oxon
        CO 80526 USA                  OX10 7DN, ENGLAND
        Phone: 970-221-0438           Phone: +44 (0)1865 858279
        E-mail: davidf@dfanning.com   E-mail: davidb@burridgecomputing.co.uk

 CATEGORY:

       Objects.

 SYNTAX:

       theSurface = Obj_New("CATSURFACE")
       oDrawWidget -> SetProperty, Button_Events=1
       oDrawWidget -> Add, theSurface

 SUPERCLASSES:

       CATOBJECTVIEW
       CATATOM
       CATCONTAINER
       IDL_CONTAINER

 CLASS_STRUCTURE:

   class = { CATSURFACE, $
             INHERITS CATOBJECTVIEW, $      ; A subclass of the CatObjectView object.
             _origTransform: FltArr(4,4), $ ; The original transformation matrix.
             _trackball: Obj_New(), $       ; The trackball object.
             _rotatingModel: Obj_New(), $   ; The rotating model of the surface.
             _theSurface: Obj_New(), $      ; The surface object.
             _xAxis:Obj_New(), $            ; The X Axis object.
             _yAxis:Obj_New(), $            ; The Y Axis object.
             _zAxis:Obj_New(), $            ; The Z Axis object.
             _nonRotatingLight:Obj_New(), $ ; The non-rotating light object.
             _rotatingLight: Obj_New(), $   ; The rotating light object.
             _fillLight: Obj_New(), $       ; The fill light object.
             _ambientLight: Obj_New(), $    ; The ambient light object.
             _thePalette: Obj_New(), $      ; The surface color palette.
             _colortable: 0L, $             ; The current color table (for elevation colors).
             _surfaceColor:BytArr(3), $     ; The current color of the surface.
             _r: BytArr(256), $             ; The R values of the current color table.
             _g: BytArr(256), $             ; The G values of the current color table.
             _b: BytArr(256), $             ; The B values of the current color table.
             _data: Ptr_New(), $            ; The original Z data (2D) for the surface.
             _x: Ptr_New(), $               ; The original X data for the surface.
             _y: Ptr_New(), $               ; The original Y data for the surface.
             _plottitle: Obj_New(), $       ; The plot title object.
             _colortool: Obj_New() $        ; A color tool.
           }

 MODIFICATION_HISTORY:

       Written by: David W. Fanning, 1 July, 2003.

(See C:\IDL\Catalyst\source\ographics\catsurface__define.pro)