diff options
author | Holden Rohrer <holden.rohrer@gmail.com> | 2019-12-27 00:08:46 -0500 |
---|---|---|
committer | Holden Rohrer <holden.rohrer@gmail.com> | 2019-12-27 14:57:57 -0500 |
commit | 73ba5656bd27f4fb40ef59b8a94f69c4af6b8b8a (patch) | |
tree | 8dcbc2268de77053680166e790016e398ab4cce8 /utils | |
parent | de7d95b13af448ad2c7547060de8ce08fcedd3e4 (diff) |
added more utils
Diffstat (limited to 'utils')
-rw-r--r-- | utils/measurespace.js | 13 | ||||
-rw-r--r-- | utils/rectintersect.js | 9 |
2 files changed, 22 insertions, 0 deletions
diff --git a/utils/measurespace.js b/utils/measurespace.js new file mode 100644 index 0000000..4020926 --- /dev/null +++ b/utils/measurespace.js @@ -0,0 +1,13 @@ +// Provides a utility which takes a Space, and returns its minimum and maximum x/y coordinates, based on .loc and .data + +const vec = require('./vec'); + +module.exports = function(space){ + let min = space.loc; + let data = space.data; + let disp = [data.length, 0]; + for (let i = 0; i < data.length; i++){ + disp[1] = Math.max(disp[1], data[i].length); + } + return [min, vec.add(min, disp)]; +} diff --git a/utils/rectintersect.js b/utils/rectintersect.js new file mode 100644 index 0000000..bd2c479 --- /dev/null +++ b/utils/rectintersect.js @@ -0,0 +1,9 @@ +// Provides rectIntersect, to determine if two rectangles intersect (and hide the code) + +module.exports = function(one, two){ // Rectangles defined by min/max pairs of y/x coords + if ( one[0][0] > two[1][0] || + two[0][0] > one[1][0] || + one[0][1] > two[1][1] || + two[0][1] > two[1][1] ) return false; + return true; +} |