|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi,
I want to add property "id_number" that can be given to any object.
This will be an integer.
In future I also want to add "id_name" that will be a string.
Syntax :
object { ANY_OBJECT_DEFINITION
id_number 100
}
Like :
sky_sphere { S_Cloud id_number -1 }
sphere { x*5 10 id_number 100 }
The idea is to use this informations in output file.
This will produse greate flexibility in using Pov output in other programs.
--
#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
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"Rafal 'Raf256' Maj" <raf### [at] raf256com> wrote in
news:Xns### [at] 204213191226
I don't now yet what to do with complex situations like
union {
sphere { x 1 id_number 1 }
sphere { x 1 id_number 2 }
id_number 3
}
but I think that best will be to set id_number of both spheres to id_number
of scene-level object.
--
#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
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Rafal 'Raf256' Maj wrote:
> "Rafal 'Raf256' Maj" <raf### [at] raf256com> wrote in
> news:Xns### [at] 204213191226
>
> I don't now yet what to do with complex situations like
>
> union {
> sphere { x 1 id_number 1 }
> sphere { x 1 id_number 2 }
> id_number 3
> }
>
> but I think that best will be to set id_number of both spheres to id_number
> of scene-level object.
See my answer to your "own output format".
The id should be in the object fields, just adding a parse option to all
objects (at the top level). That's the easy addition.
For CSG, intersection always returns the basic component,
so you will get either 1 or 2, but never 3 for your example.
At best, if you forbid a id value as meaning not set,
you could have the parser to paint the CSG id over component which have
no value per themself.
Think of it just like a kind of pigment...
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|