function pickColor() { //var fullChoices = ['YlGn','YlGnBu','GnBu','BuGn','PuBuGn','PuBu','BuPu','RdPu','PuRd','OrRd','YlOrRd','YlOrBr','Purples','Blues','Greens','Oranges','Reds','Greys','PuOr','BrBG','PRGn','PiYG','RdBu','RdGy','RdYlBu','Spectral','RdYlGn']; var choices = ['YlGn','YlGnBu','GnBu','BuGn','PuBuGn','PuBu','BuPu','OrRd','YlOrRd','YlOrBr','Blues','Greens','Oranges','Reds','Greys','PuOr','BrBG','PRGn','RdBu','RdGy','RdYlBu','Spectral','RdYlGn']; var i = Math.floor(Math.random() * choices.length ); return choices[i]; }; function initTrianglify() { // set up the base pattern var pattern = Trianglify({ width: window.innerWidth, height: window.innerHeight, cell_size: 20 + Math.random() * 50, //x_colors: 'random', x_colors: pickColor(), y_colors: pickColor(), variance: 0.33 + Math.random() * 2 / 3, }); document.body.appendChild(pattern.canvas()); return pattern; }; function updateTrianglify(pattern) { pattern = pattern.data; /* console.log(pattern.opts.height); */ pattern = Trianglify({ width: window.innerWidth, height: window.innerHeight, cell_size: pattern.opts.cell_size, //x_colors: 'random', x_colors: pattern.opts.x_colors, y_colors: pattern.opts.y_colors, variance: pattern.opts.variance, }); $('canvas').remove(); document.body.appendChild(pattern.canvas()); }; /* We need to remember pattern, in order to modify it */ var pattern = initTrianglify(); var resizeTimer; $(window).resize(pattern, function(pattern) { clearTimeout(resizeTimer); resizeTimer = setTimeout(updateTrianglify(pattern), 500); }); $(window).resize(pattern, updateTrianglify);