|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I tried this:
#version 3.7 ;
background {color rgb 1/2}
global_settings {
assumed_gamma 1
max_trace_level 100 }
camera {
location <5, 1, -22>
look_at <-.5,0, 0>
angle 30
}
light_source{<00,200,-200> rgb <1,.9,.5> }
#macro Sphere1() sphere {<1,1,0>,1 pigment{rgb<1,0,0>}} #end
#macro Sphere2() sphere {<1,-1,0>,1 pigment{rgb<0,1,0>}} #end
#macro Sphere3() sphere {<-1,-1,0>,1 pigment{rgb<0,0,1>}} #end
#macro Sphere4() sphere {<-1,1,0>,1 pigment{rgb<1,0,1>}} #end
#declare Event_Name = array[2][2] {
{ Sphere1(),Sphere2()},
{ Sphere3(),Sphere4()}}
but get the error:
line 21: Parse Error: Insufficent number of initializers
John
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Le 19/07/2014 10:49, John Greenwood nous fit lire :
> I tried this:
> #macro Sphere1() sphere {<1,1,0>,1 pigment{rgb<1,0,0>}} #end
> #macro Sphere2() sphere {<1,-1,0>,1 pigment{rgb<0,1,0>}} #end
> #macro Sphere3() sphere {<-1,-1,0>,1 pigment{rgb<0,0,1>}} #end
> #macro Sphere4() sphere {<-1,1,0>,1 pigment{rgb<1,0,1>}} #end
>
> #declare Event_Name = array[2][2] {
> { Sphere1(),Sphere2()},
> { Sphere3(),Sphere4()}}
>
> but get the error:
>
> line 21: Parse Error: Insufficent number of initializers
Maybe because the "return" of the Sphere*() macro are nothing.
The sphere get added to the scene, but I'm afraid not in the array. (as
sphere is not an expression)
As you want to store object in the array, maybe (untested) something like
#macro Sphere1()
#local Obj=sphere{<1,1,0>,1 pigment{rgb<1,0,0>}};
Obj
#end
Caveat: #local vs #declare, there might be a scope issue in previous
version of povray. (referencing a released identifier)
--
IQ of crossposters with FU: 100 / (number of groups)
IQ of crossposters without FU: 100 / (1 + number of groups)
IQ of multiposters: 100 / ( (number of groups) * (number of groups))
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Le_Forgeron <jgr### [at] freefr> wrote:
> Le 19/07/2014 10:49, John Greenwood nous fit lire :
> > I tried this:
......
> Maybe because the "return" of the Sphere*() macro are nothing.
> The sphere get added to the scene, but I'm afraid not in the array. (as
> sphere is not an expression)
>
> As you want to store object in the array, maybe (untested) something like
> #macro Sphere1()
> #local Obj=sphere{<1,1,0>,1 pigment{rgb<1,0,0>}};
> Obj
> #end
>
> Caveat: #local vs #declare, there might be a scope issue in previous
> version of povray. (referencing a released identifier)
> --
> IQ of crossposters with FU: 100 / (number of groups)
> IQ of crossposters without FU: 100 / (1 + number of groups)
> IQ of multiposters: 100 / ( (number of groups) * (number of groups))
Thanks for the quick reply.
I am thinking this is not the way to go!
A #switch, #case structure is probably better.
John
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|