On Mon, 23 Jul 2001, Chris Pelkie wrote:
>On Mon, 23 Jul 2001, Chris Pelkie wrote:
You could also just Compute the heights; I bet you know how so I
won't tell you unless you ask. As a mapmaker, you'd probably be
happier with a Compute that you could scale X, Y, Z to real world
coords instead of relying on the sometimes obtuse Rubbersheet
scaling. I would expect then the invalids would behave.
ah, now this sounds interesting. so how do i do it? i was wondering about
how i could add a third dimension (z) to a 2d field.
cheers
magi
Given a field with "positions" and "data", Mark("positions"). The
output of Mark has a copy of "positions" in the "data" (and still in
the "positions"). Feed a Compute this field (input 'a' unless you
rename it). Also take a wire from the original field in which the
"data" is still the "data" into this Compute (input 'b' unless you
choose to rename it, which I usually do).
Compute([a.x, a.y, b]) // brackets make a vector, 3 scalar
components make 3-vector
// a.x is the scalar x component
of the 2D positions, a.y similarly
// b is the data to be the z component
Unmark("positions")
The old positions are replaced with 3D positions. The 2D mesh is
preserved as before.
To add map scaling and translation, add more inputs to Compute then
attach interactors or constants.
Like
[(a.x * x_scale) + easting, .... and so on
(naming the new inputs in Compute so you can use them in the expression)
Chris Pelkie
Vice President/Scientific Visualization Producer
Conceptual Reality Presentations, Inc.
30 West Meadow Drive
Ithaca, NY 14850
[EMAIL PROTECTED]