The ruby script uses four functions, three of them take as a parameter "iteratorNum" and time to yield x and y and z coordinates respectively, these are generatorFnX, generatorFnY, generatorFnZ. The time function (generatorFnT) just takes iteratorNum as a parameter. As iteratorNum is varied linearly, this results in different values of x,y,z,t being generated. To create the plot, each entry of a time array is passed into the x,y,z generator functions along with every occurance of iteratorNum. Then this is repeated for every entry in the time array. This generates a sequence of images which are turned into a video. In fact the time array does not affect the time at which it is displayed, since it is the linear increasing index of the time array, not its contents, which determines the time sequence.A future task could be to swap the contents of the functions around so that the functions for time,x,y,z could be interchanged to see what effect that has.