diff options
| author | Jules Laplace <jules@okfoc.us> | 2014-04-18 14:42:01 -0400 |
|---|---|---|
| committer | Jules Laplace <jules@okfoc.us> | 2014-04-18 14:42:01 -0400 |
| commit | c780419e05bddf80b09e3091634361f289666f35 (patch) | |
| tree | 0c3da34fbb443938672d92aaed22b1639345ca54 /assets/javascripts/rectangles/map | |
| parent | b67e1e3c83e06fe7b5dfa4fa75f714121c02ce50 (diff) | |
camera cursor
Diffstat (limited to 'assets/javascripts/rectangles/map')
| -rw-r--r-- | assets/javascripts/rectangles/map/_map.js | 1 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/map/draw.js | 23 | ||||
| -rw-r--r-- | assets/javascripts/rectangles/map/ui.js | 9 |
3 files changed, 30 insertions, 3 deletions
diff --git a/assets/javascripts/rectangles/map/_map.js b/assets/javascripts/rectangles/map/_map.js index b0d0b60..846c73c 100644 --- a/assets/javascripts/rectangles/map/_map.js +++ b/assets/javascripts/rectangles/map/_map.js @@ -27,6 +27,7 @@ var map = new function(){ map.draw.regions(clipper.regions) map.draw.mouse(map.ui.mouse.cursor) + scene && map.draw.camera(scene.camera) ctx.restore() } diff --git a/assets/javascripts/rectangles/map/draw.js b/assets/javascripts/rectangles/map/draw.js index 1dcd1ae..1fca4b9 100644 --- a/assets/javascripts/rectangles/map/draw.js +++ b/assets/javascripts/rectangles/map/draw.js @@ -44,6 +44,29 @@ map.draw = new function(){ } } } + + base.camera = function(cam){ + ctx.lineWidth = 0.5 + + ctx.save() + + ctx.translate(cam.x, cam.z) + ctx.rotate(cam.rotationY) + + var radius = 3 / map.zoom + + ctx.fillStyle = '#888'; + + ctx.beginPath(); + ctx.moveTo(0,0) + ctx.lineTo(-radius,-radius/2) + ctx.lineTo(0,radius*3) + ctx.lineTo(radius,-radius/2) + ctx.moveTo(0,0) + ctx.fill() + + ctx.restore() + } // diff --git a/assets/javascripts/rectangles/map/ui.js b/assets/javascripts/rectangles/map/ui.js index 6560695..f08cae0 100644 --- a/assets/javascripts/rectangles/map/ui.js +++ b/assets/javascripts/rectangles/map/ui.js @@ -25,10 +25,13 @@ map.ui = new function(){ function down (e, cursor){ cursor.x.div(map.zoom).add( map.center.a + map.bounds.a/2 ) cursor.y.div(map.zoom).add( -map.center.b - map.bounds.b/2 ) - +console.log(cursor+"") if (e.ctrlKey || e.which === 3) { - map.center.a = cursor.x.b = cursor.x.a + map.bounds.a/2 - map.center.b = cursor.y.b = cursor.y.a + map.bounds.b + map.center.a = cursor.x.a + map.bounds.a * map.zoom + map.center.b = -cursor.y.a + map.bounds.b * map.zoom + console.log(map.center+"") + cursor.x.b = cursor.x.a + cursor.y.b = cursor.y.a base.mouse.down = false e.preventDefault() e.stopPropagation() |
