|
|
The code below works, but by my reasoning it shouldn't. I had to move a
"}" to what is "clearly" the "wrong" location (obviously it isn't wrong,
since it works; what is wrong is my logic.) When I close out my objects
the way I think I should, I get a parse error. Can someone spot my
mistake?
(If the code seems a bit strange, it's because I've stripped it down as
much as I can, I think, and still have the problem.)
////////Code
//Ball-And-Stick Fragment
#macro B_And_S_Triangle(V_Array,BR,SR)
union {
sphere { 0, 1 scale BR pigment { color rgb x }
translate V_Array[0]}
sphere { 0, 1 scale BR pigment { color rgb y }
translate V_Array[1]}
sphere { 0, 1 scale BR pigment { color rgb z }
translate V_Array[2]}
cylinder { V_Array[0], V_Array[1], SR
pigment { color rgb x+y } }
cylinder { V_Array[0], V_Array[2], SR
pigment { color rgb x+y } }
cylinder { V_Array[1], V_Array[2], SR
pigment { color rgb x+y } }
}
#end
//Of Macro The problem's probably somewhere above, but I can't find it.
// Second macro, calls above macro twice:
#macro Ball_And_Stick(SArray,DArray,B_Rad,S_Rad)
#declare Source_Triangle =
B_And_S_Triangle(SArray,B_Rad,S_Rad)
#declare Destination_Triangle =
B_And_S_Triangle(DArray,B_Rad/2,S_Rad/2)
//Here's "misplaced" "}"
object { Source_Triangle }}
//I think there should only be one "}" ending above object
object { Destination_Triangle }
#end //Of 2nd macro
// Here's the main body
#declare Source_Points = array[3];
#declare Source_Points[0] = <0, 0, 0>;
#declare Source_Points[1] = <0, 5, 0>;
#declare Source_Points[2] = <5, 0, 0>;
#declare Destination_Points = array[3];
#declare Destination_Points[0] = <1, 1, 0>;
#declare Destination_Points[1] = <2, 1, 0>;
#declare Destination_Points[2] = <1, 2, 0>;
//Here's "missing" "}"
object { Ball_And_Stick(Source_Points,Destination_Points,0.5, 0.1)
//I think there should be a "}" to end the above object.
camera { angle 60 location <3, 3, -20>
look_at <3, 3, 0>
right x*image_width/image_height
up y }
light_source { -100*z color rgb 1 }
background { color rgb 0.7 }
//////////////////////////
I've been tearing out what little hair I have left, trying to solve
this. Thanks in advance for any help.
Dave Matthews
Post a reply to this message
|
|