diff options
| author | Jules Laplace <jules@okfoc.us> | 2014-06-03 16:24:10 -0400 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2014-06-03 16:24:28 -0400 |
| commit | 607f69c67a5b4dc72d2754192e3cdf67d0ad11d0 (patch) | |
| tree | 6556e7922c5bedb274bb1650e5dd100643a7895d /assets/javascripts/rectangles/util | |
| parent | d31259291d807c851de4396921e0c26b6dd8dce2 (diff) | |
partitioning client and serveR
Diffstat (limited to 'assets/javascripts/rectangles/util')
| -rw-r--r-- | assets/javascripts/rectangles/util/colors.js | 57 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/constants.js | 57 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/debug.js | 8 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/keys.js | 165 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/mouse.js | 165 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/sort.js | 86 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/util/wheel.js | 62 |
7 files changed, 0 insertions, 600 deletions
diff --git a/assets/javascripts/rectangles/util/colors.js b/assets/javascripts/rectangles/util/colors.js deleted file mode 100644 index e8e60d0..0000000 --- a/assets/javascripts/rectangles/util/colors.js +++ /dev/null @@ -1,57 +0,0 @@ -(function(){ - var color_palettes = { - alpha: [ - "rgba(0,0,0,0.1)", - ], - redblue: [ - "rgba(0,0,0,0.2)", - "rgba(255,0,0,0.2)", - "rgba(0,0,255,0.2)", - "rgba(0,255,0,0.2)", - ], - gray: [ - "rgba(0,0,0,0.1)", - "rgba(0,0,0,0.2)", - "rgba(0,0,0,0.3)", - "rgba(0,0,0,0.4)", - ], - bone: [ - "hsla(0,0%,90%,0.95)", - "hsla(0,0%,80%,0.95)", - "hsla(0,0%,85%,0.95)", - "hsla(0,0%,75%,0.95)", - ], - colors: [ - "rgba(255,0,0,0.5)", - "rgba(255,128,0,0.5)", - "rgba(128,255,0,0.5)", - "rgba(0,255,0,0.5)", - "rgba(0,255,128,0.5)", - "rgba(0,128,255,0.5)", - "rgba(0,0,255,0.5)", - "rgba(128,0,255,0.5)", - "rgba(255,0,255,0.5)", - "rgba(255,0,128,0.5)", - ], - white: [ - "rgba(255,255,255,0.9)", - ], - black: [ - "rgba(0,0,0,0.9)", - ], - } - - var select = document.querySelector("#palette") - select.addEventListener("change", function(){ - colors = color_palettes[select.value] - Rooms.list.forEach(function(room){ - room.walls.forEach(function(wall){ - wall.randomize_colors() - }) - }) - select.blur() - }) - - window.colors = color_palettes[select.value] - window.palettes = color_palettes -})() diff --git a/assets/javascripts/rectangles/util/constants.js b/assets/javascripts/rectangles/util/constants.js deleted file mode 100644 index 58cb1a5..0000000 --- a/assets/javascripts/rectangles/util/constants.js +++ /dev/null @@ -1,57 +0,0 @@ -var FRONT = 0x1, BACK = 0x2, LEFT = 0x4, RIGHT = 0x8, FLOOR = 0x10, CEILING = 0x20 - FRONT_BACK = FRONT | BACK, LEFT_RIGHT = LEFT | RIGHT, FLOOR_CEILING = FLOOR | CEILING - -var TOP = CEILING, BOTTOM = FLOOR, - TOP_LEFT = TOP | LEFT, - TOP_RIGHT = TOP | RIGHT, - BOTTOM_LEFT = BOTTOM | LEFT, - BOTTOM_RIGHT = BOTTOM | RIGHT, - TOP_BOTTOM = TOP | BOTTOM - -var height_min = 200, - height_max = 2000, - side_min = 10, - side_max = 5000, - resize_margin = 8, - cursor_amp = 1.5 - -var painting_distance_from_wall = 8, - dot_distance_from_picture = 3 - -var dot_hide_delay = 50, // ms - dot_side = 20 - -var wall_rotation = {} -wall_rotation[FRONT] = PI -wall_rotation[BACK] = 0 -wall_rotation[LEFT] = HALF_PI -wall_rotation[RIGHT] = -HALF_PI - - - -function sidesToString(sides){ - var s = "" - if (sides & FRONT) s += "front " - if (sides & BACK) s += "back " - if (sides & LEFT) s += "left " - if (sides & RIGHT) s += "right " - if (sides & TOP) s += "top " - if (sides & BOTTOM) s += "bottom " - return s -} - -function side_direction (a, b) { - if (a === b) return 0 - if ((a | b) === FRONT_BACK) return 0 - if ((a | b) === LEFT_RIGHT) return 0 - switch (a) { - case FRONT: - return b & LEFT ? -1 : 1 - case BACK: - return b & RIGHT ? -1 : 1 - case LEFT: - return b & FRONT ? -1 : 1 - case RIGHT: - return b & BACK ? -1 : 1 - } -} diff --git a/assets/javascripts/rectangles/util/debug.js b/assets/javascripts/rectangles/util/debug.js deleted file mode 100644 index 924c816..0000000 --- a/assets/javascripts/rectangles/util/debug.js +++ /dev/null @@ -1,8 +0,0 @@ -/* - on mousedown, z := true - - if (z) // log stuff -*/ - -window.z = true; -document.body.addEventListener("mousedown", function(){ z = true }) diff --git a/assets/javascripts/rectangles/util/keys.js b/assets/javascripts/rectangles/util/keys.js deleted file mode 100644 index 5a5c9d2..0000000 --- a/assets/javascripts/rectangles/util/keys.js +++ /dev/null @@ -1,165 +0,0 @@ -var keys = (function(){ - - var base = new function(){} - base.tube = new Tube () - base.debug = false - - base.on = function(){ - base.tube.on.apply(base.tube, arguments) - } - - base.off = function(){ - base.tube.off.apply(base.tube, arguments) - } - - $(window).keydown(function(e){ - var key = KEY_NAMES[e.keyCode]; - switch (key) { - case undefined: - break; - default: - if (keys.debug) console.log(key) - base.tube(key) - break; - } - }) - var KEYMAP = { - STRG: 17, - CTRL: 17, - CTRLRIGHT: 18, - CTRLR: 18, - SHIFT: 16, - RETURN: 13, - ENTER: 13, - BACKSPACE: 8, - BCKSP:8, - ALT: 18, - ALTR: 17, - ALTRIGHT: 17, - SPACE: 32, - WIN: 91, - MAC: 91, - FN: null, - UP: 38, - DOWN: 40, - LEFT: 37, - RIGHT: 39, - ESC: 27, - DEL: 46, - F1: 112, - F2: 113, - F3: 114, - F4: 115, - F5: 116, - F6: 117, - F7: 118, - F8: 119, - F9: 120, - F10: 121, - F11: 122, - F12: 123 - }, - KEYCODES = { - 'backspace' : '8', - 'tab' : '9', - 'enter' : '13', - 'shift' : '16', - 'ctrl' : '17', - 'alt' : '18', - 'pause_break' : '19', - 'caps_lock' : '20', - 'escape' : '27', - 'page_up' : '33', - 'page down' : '34', - 'end' : '35', - 'home' : '36', - 'left_arrow' : '37', - 'up_arrow' : '38', - 'right_arrow' : '39', - 'down_arrow' : '40', - 'insert' : '45', - 'delete' : '46', - '0' : '48', - '1' : '49', - '2' : '50', - '3' : '51', - '4' : '52', - '5' : '53', - '6' : '54', - '7' : '55', - '8' : '56', - '9' : '57', - 'a' : '65', - 'b' : '66', - 'c' : '67', - 'd' : '68', - 'e' : '69', - 'f' : '70', - 'g' : '71', - 'h' : '72', - 'i' : '73', - 'j' : '74', - 'k' : '75', - 'l' : '76', - 'm' : '77', - 'n' : '78', - 'o' : '79', - 'p' : '80', - 'q' : '81', - 'r' : '82', - 's' : '83', - 't' : '84', - 'u' : '85', - 'v' : '86', - 'w' : '87', - 'x' : '88', - 'y' : '89', - 'z' : '90', - 'left_window key' : '91', - 'right_window key' : '92', - 'select_key' : '93', - 'numpad 0' : '96', - 'numpad 1' : '97', - 'numpad 2' : '98', - 'numpad 3' : '99', - 'numpad 4' : '100', - 'numpad 5' : '101', - 'numpad 6' : '102', - 'numpad 7' : '103', - 'numpad 8' : '104', - 'numpad 9' : '105', - 'multiply' : '106', - 'add' : '107', - 'subtract' : '109', - 'decimal point' : '110', - 'divide' : '111', - 'f1' : '112', - 'f2' : '113', - 'f3' : '114', - 'f4' : '115', - 'f5' : '116', - 'f6' : '117', - 'f7' : '118', - 'f8' : '119', - 'f9' : '120', - 'f10' : '121', - 'f11' : '122', - 'f12' : '123', - 'num_lock' : '144', - 'scroll_lock' : '145', - 'semi_colon' : '186', - 'equal_sign' : '187', - 'comma' : '188', - 'dash' : '189', - 'period' : '190', - 'forward_slash' : '191', - 'grave_accent' : '192', - 'open_bracket' : '219', - 'backslash' : '220', - 'closebracket' : '221', - 'single_quote' : '222' - } - var KEY_NAMES = invert_hash(KEYCODES) - - return base -})()
\ No newline at end of file diff --git a/assets/javascripts/rectangles/util/mouse.js b/assets/javascripts/rectangles/util/mouse.js deleted file mode 100644 index 3aa7cfc..0000000 --- a/assets/javascripts/rectangles/util/mouse.js +++ /dev/null @@ -1,165 +0,0 @@ -/* - usage: - - base.mouse = new mouse({ - el: document.querySelector("#map"), - down: function(e, cursor){ - // do something with val - // cursor.x.a - // cursor.y.a - }, - move: function(e, cursor, delta){ - // delta.a (x) - // delta.b (y) - }, - up: function(e, cursor, new_cursor){ - // cursor.x.a - // cursor.y.a - }, - }) - -*/ - -function mouse (opt) { - var base = this - - opt = defaults(opt, { - el: null, - down: null, - move: null, - drag: null, - enter: null, - up: null, - rightclick: null, - propagate: false, - locked: false, - use_offset: true, - val: 0, - }) - - base.down = false - - base.creating = false - base.dragging = false - - base.cursor = new Rect(0,0,0,0) - - base.tube = new Tube () - opt.down && base.tube.on("down", opt.down) - opt.move && base.tube.on("move", opt.move) - opt.drag && base.tube.on("drag", opt.drag) - opt.enter && base.tube.on("enter", opt.enter) - opt.leave && base.tube.on("leave", opt.leave) - opt.up && base.tube.on("up", opt.up) - opt.rightclick && base.tube.on("rightclick", opt.rightclick) - - var offset = (opt.use_offset && opt.el) ? opt.el.getBoundingClientRect() : null - - base.init = function (){ - base.bind() - } - - base.on = function(){ - base.tube.on.apply(base.tube, arguments) - } - - base.off = function(){ - base.tube.off.apply(base.tube, arguments) - } - - base.bind = function(){ - if (opt.el) { - opt.el.addEventListener("mousedown", base.mousedown) - opt.el.addEventListener("contextmenu", base.contextmenu) - } - window.addEventListener("mousemove", base.mousemove) - window.addEventListener("mouseup", base.mouseup) - } - - base.bind_el = function(el){ - el.addEventListener("mousedown", base.mousedown) - el.addEventListener("mousemove", base.mousemove) - } - base.unbind_el = function(el){ - el.removeEventListener("mousedown", base.mousedown) - el.removeEventListener("mousemove", base.mousemove) - } - - function positionFromMouse(e) { - if (offset) { - return new vec2(offset.left - e.pageX, e.pageY - offset.top) - } - else { - return new vec2(e.pageX, e.pageY) - } - } - - base.mousedown = function(e){ - e.stopPropagation() - - if (opt.use_offset) { - offset = this.getBoundingClientRect() - } - - var pos = positionFromMouse(e) - - var x = pos.a, y = pos.b - base.cursor = new Rect (x,y, x,y) - base.down = true - - base.tube("down", e, base.cursor) - } - base.mousemove = function(e){ - e.stopPropagation() - - if (opt.use_offset && ! offset) return - - var pos = positionFromMouse(e) - - if (e.shiftKey) { - pos.quantize(10) - } - - var x = pos.a, y = pos.b - - if (base.down) { - base.cursor.x.b = x - base.cursor.y.b = y - base.tube("drag", e, base.cursor) - } - else { - base.cursor.x.a = base.cursor.x.b = x - base.cursor.y.a = base.cursor.y.b = y - base.tube("move", e, base.cursor) - } - } - base.mouseenter = function(e, el){ - if (! base.down) return - if (opt.use_offset && ! offset) return - base.tube("enter", e, el, base.cursor) - } - base.mouseleave = function(e, el){ - if (! base.down) return - if (opt.use_offset && ! offset) return - base.tube("leave", e, el, base.cursor) - } - base.mouseup = function(e){ - var pos, new_cursor - - if (base.down) { - e.stopPropagation() - base.down = false - pos = positionFromMouse(e) - new_cursor = new Rect (pos.a, pos.b) - base.tube("up", e, base.cursor, new_cursor) - base.cursor = new_cursor - } - } - base.contextmenu = function(e){ - e.preventDefault() - base.tube("rightclick", e, base.cursor) - } - - base.init() -} - diff --git a/assets/javascripts/rectangles/util/sort.js b/assets/javascripts/rectangles/util/sort.js deleted file mode 100644 index 0985b75..0000000 --- a/assets/javascripts/rectangles/util/sort.js +++ /dev/null @@ -1,86 +0,0 @@ - - -function compare_rect_position(a,b){ - if (a[0].x.a < b[0].x.a) { - return -1 - } - if (a[0].x.a > b[0].x.a) { - return 1 - } - if (a[0].y.a < b[0].y.a) { - return -1 - } - if (a[0].y.a > b[0].y.a) { - return 1 - } - return 0 -} - -function compare_car_reversed (a,b){ - if (a[0] < b[0]) { - return 1 - } - if (a[0] > b[0]) { - return -1 - } - return 0 -} -function compare_car (a,b){ - if (a[0] < b[0]) { - return -1 - } - if (a[0] > b[0]) { - return 1 - } - return 0 -} - -function room_id_tuple (r){ return [r.id, r] } -function room_height_tuple (r){ return [r.height, r] } -function room_area_tuple (r){ return [r.rect.area(), r] } -function rect_area_tuple (r){ return [r.area(), r] } - -function room_rect_tuple (r){ return [r.rect, r] } -function identity_tuple (r){ return [r, r] } -function car (r){ return r[0] } -function cdr (r){ return r[1] } - - -function sort_rooms_by_id(list){ - return list.map(room_id_tuple) - .sort(compare_car) - .map(cdr) -} -function sort_rooms_by_height(list){ - return list.map(room_height_tuple) - .sort(compare_car_reversed) - .map(cdr) -} -function sort_rooms_by_position(list){ - return list.map(room_rect_tuple) - .sort(compare_rect_position) - .map(cdr) -} -function sort_rooms_by_area(list){ - return list.map(room_area_tuple) - .sort(compare_car) - .map(cdr) -} - -function sort_rects_by_position(list){ - return list.map(identity_tuple) - .sort(compare_rect_position) - .map(cdr) -} -function sort_rects_by_area(list){ - return list.map(rect_area_tuple) - .sort(compare_car) - .map(cdr) -} - -function compare_z(a,b){ - return a.rect.y.a < b.rect.y.a ? -1 : a.rect.y.a == b.rect.y.a ? 0 : 1 -} -function compare_x(a,b){ - return a.rect.x.a > b.rect.x.a ? -1 : a.rect.x.a == b.rect.x.a ? 0 : 1 -} diff --git a/assets/javascripts/rectangles/util/wheel.js b/assets/javascripts/rectangles/util/wheel.js deleted file mode 100644 index 6836772..0000000 --- a/assets/javascripts/rectangles/util/wheel.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - usage: - - base.wheel = new wheel({ - el: document.querySelector("#map"), - update: function(e, val, delta){ - // do something with val - }, - }) - -*/ - -function wheel (opt) { - opt = defaults(opt, { - el: document, - fn: function(e, val, delta){}, - propagate: false, - locked: false, - reversible: true, - ratio: 0.02, - val: 0, - }) - - opt.el.addEventListener('mousewheel', onMouseWheel, false); - opt.el.addEventListener('DOMMouseScroll', onMouseWheel, false); - - function onMouseWheel (e) { - if (opt.locked) { - return - } - if (! opt.propagate) { - e.stopPropagation() - e.preventDefault() - } - - var delta = 0; - - // WebKit - if ( event.wheelDeltaY ) { - delta -= event.wheelDeltaY * opt.ratio - } - // Opera / Explorer 9 - else if ( event.wheelDelta ) { - delta -= event.wheelDelta * opt.ratio - } - // Firefox - else if ( event.detail ) { - delta += event.detail * 2 - } - if (! opt.reversible && delta < 0) return; - - opt.val = clamp(opt.val + delta, opt.min, opt.max) - - opt.update(e, opt.val, delta) - } - - opt.lock = function(){ opt.locked = true } - opt.unlock = function(){ opt.locked = false } - - return opt -} - |
