
VectorField (vf) Resources
- vfCopyData
-
The boolean resource vfCopyData allows you to control whether
the VectorField object always copies the elements of
the vfDataArray into a private memory area. If you set
vfCopyData False, VectorField will not copy
the vfXArray or the vfYArray data and will try to
avoid making a copy of the vfDataArray data. You are then
responsible for ensuring that the data memory locations for these
arrays are preserved intact for the lifetime of the
VectorField. In return, you may save dynamic memory
space. Note that a number of circumstances require
VectorField to copy the data regardless. These
include supplying data of any type other than NhlTFloat, requesting
that the data dimensions be exchanged, or setting a stride value greater
than 1 in either the X or the Y dimension. Also, if you
specify a data array subset and one or both of the coordinate array
resources (vfXArray and/or vfYArray) is
non-
NULL
, copies are made of the subsetted part of the coordinate array.Default: True
- vfDataArray
-
This resource specifies a 3-dimensional array containing the data
comprising a vector field. You must specify either
vfDataArray or the two resources vfUDataArray
and vfVDataArray in order to create a
VectorField object. The slowest varying
dimension (first dimension in C, third dimension in Fortran) must
contain two elements, representing the two components of the
field. The first element represents the U data and the second the
V data (before the effect of vfExchangeUVData is taken
into account). The fastest varying dimension represents the
X Axis of the data coordinate system; vfXC...
VectorField resources always relate to this
dimension. The middle dimension represents the data coordinate
Y Axis; vfYC... resources always relate to this
dimension.
Although the VectorField object always converts the data into type NhlTFloat before passing them along to recipient objects, it accepts data arrays containing data of any of the following types:
- NhlTByte
- NhlTCharacter
- NhlTShort
- NhlTInteger
- NhlTLong
- NhlTFloat
- NhlTDouble
Default: NULL
- vfExchangeDimensions
-
When this boolean resource is set True, VectorField
exchanges the X and Y dimensions of the data before passing them to
the recipient object. Resouces associated with the X-Axis are applied
to the Y-Axis of the output data and vice-versa. This will have the
effect of turning the plot on its side when rendered by a plot
object. Note that since the U and V components implicitly exist in the
coordinate system that is exchanged, these arrays must be exchanged at
the same time in order maintain an equivalent relationship between the
elements of the field. You can do this by inverting the value of the
resource vfExchangeUVData.
Whenever vfExchangeDimensions is True, VectorField must copy the data, regardless of the setting of the vfCopyData resource.
Default: False
- vfExchangeUVData
-
When this boolean resource is set True, VectorField
exchanges the roles of the U and V arrays. If you supply the data
using the single array resource vfDataArray, the two elements
of the slowest varying dimension are traded. If
vfExchangeDimensions is set True, you must invert the current
value of vfExchangeUVData in order to preserve the current
relationship of the elements of the vector field. If vfPolarData
is set True, then this resource controls which array is used for the
magnitude and which for the angular direction.
Default: False
- vfMagMaxV
-
By default the VectorField object sets
vfMagMaxV to the largest vector magnitude computed from the
individual vector components in the data arrays. However, if you
set the value of this resource, VectorField
assumes that the set value is, in fact, the maximum magnitude. You may set
vfMagMaxV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfMagMinV
-
By default the VectorField object sets
vfMagMinV to the smallest vector magnitude computed from the
individual vector components in the data arrays. However, if you
set the value of this resource, VectorField
assumes that the set value is, in fact, the minimum magnitude. You may set
vfMagMinV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfMissingUValueV
-
If vfSingleMissingValue is False and
you set vfMissingUValueV to a non-NULL value,
VectorField treats occurrences of its value in the
U data array as representing an undefined data point. If left unset,
VectorField assumes that all values in the U data array
are valid.
If vfSingleMissingValue is True and you set vfMissingUValueV to a non-NULL value, VectorField treats occurrences of its value in either the U or V data arrays as representing an undefined data point. If vfMissingUValueV is not set, but vfMissingVValueV is set, then occurrences of the value of vfMissingVValueV in either array causes the data point to be treated as undefined. If neither vfMissingUValueV nor vfMissingVValueV is set, then VectorField assumes that all values in the U data array are valid.
You may set vfMissingVValueV using any of the data types VectorField accepts for the vfDataArray resource.
Default: NULL
- vfMissingVValueV
-
If vfSingleMissingValue is False and
you set vfMissingVValueV to a non-NULL value,
VectorField treats occurrences of its value in the
V data array as representing an undefined value. If left unset,
VectorField assumes that all values in the V data array
are valid.
If vfSingleMissingValue is True and you set vfMissingVValueV to a non-NULL value, its value is ignored unless vfMissingUValueV is not set. If vfMissingUValueV is not set, VectorField treats occurrences of the value of vfMissingVValueV in either the U or V data arrays as representing an undefined data point. If neither vfMissingUValueV nor vfMissingVValueV is set, then VectorField assumes that all values in the U data array are valid.
You may set vfMissingVValueV using any of the data types VectorField accepts for the vfDataArray resource.
Default: NULL
- vfPolarData
-
If this resource is set True, the arrays passed into
VectorField are assumed to represent the vector field
in terms of magnitude and angular direction rather than by orthogonal
vector components. By default the U array is interpreted as the magnitude and
the V array as direction. However, if the resource
vfExchangeUVData is set True, the V array will be assumed to
contain the magnitude and the U array the direction.
Default: False
- vfSingleMissingValue
-
When this boolean resource is set True, VectorField
assumes that any missing values in both the U and V arrays are
represented by the same sentinel value. In this case, you need set
only one of the resources vfMissingUValueV and
vfMissingVValueV to indicate the sentinel missing value. If
both are set, then the value given by vfMissingVValueV is
ignored. When vfSingleMissingValue is set False, then the
U and V array are examined separately for their individual missing values,
as specified by the resources vfMissingUValueV and
vfMissingVValueV.
Default: False
- vfUDataArray
-
If vfDataArray is not set, then this resource and
vfVDataArray must both be specified in order to create a
VectorField object. Together, these resources
specify the data defining a vector field using two arrays
specifying the vector components. The fastest varying dimension
(second dimension in C, first dimension in Fortran) represents the
X Axis of the data coordinate system; vfXC...
VectorField resources always relate to this
dimension. The other dimension represents the data coordinate
Y Axis; vfYC... resources always relate to this
dimension.
You may set vfUDataArray using any of the data types VectorField accepts for the vfDataArray resource.
Default: NULL
- vfUMaxV
-
By default the VectorField object sets
vfUMaxV to the largest value in the U data array. However,
if you set the value of this resource, VectorField
does not process the array to find the maximum value. Instead it
assumes that the set value is, in fact, the maximum value. You may set
vfUMaxV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfUMinV
-
By default the VectorField object sets
vfUMinV to the smallest value in the U data array. However,
if you set the value of this resource, VectorField
does not process the array to find the minimum value. Instead it
assumes that the set value is, in fact, the minimum value. You may set
vfUMaxV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfVDataArray
-
If vfDataArray is not set, then this resource and
vfUDataArray must both be specified in order to create a
VectorField object. Together, these resources
specify the data defining a vector field using two arrays
specifying the vector components. The fastest varying dimension
(second dimension in C, first dimension in Fortran) represents the
X Axis of the data coordinate system; vfXC...
VectorField resources always relate to this
dimension. The other dimension represents the data coordinate
Y Axis; vfYC... resources always relate to this
dimension.
You may set vfVDataArray using any of the data types VectorField accepts for the vfDataArray resource.
Default: NULL
- vfVMaxV
-
By default the VectorField object sets
vfVMaxV to the largest value in the V data array. However,
if you set the value of this resource, VectorField
does not process the array to find the maximum value. Instead it
assumes that the set value is, in fact, the maximum value. You may set
vfVMaxV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfVMinV
-
By default the VectorField object sets
vfVMinV to the smallest value in the V data array. However,
if you set the value of this resource, VectorField
does not process the array to find the minimum value. Instead it
assumes that the set value is, in fact, the minimum value. You may set
vfVMaxV using any of the data types
VectorField accepts for the vfDataArray
resource.
Default: <dynamic>
- vfXArray
-
If vfXArray is NULL, the coordinates of the X
(fastest-varying) axis of the data grid are assumed to be regularly
spaced, and the endpoints are determined by the values of
vfXCStartV and vfXCEndV.
If vfXArray is set using a 1D array, its values represent sequential coordinate locations along the X-Axis (the fastest-varying dimension) of the data grid. The array must contain the same number of elements as this data array dimension. VectorField requires the coordinate array values to increase or decrease monotonically. If the coordinate array input does not have the right number of elements or is non-monotonic, VectorField issues a warning and restores vfXArray to its previous, possibly
NULL
, value. If the input array is valid, VectorField replaces the current value of vfXCStartV with the value of the first element of vfXArray, and the current value of vfXCEndV with the value of the last element.If vfXArray is set using a 2D array, it must have the same dimension sizes as vfYArray and the two fastest varying dimensions of the data grid. Each element specifies the location along the X-Axis of a single data grid cell center. For 2D coordinates, there is no requirement that the coordinates be monotonic. However, if the coordinates provided are not well-ordered as expected by the 2D-coordinate tranvformation routines, errors will occur when the Draw method is called. If the array does not contain valid dimension sizes, VectorField issues a warning restores vfXArray to its previous, possibly
NULL
, value.You can specify vfXArray using a one or two dimensional array of any of the types allowed for vfDataArray.
Default: NULL
- vfXCActualEndF
-
When an ending location for a subset of the data is specified using
vfXCEndSubsetV, this location might well fall between two
data points. VectorField selects an ending index for
the array subset such that the requested location is included within
the subset. Thus the subset array, as delivered to the receiving
object, may represent a slightly larger area of the data coordinate
space than requested. In this case, the read-only resource
vfXCActualEndF is set to the value of the actual ending
location of the data subset along the X Axis.
When subsets are not specified, or are specified using the array indexing resources, vfXCActualEndF has the same value as vfXCEndSubsetV.
Default: <dynamic>
- vfXCActualStartF
-
When a starting location for a subset of the data is specified using
vfXCStartSubsetV, this location might well fall between two
data points. In this case, VectorField selects a
beginning index for the array subset such that the requested location
is included within the subset. Thus the subset array, as delivered to
the receiving object, may represent a slightly larger area of the data
coordinate space than requested. The read-only resource
vfXCActualStartF is set to the value of the actual starting
location of the data subset along the X Axis.
When subsets are not specified, or are specified using the array indexing resources, vfXCActualStartF has the same value as vfXCStartSubsetV.
Default: <dynamic>
- vfXCEndIndex
-
This resource specifies the larger of two indexes along the X-Axis
data dimension. Valid values range from one greater than the value of
vfXCStartIndex to one less than the size of the dimension. It
is one of four resources used to specify a rectangular subset of the
data using array indexes. This is the only form of subsetting
VectorField supports when vfXArray and
vfYArray are set using 2D coordinate arrays,
Unless vfXArray is set with a 2D array, explicitly setting vfXCEndSubsetV overrides any value set for vfXCEndIndex and causes it to be set to the smallest array index value such that the requested data coordinate location is included within the subset. Otherwise, if you set vfXCEndIndex, vfXCEndSubsetV will be set based on its value.
vfXCEndIndex retains its value when the data array changes, unless the X-Axis dimension size also changes. In this case, assuming neither vfXCEndSubsetV nor vfXCEndIndex is explicitly set at the same time, vfXCEndIndex is set to the size of the X-Axis dimension minus one.
Default: <dynamic>
- vfXCEndSubsetV
-
vfXCEndSubsetV specifies the ending location along the
X Axis of a rectangular sub-array of the data.
It should be set to a value within the data
coordinate extent as established by the values of vfXCStartV and
vfXCEndV. If it is outside the coordinate
extent, VectorField issues a warning and sets it to
the value of vfXCEndV. If the values of
vfXCStartSubsetV and vfXCEndSubsetV are oppositely
directed from the direction established by vfXCStartV and
vfXCEndV, VectorField issues a warning and
exchanges their values. When you do not explicitly set a value for
vfXCEndSubsetV:
- at initialization or when the X-Axis dimension size changes, if vfXCEndIndex is not set, vfXCEndSubsetV takes the value of vfXCEndV;
- else if vfXCEndIndex is set, or there is a change to vfXCStartV, vfXCEndV, or vfXArray, vfXCEndSubsetV takes the data coordinate value indexed by the value of vfXCEndIndex;
- else vfXCEndSubsetV retains its current value.
Since the data grid consists of data located at discrete points, the location specified by vfXCEndSubsetV might well fall between two data points. In this case, VectorField selects an ending index for the array subset such that the requested location is included within the subset. Thus the subset array, as delivered to the receiving object, may represent a slightly larger area of the data coordinate space than requested. Get the value of the read-only resource vfXCActualEndF in order to find the exact end of the subset along the X Axis. You may set vfXCEndSubsetV using any of the data types that VectorField accepts for the vfDataArray resource.
If vfXArray is set with a valid 2D coordinate array, VectorField ignores any value set for vfXCEndSubsetV. If a subset has been set using the indexing resources, vfXCEndSubsetV is set to the maximum value found within the specified subset of vfXArray. Otherwise vfXCEndSubsetV is set to the same value as vfXCEndV.
Default: <dynamic>
- vfXCEndV
-
Ordinarily, this resource specifies the location along the X Axis of
the last element of the fast-varying dimension of the data.If the
array resource vfXArray is NULL, you can set
vfXCEndV to any value (presumably meaningful in the context
of the your data). If vfXCStartV is greater than
vfXCEndV, the direction of the data locations along the X
Axis is opposite the direction of the positive X Axis. If
vfXArray is NULL and vfXCEndV is not specified,
VectorField sets vfXCEndV to the size of the
fast-varying data dimension minus one. You may set vfXCEndV
using any of the data types VectorField accepts for
the vfDataArray resource.
If you set vfXArray with a valid 1D or 2D array, VectorField ignores any value set for vfXCEndV. If vfXArray is one-dimensional, vfXCEndV is set to the value of its last element. If vfXArray is two-dimensional, vfXCStartV is set to the maximum value found in all elements of the array. In this case, it could correspond to any element of the data array.
Default: <dynamic>
- vfXCStartIndex
-
This resource specifies the smaller of two indexes along the X-Axis
dimension. Valid values range from 0 to one less than the value of
vfXCEndIndex. It is one of four resources used to specify a
rectangular subset of the data using array indexes. This is the only
form of subsetting VectorField supports when
vfXArray and vfYArray are set using 2D coordinate
arrays,
Unless vfXArray is set with a 2D array, explicitly setting vfXCStartSubsetV overrides any value set for vfXCStartIndex and causes it to be set to the largest array index value such that the requested data coordinate location is included within the subset. Otherwise, if you set vfXCStartIndex, vfXCStartSubsetV will be set based on its value.
vfXCStartIndex retains its value when the data array changes, unless the X-Axis dimension size also changes. In this case, assuming neither vfXCStartSubsetV nor vfXCStartIndex is explicitly set at the same time, vfXCStartIndex is set to 0.
Default: 0
- vfXCStartSubsetV
-
vfXCStartSubsetV specifies the starting location along the
X Axis of a rectangular sub-array of the data.
vfXCStartSubsetV should be set to a value within the data
coordinate extent as established by the values of vfXCStartV
and vfXCEndV. If vfXCStartSubsetV is outside the
coordinate extent, VectorField issues a warning and
sets it to the value of vfXCStartV. If the values of
vfXCStartSubsetV and vfXCEndSubsetV are oppositely
directed from the direction established by vfXCStartV and
vfXCEndV, VectorField issues a warning and
exchanges their values. When you do not explicitly set a value for
vfXCStartSubsetV:
- at initialization or when the X-Axis dimension size changes, if vfXCStartIndex is also not set, vfXCStartSubsetV takes the value of vfXCStartV;
- else if vfXCStartIndex is set, or there is a change to vfXCStartV, vfXCEndV, or vfXArray, vfXCStartSubsetV takes the data coordinate value indexed by the value of the vfXCStartIndex resource;
- else vfXCStartSubsetV retains its current value.
Since the data grid consists of data located at discrete points, the location specified by vfXCStartSubsetV might well fall between two data points. In this case, VectorField selects a beginning index for the array subset such that the requested location is included within the subset. Thus the subset array, as delivered to the receiving object, may represent a slightly larger area of the data coordinate space than requested. Get the value of the read-only resource vfXCActualStartF in order to find the exact start of the subset along the X Axis. You may set vfXCStartSubsetV using any of the data types that VectorField accepts for the vfDataArray resource.
If vfXArray is set with a valid 2D coordinate array, VectorField ignores any value set for vfXCStartSubsetV. If a subset has been set using the indexing resources, vfXCStartSubsetV is set to the minimum value found within the specified subset of vfXArray. Otherwise vfXCStartSubsetV is set to the same value as vfXCStartV.
Default: <dynamic>
- vfXCStartV
-
Ordinarily, this resource specifies the location along the X Axis of
the first element of the fast-varying dimension of the data. If the
array resource vfXArray is NULL, you can set
vfXCStartV to any value (presumably meaningful in the context
of the your data). If vfXCStartV is greater than
vfXCEndV, the direction of the data locations along the X
Axis is opposite the direction of the positive X Axis. If
vfXArray is NULL and vfXCStartV is not specified,
VectorField sets vfXCStartV to the value
0. You may set vfXCStartV using any of the data types
VectorField accepts for the vfDataArray
resource.
If you set vfXArray with a valid 1D or 2D array, VectorField ignores any value set for vfXCStartV. If vfXArray is one-dimensional, vfXCStartV is set to the value of its first element. If vfXArray is two-dimensional, vfXCStartV is set to the minimum value found in all elements of the array. In this case, it could correspond to any element of the data array.
Default: <dynamic>
- vfXCStride
-
When vfXCStride has a value greater than one, the
VectorField object creates a new array containing
only columns indexed along the X dimension by successive multiples
(starting with 0) of the vfXCStride value added to the
starting index. The starting index is based on the current state of
the applicable subsetting resources; it is 0 if no array subsetting is
in effect. The resulting array is passed to the receiving plot object.
Note that if ending index minus starting index is not an exact multiple of the vfXCStride value, then the data coordinate range may be reduced slightly.
The vfXCStride resource is currently ignored if vfXArray and vfYArray contain 2D coordinate arrays.
Default: 1
- vfYArray
-
If vfYArray is NULL, the coordinates of the Y (the second
fastest-varying) axis of the data grid are assumed to be regularly
spaced, and the endpoints are determined by the values of
vfYCStartV and vfYCEndV.
If vfYArray is set using a 1D array, its values represent sequential coordinate locations along the Y-Axis (the second fastest-varying dimension) of the data grid. The array must contain the same number of elements as this data array dimension. VectorField requires the coordinate array values to increase or decrease monotonically. If the coordinate array input does not have the right number of elements or is non-monotonic, VectorField issues a warning and restores vfYArray to its previous, possibly
NULL
, value. equally-spaced along the Y Axis between the current values of vfYCStartV and vfYCEndV. If the input array is valid, VectorField replaces the current value of vfYCStartV with the value of the first element of vfYArray, and the current value of vfYCEndV with the value of the last element.If vfYArray is set using a 2D array, it must have the same dimension sizes as vfXArray and the two fastest varying dimensions of the data grid. Each element specifies the location along the Y-Axis of a single data grid cell center. For 2D coordinates, there is no requirement that the coordinates be monotonic. However, if the coordinates provided are not well-ordered as expected by the 2D-coordinate tranvformation routines, errors will occur when the Draw method is called. If the array does not contain valid dimension sizes, VectorField issues a warning restores vfYArray to its previous, possibly
NULL
, value.You can specify vfYArray using a one or two dimensional array of any of the types allowed for vfDataArray.
Default: NULL
- vfYCActualEndF
-
When an ending location for a subset of the data is specified using
vfYCEndSubsetV, this location might well fall between two
data points. In this case, VectorField selects an
ending index for the array subset such that the requested location is
included within the subset. Thus the subset array, as delivered to the
receiving object, may represent a slightly larger area of the data
coordinate space than requested. The read-only resource
vfYCActualEndF is set to the value of the actual ending
location of the data subset along the Y Axis.
When subsets are not specified, or are specified using the array indexing resources, vfYCActualEndF has the same value as vfYCEndSubsetV.
Default: <dynamic>
- vfYCActualStartF
-
When a starting location for a subset of the data is specified using
vfYCStartSubsetV, this location might well fall between two
data points. In this case, VectorField selects a
beginning index for the array subset such that the requested location
is included within the subset. Thus the subset array, as delivered to
the receiving object, may represent a slightly larger area of the data
coordinate space than requested. The read-only resource
vfYCActualStartF is set to the value of the actual starting
location of the data subset along the Y Axis.
When subsets are not specified, or are specified using the array indexing resources, vfYCActualStartF has the same value as vfYCStartSubsetV.
Default: <dynamic>
- vfYCEndIndex
-
This resource specifies the larger of two indexes along the Y-Axis
data dimension. Valid values range from one greater than the value of
vfYCStartIndex to one less than the size of the dimension. It
is one of four resources used to specify a rectangular subset of the
data using array indexes. This is the only form of subsetting
VectorField supports when vfXArray and
vfYArray are set using 2D coordinate arrays,
Unless vfYArray is set with a 2D array, explicitly setting vfYCEndSubsetV overrides any value set for vfYCEndIndex and causes it to be set to the smallest array index value such that the requested data coordinate location is included within the subset. Otherwise, if you set vfYCEndIndex, vfYCEndSubsetV will be set based on its value.
vfYCEndIndex retains its value when the data array changes, unless the Y-Axis dimension size also changes. In this case, assuming neither vfYCEndSubsetV nor vfYCEndIndex is explicitly set at the same time, vfYCEndIndex is set to the size of the Y-Axis dimension minus one.
Default: <dynamic>
- vfYCEndSubsetV
-
vfYCEndSubsetV specifies the ending location along the Y Axis
of a rectangular sub-array of the data. It should be set to a value
within the data coordinate extent as established by the values of
vfYCStartV and vfYCEndV. If it is outside the coordinate
extent, VectorField issues a warning and sets it to
the value of vfYCEndV. If the values of
vfYCStartSubsetV and vfYCEndSubsetV are oppositely
directed from the direction established by vfYCStartV and
vfYCEndV, VectorField issues a warning and
exchanges their values. When you do not explicitly set a value for
vfYCEndSubsetV:
- at initialization or when the Y-Axis dimension size changes, if vfYCEndIndex is not set, vfYCEndSubsetV takes the value of vfYCEndV;
- else if vfYCEndIndex is set, or there is a change to vfYCStartV, vfYCEndV, or vfYArray, vfYCEndSubsetV takes the data coordinate value indexed by the value of vfYCEndIndex;
- else vfYCEndSubsetV retains its current value.
Since the data grid consists of data located at discrete points, the location specified by vfYCEndSubsetV might well fall between two data points. In this case, VectorField selects an ending index for the array subset such that the requested location is included within the subset. Thus the subset array, as delivered to the receiving object, may represent a slightly larger area of the data coordinate space than requested. Get the value of the read-only resource vfYCActualEndF in order to find the exact end of the subset along the Y Axis. You may set vfYCEndSubsetV using any of the data types that VectorField accepts for the vfDataArray resource.
If vfYArray is set with a valid 2D coordinate array, VectorField ignores any value set for vfYCEndSubsetV. If a subset has been set using the indexing resources, vfYCEndSubsetV is set to the maximum value found within the specified subset of vfYArray. Otherwise vfYCEndSubsetV is set to the same value as vfYCEndV.
Default: <dynamic>
- vfYCEndV
-
Ordinarily, this resource specifies the location along the Y Axis of
the last element along the slower-varying dimension of the data. If
the array resource vfYArray is set and found to be valid,
VectorField overwrites the current value of
vfYCStartV, replacing it with the value of the last element
of vfYArray. Otherwise, you can set vfYCStartV to
any value (presumably meaningful in the context of the your data). If
vfYCStartV is greater than vfYCEndV, the direction
of the data locations along the Y Axis is opposite the direction of
the positive Y Axis. If vfYArray is NULL or invalid and
vfYCEndV is not specified, VectorField sets
vfYCEndV to the size of the slower-varying data dimension
minus one. You may set vfYCEndV using any of the data types
VectorField accepts for the vfDataArray
resource.
If you set vfXArray with a valid 1D or 2D array, VectorField ignores any value set for vfXCEndV. If vfXArray is one-dimensional, vfXCEndV is set to the value of its last element. If vfXArray is two-dimensional, vfXCStartV is set to the maximum value found in all elements of the array. In this case, it could correspond to any element of the data array.
Default: <dynamic>
- vfYCStartIndex
-
This resource specifies the smaller of two indexes along the Y-Axis
dimension. Valid values range from 0 to one less than the value of
vfYCEndIndex. It is one of four resources used to specify a
rectangular subset of the data using array indexes. This is the only
form of subsetting VectorField supports when
vfXArray and vfYArray are set using 2D coordinate
arrays,
Unless vfYArray is set with a 2D array, explicitly setting vfYCStartSubsetV overrides any value set for vfYCStartIndex and causes it to be set to the largest array index value such that the requested data coordinate location is included within the subset. Otherwise, if you set vfYCStartIndex, vfYCStartSubsetV will be set based on its value.
vfYCStartIndex retains its value when the data array changes, unless the Y-Axis dimension size also changes. In this case, assuming neither vfYCStartSubsetV nor vfYCStartIndex is explicitly set at the same time, vfYCStartIndex is set to 0.
Default: 0
- vfYCStartSubsetV
-
vfYCStartSubsetV specifies the starting location along the
Y Axis of a rectangular sub-array of the data. It should be set to a
value within the data coordinate extent as established by the values
of vfYCStartV and vfYCEndV. If it is outside the
coordinate extent, VectorField issues a warning and
sets it to the value of vfYCStartV. If the values of
vfYCStartSubsetV and vfYCEndSubsetV are oppositely
directed from the direction established by vfYCStartV and
vfYCEndV, VectorField issues a warning and
exchanges their values. When you do not explicitly set a value for
vfYCStartSubsetV:
- at initialization or when the Y-Axis dimension size changes, if vfYCStartIndex is not set, vfYCStartSubsetV takes the value of vfYCStartV;
- else if vfYCStartIndex is set, or there is a change to vfYCStartV, vfYCEndV, or vfYArray, vfYCStartSubsetV takes the data coordinate value indexed by the value of vfYCStartIndex;
- else vfYCStartSubsetV retains its current value.
Since the data grid consists of data located at discrete points, the location specified by vfYCStartSubsetV might well fall between two data points. In this case, VectorField selects a beginning index for the array subset such that the requested location is included within the subset. Thus the subset array, as delivered to the receiving object, may represent a slightly larger area of the data coordinate space than requested. Get the value of the read-only resource vfYCActualStartF in order to find the exact start of the subset along the Y Axis. You may set vfYCStartSubsetV using any of the data types that VectorField accepts for the vfDataArray resource.
If vfYArray is set with a valid 2D coordinate array, VectorField ignores any value set for vfYCStartSubsetV. If a subset has been set using the indexing resources, vfYCStartSubsetV is set to the mimimum value found within the specified subset of vfYArray. Otherwise vfYCStartSubsetV is set to the same value as vfYCStartV.
Default: <dynamic>
- vfYCStartV
-
Ordinarily, this resource specifies the location along the Y Axis of
the first element of the slow-varying dimension of the data. If the
array resource vfYArray is NULL, you can set
vfYCStartV to any value (presumably meaningful in the context
of the your data). If vfYCStartV is greater than
vfYCEndV, the direction of the data locations along the Y
Axis is opposite the direction of the positive Y Axis. If
vfYArray is NULL and vfYCStartV is not specified,
VectorField sets vfYCStartV to the value
0. You may set vfYCStartV using any of the data types
VectorField accepts for the vfDataArray
resource.
If you set vfYArray with a valid 1D or 2D array, VectorField ignores any value set for vfYCStartV. If vfYArray is one-dimensional, vfYCStartV is set to the value of its first element. If vfYArray is two-dimensional, vfYCStartV is set to the minimum value found in all elements of the array. In this case, it could correspond to any element of the data array.
Default: <dynamic>
- vfYCStride
-
When vfYCStride has a value greater than one, the
VectorField object creates a new array containing
only rows indexed along the Y dimension by successive multiples
(starting with 0) of the vfYCStride value added to the
starting index. The starting index is based on the current state of
the applicable subsetting resources; it is 0 if no array subsetting in
effect. The resulting array is passed to the receiving plot object.
Note that if ending index minus starting index is not an exact multiple of the vfYCStride value, then the data coordinate range may be reduced slightly.
The vfYCStride resource is currently ignored if vfXArray and vfYArray contain 2D coordinate arrays.
Default: 1