using irregularly spaced coordinates with ray-casting in iVolume [message #65540] |
Tue, 10 March 2009 11:24  |
brian.niebergal@gmail
Messages: 2 Registered: March 2009
|
Junior Member |
|
|
Hello everyone.
I've seen a few similar posts to this one, but there doesn't seem to
be a good (easy) answer that I can understand. :)
How does one use irregularly spaced (xyz) coordinates with the
IDLgrVolume ray-casting volume renderer?
I haven't used any of IDL's 3D features before and so I'm kind of
lost. Normally, using the "contour" command I would type something
like:
contour,3Ddata_slice,dim_x,dim_y
where dim_x and dim_y are my irregularly spaced coordinates.
If it helps, my data isn't completely irregular, that is to say there
is an equation that dictates the spacing between adjacent coordinate
points (involves a step function half-way through the data though).
I realize the algorithm for accomplishing this with ray-casting is not
trivial, but if anyone renders hydrodynamical simulations, using
adaptive mesh refinement, they must also need this feature.
It seems this is related to why the "logarithmic axis" option in axis
properties is greyed out?
Thank you,
- Brian Niebergal
PhD Student
University of Calgary
www.capca.ucalgary.ca/~bniebergal/
|
|
|
Re: using irregularly spaced coordinates with ray-casting in iVolume [message #65612 is a reply to message #65540] |
Wed, 11 March 2009 11:19  |
brian.niebergal@gmail
Messages: 2 Registered: March 2009
|
Junior Member |
|
|
On Mar 11, 9:13 am, Jeremy Bailin <astroco...@gmail.com> wrote:
> On Mar 10, 9:59 pm, "Kenneth P. Bowman" <k-bow...@null.edu> wrote:
>
>
>
>> In article
>> < 876f0fb1-0416-4f50-9377-c36f914f4...@a5g2000pre.googlegroups .com >,
>
>> "brian.nieber...@gmail.com" <brian.nieber...@gmail.com> wrote:
>>> Hello everyone.
>
>>> I've seen a few similar posts to this one, but there doesn't seem to
>>> be a good (easy) answer that I can understand. :)
>
>>> How does one use irregularly spaced (xyz) coordinates with the
>>> IDLgrVolume ray-casting volume renderer?
>>> I haven't used any of IDL's 3D features before and so I'm kind of
>>> lost. Normally, using the "contour" command I would type something
>>> like:
>
>>> contour,3Ddata_slice,dim_x,dim_y
>
>>> where dim_x and dim_y are my irregularly spaced coordinates.
>
>>> If it helps, my data isn't completely irregular, that is to say there
>>> is an equation that dictates the spacing between adjacent coordinate
>>> points (involves a step function half-way through the data though).
>
>>> I realize the algorithm for accomplishing this with ray-casting is not
>>> trivial, but if anyone renders hydrodynamical simulations, using
>>> adaptive mesh refinement, they must also need this feature.
>
>>> It seems this is related to why the "logarithmic axis" option in axis
>>> properties is greyed out?
>
>>> Thank you,
>>> - Brian Niebergal
>>> PhD Student
>>> University of Calgary
>>> www.capca.ucalgary.ca/~bniebergal/
>
>> I am pretty sure that the volume renderer requires regular grids.
>
>> My suggestion is to create a regular grid from your irregular data
>> by interpolation.
>
>> Ken Bowman
>
> How many levels of refinement do you have? If it's not too many, you
> could re-grid everything down to the finest grid level to get a
> regularly-spaced grid, like Ken suggests. Of course, probably the
> reason you're using AMR is because doing the entire volume at the
> highest resolution is impossible. ;-) So that may not work so well.
>
> -Jeremy.
Thank you for your responses!
Indeed I am using a very large dataset (~2GB per variable, times 5 or
8 variables) that has a large difference between the finest grid level
and largest. So I would either lose a lot of resolution, or end up
with an excessively large data set, or some combination of both. This
is my last resort option.
I had noticed that in iVolume one can scale the image, which is
essentially what I want, but I would like to scale it using something
other than a constant value (eg. a function). I tried looking through
some of the iVolume (sub-)programs quickly, but couldn't find what I
was looking for. I couldn't even find where this IDLgrVolume routine
is located.
Does anyone have an idea of where I could start looking to accomplish
what I want? Or more specifically which IDL program would I want to
modify?
Thank you again,
- Brian Niebergal
|
|
|