|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | I am no longer able to reproduce one of my scenes due to the change in 
exponentiation in 3.5, now in the form of pow(a,b) - formerly a^b.
The scene uses a particularly pathological function for an isosurface, in which 
negative floating point values are raised to floating point powers - a situation 
where the results are normally undefined.
When I was able to generate my scene using the form a^b, "legal" values were 
generated and pixels were rendered for negative floating point 'a' and floating 
point 'b'.
In 3.5, using pow(a,b) I just get black.
Is there some way of emulating the old a^b in order to render my scene?
Yes, I could go back to 3.1 but I am hoping the faster render speed of 3.5 would 
avoid my ordeal in 3.1 - I had to wait over 38 hours for a top quality 320 x 240!
What is the big difference in implementation of exponentiation in the new version, 
and why was it altered?
Many thanks for any help,
Bob Douglas
 Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | On Fri, 18 Apr 2003 22:01:06 +1000, bob douglas <rod### [at] ihug com  au> wrote:
> Is there some way of emulating the old a^b in order to render my scene?
use select() outside or inside of pow() to consider all possible cases.
> Yes, I could go back to 3.1 but I am hoping the faster render speed of 3.5 would 
> avoid my ordeal in 3.1 - I had to wait over 38 hours for a top quality 320 x 240!
AFAIK in 3.1 there was neither isosurface nor ^ operator.
> What is the big difference in implementation of exponentiation in the new version, 
> and why was it altered?
http://news.povray.org/u226tughik82ggvv847sgr277j3pdicsdb%404ax.com
ABX Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | In article <3E9### [at] ihug com  au> , bob douglas <rod### [at] ihug  com  au>
wrote:
> I am no longer able to reproduce one of my scenes due to the change in
> exponentiation in 3.5, now in the form of pow(a,b) - formerly a^b.
POV-Ray never supported the "^" in any final version, just a few beta
versions of POV-Ray 3.5 had support for that operator.  So this is in
absolutely no way a removed feature.
> Is there some way of emulating the old a^b in order to render my scene?
Yes, you just apply yourself the operations the old unofficial isosurface
function implementation of "^" did implicitly.
> and why was it altered?
Because it did not conform to the general rules of mathematics.
    Thorsten
____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trf  de
Visit POV-Ray on the web: http://mac.povray.org Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | Thorsten Froehlich wrote:
> In article <3E9### [at] ihug com  au> , bob douglas <rod### [at] ihug  com  au>
> wrote:
> 
> 
>>I am no longer able to reproduce one of my scenes due to the change in
>>exponentiation in 3.5, now in the form of pow(a,b) - formerly a^b.
> 
> 
> POV-Ray never supported the "^" in any final version, just a few beta
> versions of POV-Ray 3.5 had support for that operator.  So this is in
> absolutely no way a removed feature.
> 
My apologies to ABX and Thorsten. I was actually using MacMegaPov 0.7 to render my 
scene and I mistakenly assumed that Pov-Ray 3.1 supported the "^" operator in the 
same way.
> 
>>Is there some way of emulating the old a^b in order to render my scene?
> 
> 
> Yes, you just apply yourself the operations the old unofficial isosurface
> function implementation of "^" did implicitly.
> 
I don't know how to apply the old unofficial isosurface function implicit 
implementation of "^". Could you please explain how to do this?
Many thanks for your help,
Bob Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | In article <3EA### [at] ihug com  au> , bob douglas <rod### [at] ihug  com  au>
wrote:
> I don't know how to apply the old unofficial isosurface function implicit
> implementation of "^". Could you please explain how to do this?
Sure. Change every pow(x,y) into pow(abs(x),y) .
    Thorsten
____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trf  de
Visit POV-Ray on the web: http://mac.povray.org Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  | 
|  |  | 
|  |  | Thanks Thorsten, that works fine.
Bob
Thorsten Froehlich wrote:
> In article <3EA### [at] ihug com  au> , bob douglas <rod### [at] ihug  com  au>
> wrote:
> 
> 
>>I don't know how to apply the old unofficial isosurface function implicit
>>implementation of "^". Could you please explain how to do this?
> 
> 
> Sure. Change every pow(x,y) into pow(abs(x),y) .
> 
>     Thorsten
> 
> ____________________________________________________
> Thorsten Froehlich, Duisburg, Germany
> e-mail: tho### [at] trf  de
> 
> Visit POV-Ray on the web: http://mac.povray.org Post a reply to this message
 |  | 
|  |  | 
|  |  | 
|  |  |  |  | 
|  |  |