[x3d-public] Validation suggestion on animation events

Roy Walmsley roy.walmsley at ntlworld.com
Mon Aug 31 05:03:48 PDT 2015


Tony,

Just an acknowledgement to say thank you for the files. I will test them out and get back to you.

Roy

-----Original Message-----
From: Anthony Judge [mailto:anthony.judge at gmail.com] 
Sent: 31 August 2015 10:21
To: Roy Walmsley
Cc: x3d-public at web3d.org
Subject: Re: [x3d-public] Validation suggestion on animation events

Roy

Many thanks for your response to my ignorance. My thought is that the lines of code governing the cube animation can be very simple. It is just that I do not understand the links between the timesensors and the routes. As an assiduous explorer of documentation, I got hints from everywhere but could not get a fix on the solution -- which I think would indeed be a nice simple test case for those of us who work most efficiently from examples

As to your questions. With regard to the closed loop, the animation is one of a number of continuous cycles within a much more complex piece of geometry with 64 edges, namely the drilled truncated cube. My question focused on the central cube. This is the basis for one of a number of animations which can be run separately or together.

This means some 64 lines moving to their parallels. It all works quite well, except where I have failed to take account of lines frozen by simultaneous FROM  translations being programmed --  the cylinder lines do not then move. Only lines moving TO  those positions move.

As to the repeat trigger, I do not understand that within an X3D context although I understand the concepts in other program logic.

With regard to the cube animation, it is easiest for me to send you the whole animation of which the central cube is a subset. So attached are 3 x3d files:

-- X3D01_not_ok which has my recent experiments on the central cube using multiple clocks, but only works partially with a single movement on one clock
-- X3D01_ok which has multiple movements on the central cube, with a single clock and some lines frozen,  not moving or invisible
-- X3D00 which offers a sense of some of the other movements -- giving  a sense of what I am working with, but using a single clock. Most movements then work because none of the lines have incompatible translates

Apologies for the bulky files, I do not need the precision on the coordinates but have not got around to reducing it, if X3D Edit has a fancy means of doing so.

The animation is going into a document on my site with 3 other x3d animations, also in the wrl forms. So it will be a well-publicised case

Thanks for your attention to the matter

Tony

On 31/08/2015, Roy Walmsley <roy.walmsley at ntlworld.com> wrote:
> Tony,
>
> Now this sounds like a really interesting problem. I don't know the 
> answer, but I have two ideas. Would it be possible for you to supply 
> the whole of the cube animation?
>
> 1) Why do want a closed loop. Can't you just have a repeat trigger 
> that just the animations? Or am I missing something?
>
> 2) I would have expected that at any instant of time the time sensors 
> would only trigger once, this being a safeguard against loops.
>
> And yes, it would form an interesting test case. It's always good to 
> push the boundaries.
>
> Regards,
>
> Roy
>
>
>
> -----Original Message-----
> From: x3d-public [mailto:x3d-public-bounces at web3d.org] On Behalf Of 
> Anthony Judge
> Sent: 30 August 2015 20:55
> To: x3d-public at web3d.org
> Subject: [x3d-public] Validation suggestion on animation events
>
> Whilst making good progress on an animation, I encountered a problem 
> which took me much time to understand, because I assumed a data error 
> in my relatively large data set. Basically several shapes which I had 
> programmed to move remained frozen.
>
> I finally realized that I had made the naive assumption that a single 
> shape could not be subject to several simultaneous translations. My 
> assumption derived from the sense that I could translate several 
> copies of the same shape -- as with Adobe Illustrator, etc. Of course 
> a single translation moves the shape so that applying several 
> route-distinct  translations to the same originally positioned shape 
> is a fundamental error. My suggestion is that this could be a focus of 
> a validation procedure.
>
> The issue related to the following (which could be handled under a 
> separate thread).
>
> The animation in question is simple in that it has each of the 12 
> edges
> (cylinders)  of a cube moving to their parallel positions. Each edge 
> therefore has two parallel (but orthogonal) positions to move to
> -- readily defined by route-translations. This of course works only if 
> the separate translations  are governed by different timesensors. and 
> do not move simultaneously but sequentially.
>
> I am therefore using 3 timesensors for each set of 4 lines (forming 
> the side of the cube. One timesensor can govern the movement of that 
> square in both
> directions.-- sequentially. This results in 24 movements of the 12 lines.
>
> I have spent a lot of time with the web resources on timesensors in 
> relation to routes and have been unable discover anything directly 
> relevant to the "simultaneous" movements of multiple shapes. I did 
> consider duplicating the edge cylinders in their original positions in 
> order to move the copies separately by a single sensor applied to the 
> distinct nodes.
>
> My current approach is to link the timesensors, with each passing 
> triggering information from one to the other when its cycle ends -- in 
> a closed loop.I am totally inexperienced in this. For the x, y and z 
> orientations, the relevant lines I have -- which work individually but 
> not together  -- are:
>
> <TimeSensor DEF='CLOCKx' cycleInterval='5'  loop='false' /> <ROUTE 
> fromNode='CLOCKx' fromField='stop-time' toNode='CLOCKy'
> toField='start_time'/>
> <TimeSensor DEF='CLOCKy' cycleInterval='5'  loop='false' /> <ROUTE 
> fromNode='CLOCKy' fromField='stop-time' toNode='CLOCKz'
> toField='startTime'/>
> <TimeSensor DEF='CLOCKz' cycleInterval='5'  loop='false' '/> <ROUTE 
> fromNode='CLOCKz' fromField='stop-time' toNode='CLOCKx'
> toField='startTime'/>
>
> The lines are indicative of what I would like to happen but also 
> demonstrate my ignorance of how the chaining of the events could be 
> ensured. I have not found any relevant guidance.
>
> Any comments?
>
> Tony.
> --
> Anthony Judge
> <anthony.judge at gmail.com>
> www.laetusinpraesens.org
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
>


--
Anthony Judge
<anthony.judge at gmail.com>
www.laetusinpraesens.org




More information about the x3d-public mailing list