POV-Ray : Newsgroups : povray.binaries.images : DF3 Interpolation Problem : Re: DF3 Interpolation Problem Server Time
1 Aug 2024 00:24:54 EDT (-0400)
  Re: DF3 Interpolation Problem  
From: clipka
Date: 2 Jun 2009 09:40:00
Message: <web.4a252adf1aa18c33f708085d0@news.povray.org>
Alain <ele### [at] netscapenet> wrote:
> There are NO artefacts when using version 3.7 beta 32 and interpolate 2.
> Interpolate 0 is NO interpolation. You only see the voxel.
> Interpolate 1 is linear interpolation. The voxel becomes fuzzy.
> With 3.6.1 and interpolate 2, there are HUGE artefacts. Making the container
> larger don't help, in fact, the result gets worst. Also, if you enlarge the
> container, you also need to increase the samples value a LOT. Adding 0.1 all
> around and you need samples 20, at least!

FYI:

The observed artifacts are due to the interpolation method; I encountered the
problem earlier, but from what I know it is not totally solved yet: I'd still
expect artifacts when doing the same "inverted", i.e. with a few isolated 0.0
values among a lot of 1.0 values.

Interpolation method 2 does something very similar to those splines that pass
right through the control points; if you place such a spline's control points
in straight line, but significantly displace a single one of them, the spline
will exhibit some distortion between the control points right next to the
"outsider"; there, the spline is displaced away from the "outsider".

A similar effect occurs with "interpolate 2": With all "control points" set to
0.0, but a single one set to 1.0, between the most adjacent points the values
will be interpolated as <0.0.

Similarly, if you set all values to 1.0, but set a single one to 0.0, the values
in the vicinity will be interpolated as >1.0.

This wouldn't have to be a problem - but in POV-Ray it is, because of the
automatic "wrap around" applied to patterns, with e.g. -0.1 being mapped to
+0.9, and +1.1 being mapped to +0.1.

Regular images are clipped to the interval [0.0, 1.0] between interpolation and
pattern wraparound; unfortunately, this is not the case for DF3 files: They are
clipped at the lower bound of 0.0, but the upper bound is still left unclipped,
and instead subject to pattern wraparound.

Note that it doesn't help to make a function from the DF3, because to the best
of my knowledge the only way to achieve this is a pattern function - which
obviously still involves a pattern, and the associated wraparound.


Post a reply to this message

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