|
|
@ -256,6 +256,31 @@
|
|
256
|
256
|
return wavies;
|
|
257
|
257
|
}
|
|
258
|
258
|
|
|
|
259
|
trixl.dynamic.jumping = function(lo, hi, interval, color) {
|
|
|
260
|
var pos = [rand(lo, hi), rand(lo, hi), rand(lo, hi)];
|
|
|
261
|
var last = 0;
|
|
|
262
|
var interval = interval || 1000;
|
|
|
263
|
var color = color || trixl.color;
|
|
|
264
|
return function(t) {
|
|
|
265
|
if (Math.abs(last - t) > interval) {
|
|
|
266
|
pos = [rand(lo, hi), rand(lo, hi), rand(lo, hi)];
|
|
|
267
|
last = t;
|
|
|
268
|
}
|
|
|
269
|
return {x: pos[0], y: pos[1], z: pos[2], color: color};
|
|
|
270
|
}
|
|
|
271
|
}
|
|
|
272
|
|
|
|
273
|
trixl.dynamic.blinking = function(pos, interval, color) {
|
|
|
274
|
var interval = interval || 5000;
|
|
|
275
|
var color = color || trixl.color;
|
|
|
276
|
|
|
|
277
|
return function(t) {
|
|
|
278
|
var c= color;
|
|
|
279
|
c[3] = Math.sin((t % interval) / interval * Math.PI);
|
|
|
280
|
return {x: pos[0], y: pos[1], z: pos[2], color: c};
|
|
|
281
|
}
|
|
|
282
|
}
|
|
|
283
|
|
|
259
|
284
|
trixl.generate = {};
|
|
260
|
285
|
trixl.generate.random = function(lo, hi, color) {
|
|
261
|
286
|
var x = lo + Math.round(Math.random() * (hi - lo)),
|
|
|
@ -295,6 +320,14 @@
|
|
295
|
320
|
});
|
|
296
|
321
|
}
|
|
297
|
322
|
|
|
|
323
|
trixl.generate.jumpers = function(n, lo, hi, loI, hiI) {
|
|
|
324
|
range(n).map(function() {
|
|
|
325
|
var color = [Math.random(), Math.random(), Math.random(), 1];
|
|
|
326
|
var interval = rand(loI || 10000, hiI || 100000);
|
|
|
327
|
trixl.world.dynamic.push(trixl.dynamic.jumping(lo, hi, interval, color));
|
|
|
328
|
});
|
|
|
329
|
}
|
|
|
330
|
|
|
298
|
331
|
trixl.geometry = {};
|
|
299
|
332
|
|
|
300
|
333
|
trixl.geometry.circle = function(pos, radius, color) {
|