POV-Ray : Newsgroups : povray.general : Precision : Precision Server Time
5 Aug 2024 06:20:55 EDT (-0400)
  Precision  
From: Rafal 'Raf256' Maj
Date: 11 Nov 2002 09:04:28
Message: <Xns92C398A653CA6raf256com@204.213.191.226>
Hello,
problems with float-point precission are quite common in POV (i.e. box 
-9.999,+9.999 with checker pigment can show errors, as well as cone{-
x,1,+x,1} with color_map{[0 rgb 0][1 rgb 1]} - as noticed in .bugreports).

How about building version of Pov with  long double type (for geometry and 
textures calculations).

First step to do it could be IMHO using different types like

typedef long dobule DBLGeo; // geomtery
typedef      dobule DBLPig; // pigment
typedef       float DBLHf ; // HF values

etc...

simple replacing DBL probably will not work because i.e. of many "tricks" 
in AFAIR Radiosity code depending on exacly binary format of DBL.

-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

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