42 lines
1.2 KiB
JavaScript
42 lines
1.2 KiB
JavaScript
// Shared mutable application state.
|
|
// All modules import this same object, so mutations are visible everywhere.
|
|
export const state = {
|
|
planetMesh: null,
|
|
wireMesh: null,
|
|
arrowGroup: null,
|
|
windArrowGroup: null,
|
|
curData: null,
|
|
plateColors: {},
|
|
_hoverBackup: null,
|
|
hoveredPlate: -1,
|
|
hoveredRegion: -1,
|
|
hoveredKoppen: -1,
|
|
_koppenHoverBackup: null,
|
|
_mapKoppenHoverBackup: null,
|
|
mapMesh: null,
|
|
mapFaceToSide: null,
|
|
_mapHoverBackup: null,
|
|
mapGridMesh: null,
|
|
globeGridMesh: null,
|
|
gridEnabled: true,
|
|
gridSpacing: 15,
|
|
mapMode: false,
|
|
mapCenterLon: 0,
|
|
dragStart: null,
|
|
debugLayer: '',
|
|
isTouchDevice: ('ontouchstart' in window) || (navigator.maxTouchPoints > 0),
|
|
editMode: false,
|
|
oceanCurrentArrowGroup: null,
|
|
climateComputed: false,
|
|
pendingToggles: new Set(),
|
|
_pendingBackup: null,
|
|
_mapPendingBackup: null,
|
|
importedHeightmap: false,
|
|
// The painted map's overlay sheet (painted-overlay-view.js): the classified marks and their texture,
|
|
// the meshes that show it on the globe and the map, and whether the toggle asks for it.
|
|
overlay: null,
|
|
overlayVisible: false,
|
|
overlayGlobeMesh: null,
|
|
overlayMapMesh: null,
|
|
};
|