POV-Ray : Newsgroups : povray.newusers : max(0,min(1,x)) : Re: max(0,min(1,x)) Server Time
5 Sep 2024 00:17:38 EDT (-0400)
  Re: max(0,min(1,x))  
From: Rafal 'Raf256' Maj
Date: 3 Oct 2002 10:54:48
Message: <Xns929CABCF6695Araf256com@204.213.191.226>
Christopher James Huff <chr### [at] maccom> wrote in news:chrishuff-
386### [at] netplexaussieorg

>> Maybe isosurface using only one clip() in it's pattern ?
> It'd either be so fast it wouldn't matter or the clip would take such a 
> small fraction of total evaluation time you wouldn't notice a difference.

So therefore I don't expect any medal of honor from POV-Team for writting 
it ;) but this change would prouce a little bit better, or worse POV code ?
It would be same fast, or little bit faster AFAIK ?

> You really seem to have no idea how optimization is done...

And I want to get an idea i.e. by doing some (little) optimization myself.

> a very tiny amount of total rendering time, and then in only a small 
> percentage of scenes. It would be a waste of time to implement it 
> internally, the time would be better spent with other optimizations, 

It's my time so I think I will decide with optimization I want to 
implement, ok :) ? 

> maybe something like allowing inlining of functions, where POV would 
> expand a clip() call to the min/max() calls. Or more powerful macros.

Ok, but I do NOT want to code it ok ? I think I will implement a clip() for 
a "warm-up" and to get better along with pov's sources. Maybe inlining 
alsow - someday... :)

With files (and best - function names/lines) :

* have formulas for some literal functions like pow(a,b) ? (I want to see 
how it's done)

* now what should I do to add my own function (real-function) like i.e. 
my_function(a,b) and I want it's formula to be i.e.  (a+b)  for tests 
reasons. I quess I will have to change parser code, and functions code ?

* now I want to add function like  my_function(a,b,c) - it should be very 
simmilar probably ?

TIA

-- 
#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.