POV-Ray : Newsgroups : povray.animations : Comments on Animation Scripting.... : Re: Comments on Animation Scripting.... Server Time
27 Sep 2024 18:18:43 EDT (-0400)
  Re: Comments on Animation Scripting....  
From: Marvin T
Date: 21 Feb 2004 12:01:41
Message: <40378ef5@news.povray.org>
Warp wrote:
>   I think that if you made some suggestion on how to actually implement
> those abstract ideas, I (we?) could get a better understanding of what you
> are talking about...

Actually, I have implemented this as a set of 15-20 macros and am 
pondering polishing and documenting them up enough to "publish" them.

For example, the backhoe that I published in p.b.animations ("Diggin' 
It") use the code below.

Note that I use macros extensively, and pass all time-variant values 
into it (for point #1).  The TikTok macros (what I've called them) 
provide a solution for point #2 (time ordering).  In fact I wrap the TT 
macros in a macro just to make the code more readable.

And in this example point #3 (parallel scripts) isn't used because it's 
just a single character.

---------SNIP-------------

#include "tiktok.mcr"

#macro LinearClk(dt,dh0,dh1,dh2,dh3,dl0,dl1,dw,df1,df2)
   TT_dLinearClock(dt, hoe0, dh0) TT_dLinearClock(dt, hoe1, dh1)
   TT_dLinearClock(dt, hoe2, dh2) TT_dLinearClock(dt, hoe3, dh3)
   TT_dLinearClock(dt, ldr0, dl0) TT_dLinearClock(dt, ldr1, dl1)
   TT_dLinearClock(dt, ft1,  df1) TT_dLinearClock(dt, ft2,  df2)
   TT_dLinearClock(dt, whls, dw)  TT_dFinishTimeSlice(dt)
#end

//            Bucket   Fore  Upper  Shldr  FBkt  FArms  Whls   Feet
#declare hoe0 = 0;
#declare hoe1 =	      -100;
#declare hoe2 =		       60;
#declare hoe3 =			     -60;
#declare ldr0 =				    -20;
#declare ldr1 =					  0;
#declare whls =						 0;
#declare ft1  =						    41.5;
#declare ft2  =							 41.5;

LinearClk( 0.5,     0,    40,   -30,     0,    0,  20,   -10,  -10,  0 )
LinearClk( 0.4,   -60,   -60,     0,     0,   20,   0,	 0,    0,-10 )
LinearClk( 0.3,   -20,     0,    60,     0,    0, -10,	20,   -5,  0 )
LinearClk( 0.6,     0,     0,     0,   120,  -10,   0,	 0,    0, -5 )
LinearClk( 0.2,    60,    40,     0,     0,    0,   0,   -10,    0,  0 )
LinearClk( 0.6,    20,   -20,   -30,  -120,  -10, -10,	 0,   15, 15 )

Backhoe(hoe0, hoe1, hoe2, hoe3, ldr0, ldr1, whls, ft1, ft2)


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.