>Recently I ran across some data for which the invalid positions component
>array
>comes back as integer rather than the byte array that I have been used to. A
>"wrong type" error occurs in subsequent modules that utilize invalid positions
>(ShowBoundary) if, for example, the 1's are then casted to byte(0). The User's
>Guide explains that for a smaller number of invalid positions, in order to
>save
>memory the array is structured differently (integer indices of only the
>invalid
>positions, rather than an array of bytes with same dimensions as the data
>field).
>
>Is it expected then that a type-check must be made before the invalid
>positions
>array is altered ? In this particular case I bypassed the problem by removing
>the invalid positions rather than manipulating them, but I would like to know
>the philosophy behind all this.



A quick note dashed off as I run out to a meeting.

I would say the test is Inquire for invalid positions "ref" positions or
"dep" positions. In the "ref" case, you have the short array of actual
integer indices into the positions list. In "dep" you have an array equal
in size to the positions list, but byte.

The byte style is to mask off a few (relatively) bad points but in a very
large regular grid. If you cull these, you have a very large irregular grid
which is much more costly of memory.

The ref or integer style is another way to identify a small set of bad
points without the overhead of a very large byte array.

The byte style is obviously more efficient if you have to invalidate a
large number of points (like the oceans on a grid of the world).

Chris Pelkie
Vice President/Scientific Visualization Producer
Conceptual Reality Presentations, Inc.
30 West Meadow Drive
Ithaca, NY 14850
[EMAIL PROTECTED]
(607) 257-8335 or (607) 254-8794

Reply via email to