JavaScript class to generate maps of triangles
npm install triangulrJavaScript class to generate maps of triangles.
Test it on http://maxwellito.github.io/triangulr
Available on NPM : npm install triangulr
triangulr is a little JavaScript class to build triangles walls. Completely random. In SVG: ready for HTML or Illustrator use. It give you a bit of flexibility to generate what you need: dimension, triangle size, ratio of mess and color
This is pure JavaScript, no jQuery required or other libraries. Only the simple triangulr.js in your page and you're ready to go.
Here is an example:
``javascript`
var mySVG = new Triangulr (600, 500, 60, 0);
document.getElementById('myDiv').appendChild(mySVG);
Triangulr constructor needs these attributes:
- width integer : width of the SVG to generateheight
- integer : height of the SVG to generatetriangleHeight
- integer : original triangle heightpointArea
- integer : area to place random pointscolor
- function (optional) : function to generate a color for each triangle an object will be passed as parameter with information about the current triangle counter triangle numbermarkx
- column indexy
- line indexlines
- number of lines in the SVGcols
- number of columns in the SVGpoints` array of triangle points
-
The engine is quite simple to understand, even if at the start, it looks confusing to build this random triangles.
To begin, we use the value given to the constructor to create a regular pattern with proper equilateral triangles. To do that, the script start by generate lines of dots. Then a second pass use these points to generate triangles, and also the color function to generate the color code.
Then the last pass use the data to render it in a SVG DOM object.