summaryrefslogtreecommitdiff
path: root/src/actions/map.js
diff options
context:
space:
mode:
authorGeorgios Andreadis <G.Andreadis@student.tudelft.nl>2017-10-04 23:23:09 +0200
committerGitHub <noreply@github.com>2017-10-04 23:23:09 +0200
commitfcaaae65d34003874c76e0c01134dedf94248e09 (patch)
tree2aae1422168651e832a1904623f6f5b100fc17ec /src/actions/map.js
parent0a62dfb55c5700013d42a589b930c7448e5bff71 (diff)
parent606d1de0be09f3597165248f65d54e158a13860c (diff)
Merge pull request #42 from atlarge-research/auto-reformat
Standardize code format
Diffstat (limited to 'src/actions/map.js')
-rw-r--r--src/actions/map.js109
1 files changed, 63 insertions, 46 deletions
diff --git a/src/actions/map.js b/src/actions/map.js
index 47d4714d..82546c00 100644
--- a/src/actions/map.js
+++ b/src/actions/map.js
@@ -1,8 +1,8 @@
import {
- MAP_MAX_SCALE,
- MAP_MIN_SCALE,
- MAP_SCALE_PER_EVENT,
- MAP_SIZE_IN_PIXELS
+ MAP_MAX_SCALE,
+ MAP_MIN_SCALE,
+ MAP_SCALE_PER_EVENT,
+ MAP_SIZE_IN_PIXELS
} from "../components/app/map/MapConstants";
export const SET_MAP_POSITION = "SET_MAP_POSITION";
@@ -10,67 +10,84 @@ export const SET_MAP_DIMENSIONS = "SET_MAP_DIMENSIONS";
export const SET_MAP_SCALE = "SET_MAP_SCALE";
export function setMapPosition(x, y) {
- return {
- type: SET_MAP_POSITION,
- x,
- y
- };
+ return {
+ type: SET_MAP_POSITION,
+ x,
+ y
+ };
}
export function setMapDimensions(width, height) {
- return {
- type: SET_MAP_DIMENSIONS,
- width,
- height
- };
+ return {
+ type: SET_MAP_DIMENSIONS,
+ width,
+ height
+ };
}
export function setMapScale(scale) {
- return {
- type: SET_MAP_SCALE,
- scale
- };
+ return {
+ type: SET_MAP_SCALE,
+ scale
+ };
}
export function zoomInOnCenter(zoomIn) {
- return (dispatch, getState) => {
- const state = getState();
+ return (dispatch, getState) => {
+ const state = getState();
- dispatch(zoomInOnPosition(zoomIn, state.map.dimensions.width / 2, state.map.dimensions.height / 2));
- }
+ dispatch(
+ zoomInOnPosition(
+ zoomIn,
+ state.map.dimensions.width / 2,
+ state.map.dimensions.height / 2
+ )
+ );
+ };
}
export function zoomInOnPosition(zoomIn, x, y) {
- return (dispatch, getState) => {
- const state = getState();
+ return (dispatch, getState) => {
+ const state = getState();
- const centerPoint = {
- x: x / state.map.scale - state.map.position.x / state.map.scale,
- y: y / state.map.scale - state.map.position.y / state.map.scale,
- };
- const newScale = zoomIn ? state.map.scale * MAP_SCALE_PER_EVENT : state.map.scale / MAP_SCALE_PER_EVENT;
- const boundedScale = Math.min(Math.max(MAP_MIN_SCALE, newScale), MAP_MAX_SCALE);
+ const centerPoint = {
+ x: x / state.map.scale - state.map.position.x / state.map.scale,
+ y: y / state.map.scale - state.map.position.y / state.map.scale
+ };
+ const newScale = zoomIn
+ ? state.map.scale * MAP_SCALE_PER_EVENT
+ : state.map.scale / MAP_SCALE_PER_EVENT;
+ const boundedScale = Math.min(
+ Math.max(MAP_MIN_SCALE, newScale),
+ MAP_MAX_SCALE
+ );
- const newX = -(centerPoint.x - x / boundedScale) * boundedScale;
- const newY = -(centerPoint.y - y / boundedScale) * boundedScale;
+ const newX = -(centerPoint.x - x / boundedScale) * boundedScale;
+ const newY = -(centerPoint.y - y / boundedScale) * boundedScale;
- dispatch(setMapPositionWithBoundsCheck(newX, newY));
- dispatch(setMapScale(boundedScale));
- }
+ dispatch(setMapPositionWithBoundsCheck(newX, newY));
+ dispatch(setMapScale(boundedScale));
+ };
}
export function setMapPositionWithBoundsCheck(x, y) {
- return (dispatch, getState) => {
- const state = getState();
+ return (dispatch, getState) => {
+ const state = getState();
- const scaledMapSize = MAP_SIZE_IN_PIXELS * state.map.scale;
- const updatedX = x > 0 ? 0 :
- (x < -scaledMapSize + state.map.dimensions.width
- ? -scaledMapSize + state.map.dimensions.width : x);
- const updatedY = y > 0 ? 0 :
- (y < -scaledMapSize + state.map.dimensions.height
- ? -scaledMapSize + state.map.dimensions.height : y);
+ const scaledMapSize = MAP_SIZE_IN_PIXELS * state.map.scale;
+ const updatedX =
+ x > 0
+ ? 0
+ : x < -scaledMapSize + state.map.dimensions.width
+ ? -scaledMapSize + state.map.dimensions.width
+ : x;
+ const updatedY =
+ y > 0
+ ? 0
+ : y < -scaledMapSize + state.map.dimensions.height
+ ? -scaledMapSize + state.map.dimensions.height
+ : y;
- dispatch(setMapPosition(updatedX, updatedY));
- }
+ dispatch(setMapPosition(updatedX, updatedY));
+ };
}