MGHGRBARB__DEFINE Name
MGHgrBarb Purpose
This class implements a set of wind/current barbs by joining up the
appropriate vertices in a single IDLgrPolyline.
Category
Object graphics.
Superclass
IDLgrModel
Properties
Properties not recognised by this class are passed to the barb
object (an IDLgrPolyline). The following properties are supported
directly
BARB_COLORS (Init)
A vector of indexed or RGB colours (ie an [n] or [3,n] byte
array) specifying the colour of each barb.
DATAU, DATAV, DATAW (Init)
These specify the displacement of the tip of each barb from
its base in the x, y & z directions respectively. Optional,
default = 0.
DATAX, DATAY, DATAZ (Init)
Each of these is a scalar or vector specifying the location
of the base of each barb. Optional, default = 0.
NORM_SCALE (Init, Get, Set)
A 3-element boolean vector specifying how the SCALE property is to
be interpreted for each direction. If NORM_SCALE is true for a
given direction, then the corresponding SCALE is interpreted
as a length in normalised coordinates, otherwise it is
interpreted as a length in data coordinates (the same ones as used
for DATA[X,Y,Z]).
SCALE (Init, Get, Set)
A 3-element double-precision vector specifying the length of a
unit velocity vector. This property can be (and often will be)
passed to Init or GetProperty as a scalar. Default is [1,1,1].
To Do
Direct appropriate keywords (e.g. HIDE) to the model rather than
the atom. Separate colour recalculation from dimension
recalculation--you don't really need to recalculate all the
dimensions when the colour is changed.
###########################################################################
This software is provided subject to the following conditions:
1. NIWA makes no representations or warranties regarding the
accuracy of the software, the use to which the software may
be put or the results to be obtained from the use of the
software. Accordingly NIWA accepts no liability for any loss
or damage (whether direct of indirect) incurred by any person
through the use of or reliance on the software.
2. NIWA is to be acknowledged as the original author of the
software where the software is used or presented in any form.
###########################################################################
Modification History
Mark Hadfield, 1998-02:
Written as MGHgrBarb.
Mark Hadfield, 1999-05:
Added DATAZ & BARB_COLORS.
Mark Hadfield, 2000-07:
Substantially rewritten. The meaning of the SCALE keyword has
changed so that it is more logical and extensible to the Z
dimension--this is NOT BACKWARD-COMPATIBLE. Changed from a
subclass of IDLgrPolyline to a subclass of IDLgrModel (with
SELECT_TARGET set) in preparation for supporting symbols. Added
DATAW property for full 3D support.
Mark Hadfield, 2001-07:
Updated for IDL 5.5.
Mark Hadfield, 2004-07:
- Renamed MGHgrBarb.
- Handling of scaling changed: the default is now to scale in data
coordinates and the NORM_SCALE keyword has been added to support
the original normalised scaling.
Mark Hadfield, 2007-09:
- Fixed bug: single precision calculations used in CalculateDimensions
methods when the object's DOUBLE property is set.
- Changed default value of DOUBLE property to 1.