POV-Ray : Newsgroups : povray.general : is there any feature for volume raytracing with povray? : Re: is there any feature for volume raytracing with povray? Server Time
31 Jul 2024 14:21:03 EDT (-0400)
  Re: is there any feature for volume raytracing with povray?  
From: Alain
Date: 16 Jan 2007 14:24:37
Message: <45ad2675$1@news.povray.org>
lien0n nous apporta ses lumieres en ce 16-01-2007 01:36:
> Many thanks for your interests, everyone. Sorry, am pretty busy these days.

> I uploaded an image to povray.binaries.images,
>
http://news.povray.org/povray.binaries.images/thread/%3Cweb.45ac7028a8a7f8c81524ae1d0%40news.povray.org%3E/.

> the image was rendered by using the isosurface object just like Thorsten
> described.

> to Vincent:
> Am not sure how does povray implement the feature of "isosurface", if it
> really does as what you said, that is exactly what I need. I was told that
> this is also a kind of volume raytracing technique by a friend, but am not
> sure. However, from the figure I uploaded, we can see patches, so I guess
> that maybe povray firstly extracts the implicit surface geometry with some
> tessellation technique. But this is just a guess. Another possibility is
> that indeed it does with the method you said, but the normal for each
> intersection is computed not so good by povray, so that the surface looks
> not so smooth and appears like patches.

> to Warp:
> Sorry for my unclear description. According to my current limited knowledge,
> the scattering, emission and absorption media are the typical feature of
> volume raytracing technique, but do you think the method described by
> Vincent is also a kind volume raytracing technique?

> to Ingo:
> Thanks for your image. I guess the white islands on the frog's skin are the
> results of isosurface, am I right? :). But the image's resolution is not
> large enough to determine whether there are quad patches or not.

> to Thorsten:
> Can you give me some comments towards the patches in my image? In fact, I
> want to get a smooth surface from the volume data set. Maybe I used the
> isosurface object incorrectly. the code for the isosurface object is:

> #declare dens=function{pattern {density_file df3 densityfile interpolate 1}}
> #declare interface=object{
>   isosurface{
>     function{dens(x,y,z)}
>     threshold iso_value
>     contained_by { box { 0.03, 0.97 } }
>     open
>   }
>   pigment{rgbt <1., 1., 0.1, 0.5>}
>   finish{
>     ambient  0.3
>     diffuse  0.3
>     roughness 0.5
>     brilliance 1
>   }
>   scale 1.06
>   translate -0.03
> }

> The resolution for the volume data I used is 32x32x32, but i think finer
> data can only alleviate the problem to some degree. Yet, I should try finer
> data...


In a DF3 file, each value apply to a cube, so, you obviously get a blocky aspect.
POV-Ray don't use any tessellation. It samples along a ray and evaluate the 
isosurface value at a point, if it evaluate to less than the therhold, you are 
outside the object, it it evaluate at the threshold, you are ON the surface, if 
larger, then you are inside.
DF3's are mostly used for media dencity where the blockyness is less visible.

-- 
Alain
-------------------------------------------------
The strongest reason for the people to retain the right to keep and bear
arms is, as a last resort, to protect themselves against tyranny in
government.
Thomas Jefferson


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.