|
![](/i/fill.gif) |
MSAB nous apporta ses lumieres en ce 11/07/2006 05:40:
> Warp <war### [at] tag povray org> wrote:
>> A short scene demonstrating the problem would be of great help
>> answering your question.
>
> Here's a simple scene, to see, where my problem is (my actual file is much
> more complexer)
> The main-file:
>
> #macro Test (Art,P1,P2,n)
>
> #local P3 = P1+ (P2-P1)/2 ;
>
> #include "Obj_def.pov"
> #include "Typ_def.pov"
>
> union{
>
> #if (n=0)
>
> cylinder{P1,P2,0.5}
> object{Ba}
>
> #else
>
> cylinder{P1,P2,0.5}
> object{R}
>
> #end
> }
> #end
>
> Now, the Include-file "Obj_def.pov":
>
Add:
#macro ArtMac(Art)
> #if (Art = 1)
> #declare B = box{1,1}
> #end
>
> #if (Art = 2)
> #declare B = box{1.1,1.1}
> #end
#end
>
> And this is the file "Typ_def.pov". I think there's the problem:
>
Add:
#macro TypMac(Art,B)
> #if (Art = 1)
>
> #declare Ba = union{
> object{B translate P1}
> object{B translate P2}
> object{B translate P3}
> }
> #declare R = union{
> object{Test (Art,P3,P3+vrotate(P2,<0,0, 45>),n-1)}
> object{Test (Art,P2,P2+vrotate(P2,<0,0,-45>),n-1)}
> }
>
> #end
>
> #if (Art = 2)
>
> #declare Ba = union{
> object{B translate P2}
> object{B translate P3}
> }
> #declare R = union{
> object{Test (Art,P1,P1+vrotate(P2,<0,0, 45>),n-1)}
> object{Test (Art,P2,P2+vrotate(P2,<0,0,-45>),n-1)}
> }
>
> #end
#end
>
> Thanks for your answers.
>
>
Now, include those before your recursive macro.
In the macro, just call the 2 macro instead of including the files.
--
Alain
-------------------------------------------------
I used to have an open mind but my brains kept falling out.
Post a reply to this message
|
![](/i/fill.gif) |