@deck.gl/aggregation-layers 8.6.3 → 8.7.0-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/dist.dev.js +2733 -1948
  2. package/dist/es5/aggregation-layer.js +163 -109
  3. package/dist/es5/aggregation-layer.js.map +1 -1
  4. package/dist/es5/contour-layer/contour-layer.js +260 -240
  5. package/dist/es5/contour-layer/contour-layer.js.map +1 -1
  6. package/dist/es5/contour-layer/contour-utils.js +86 -65
  7. package/dist/es5/contour-layer/contour-utils.js.map +1 -1
  8. package/dist/es5/contour-layer/marching-squares-codes.js +106 -181
  9. package/dist/es5/contour-layer/marching-squares-codes.js.map +1 -1
  10. package/dist/es5/contour-layer/marching-squares.js +59 -56
  11. package/dist/es5/contour-layer/marching-squares.js.map +1 -1
  12. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js +121 -85
  13. package/dist/es5/cpu-grid-layer/cpu-grid-layer.js.map +1 -1
  14. package/dist/es5/cpu-grid-layer/grid-aggregator.js +119 -93
  15. package/dist/es5/cpu-grid-layer/grid-aggregator.js.map +1 -1
  16. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +1 -1
  17. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js +167 -131
  18. package/dist/es5/gpu-grid-layer/gpu-grid-cell-layer.js.map +1 -1
  19. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js +322 -319
  20. package/dist/es5/gpu-grid-layer/gpu-grid-layer.js.map +1 -1
  21. package/dist/es5/grid-aggregation-layer.js +230 -202
  22. package/dist/es5/grid-aggregation-layer.js.map +1 -1
  23. package/dist/es5/grid-layer/grid-layer.js +91 -61
  24. package/dist/es5/grid-layer/grid-layer.js.map +1 -1
  25. package/dist/es5/heatmap-layer/heatmap-layer-utils.js +59 -24
  26. package/dist/es5/heatmap-layer/heatmap-layer-utils.js.map +1 -1
  27. package/dist/es5/heatmap-layer/heatmap-layer.js +536 -515
  28. package/dist/es5/heatmap-layer/heatmap-layer.js.map +1 -1
  29. package/dist/es5/heatmap-layer/triangle-layer.js +91 -64
  30. package/dist/es5/heatmap-layer/triangle-layer.js.map +1 -1
  31. package/dist/es5/hexagon-layer/hexagon-aggregator.js +77 -59
  32. package/dist/es5/hexagon-layer/hexagon-aggregator.js.map +1 -1
  33. package/dist/es5/hexagon-layer/hexagon-layer.js +164 -121
  34. package/dist/es5/hexagon-layer/hexagon-layer.js.map +1 -1
  35. package/dist/es5/index.js +12 -12
  36. package/dist/es5/index.js.map +1 -1
  37. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js +193 -168
  38. package/dist/es5/screen-grid-layer/screen-grid-cell-layer.js.map +1 -1
  39. package/dist/es5/screen-grid-layer/screen-grid-layer.js +250 -235
  40. package/dist/es5/screen-grid-layer/screen-grid-layer.js.map +1 -1
  41. package/dist/es5/utils/aggregation-operation-utils.js +31 -16
  42. package/dist/es5/utils/aggregation-operation-utils.js.map +1 -1
  43. package/dist/es5/utils/bin-sorter.js +198 -118
  44. package/dist/es5/utils/bin-sorter.js.map +1 -1
  45. package/dist/es5/utils/color-utils.js +10 -8
  46. package/dist/es5/utils/color-utils.js.map +1 -1
  47. package/dist/es5/utils/cpu-aggregator.js +342 -323
  48. package/dist/es5/utils/cpu-aggregator.js.map +1 -1
  49. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js +18 -20
  50. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator-constants.js.map +1 -1
  51. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js +547 -549
  52. package/dist/es5/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +1 -1
  53. package/dist/es5/utils/grid-aggregation-utils.js +44 -50
  54. package/dist/es5/utils/grid-aggregation-utils.js.map +1 -1
  55. package/dist/es5/utils/prop-utils.js +2 -2
  56. package/dist/es5/utils/prop-utils.js.map +1 -1
  57. package/dist/es5/utils/resource-utils.js +39 -32
  58. package/dist/es5/utils/resource-utils.js.map +1 -1
  59. package/dist/es5/utils/scale-utils.js +66 -36
  60. package/dist/es5/utils/scale-utils.js.map +1 -1
  61. package/dist/esm/contour-layer/marching-squares-codes.js.map +1 -1
  62. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +1 -1
  63. package/dist/esm/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js.map +1 -1
  64. package/dist/esm/heatmap-layer/heatmap-layer.js +4 -1
  65. package/dist/esm/heatmap-layer/heatmap-layer.js.map +1 -1
  66. package/dist/esm/heatmap-layer/triangle-layer.js.map +1 -1
  67. package/dist/esm/index.js.map +1 -1
  68. package/dist/esm/screen-grid-layer/screen-grid-cell-layer.js.map +1 -1
  69. package/dist/esm/utils/aggregation-operation-utils.js.map +1 -1
  70. package/dist/esm/utils/cpu-aggregator.js.map +1 -1
  71. package/dist/esm/utils/gpu-grid-aggregation/gpu-grid-aggregator.js.map +1 -1
  72. package/dist.min.js +1 -1
  73. package/package.json +3 -3
  74. package/src/contour-layer/marching-squares-codes.js +52 -10
  75. package/src/gpu-grid-layer/gpu-grid-cell-layer-vertex.glsl.js +2 -3
  76. package/src/heatmap-layer/heatmap-layer.js +6 -10
  77. package/src/heatmap-layer/triangle-layer.js +2 -9
  78. package/src/{index.js → index.ts} +0 -0
  79. package/src/utils/aggregation-operation-utils.js +4 -1
@@ -7,83 +7,104 @@ exports.generateContours = generateContours;
7
7
 
8
8
  var _marchingSquares = require("./marching-squares");
9
9
 
10
- function generateContours({
11
- thresholdData,
12
- colors,
13
- cellWeights,
14
- gridSize,
15
- gridOrigin,
16
- cellSize
17
- }) {
18
- const contourSegments = [];
19
- const contourPolygons = [];
20
- const width = gridSize[0];
21
- const height = gridSize[1];
22
- let segmentIndex = 0;
23
- let polygonIndex = 0;
10
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
24
11
 
25
- for (const data of thresholdData) {
26
- const {
27
- contour
28
- } = data;
29
- const {
30
- threshold
31
- } = contour;
12
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
32
13
 
33
- for (let x = -1; x < width; x++) {
34
- for (let y = -1; y < height; y++) {
35
- const {
36
- code,
37
- meanCode
38
- } = (0, _marchingSquares.getCode)({
39
- cellWeights,
40
- threshold,
41
- x,
42
- y,
43
- width,
44
- height
45
- });
46
- const opts = {
47
- gridOrigin,
48
- cellSize,
49
- x,
50
- y,
51
- width,
52
- height,
53
- code,
54
- meanCode,
55
- thresholdData: data
56
- };
14
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
57
15
 
58
- if (Array.isArray(threshold)) {
59
- opts.type = _marchingSquares.CONTOUR_TYPE.ISO_BANDS;
60
- const polygons = (0, _marchingSquares.getVertices)(opts);
16
+ function generateContours(_ref) {
17
+ var thresholdData = _ref.thresholdData,
18
+ colors = _ref.colors,
19
+ cellWeights = _ref.cellWeights,
20
+ gridSize = _ref.gridSize,
21
+ gridOrigin = _ref.gridOrigin,
22
+ cellSize = _ref.cellSize;
23
+ var contourSegments = [];
24
+ var contourPolygons = [];
25
+ var width = gridSize[0];
26
+ var height = gridSize[1];
27
+ var segmentIndex = 0;
28
+ var polygonIndex = 0;
61
29
 
62
- for (const polygon of polygons) {
63
- contourPolygons[polygonIndex++] = {
64
- vertices: polygon,
65
- contour
66
- };
67
- }
68
- } else {
69
- opts.type = _marchingSquares.CONTOUR_TYPE.ISO_LINES;
70
- const vertices = (0, _marchingSquares.getVertices)(opts);
30
+ var _iterator = _createForOfIteratorHelper(thresholdData),
31
+ _step;
32
+
33
+ try {
34
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
35
+ var data = _step.value;
36
+ var contour = data.contour;
37
+ var threshold = contour.threshold;
38
+
39
+ for (var x = -1; x < width; x++) {
40
+ for (var y = -1; y < height; y++) {
41
+ var _getCode = (0, _marchingSquares.getCode)({
42
+ cellWeights: cellWeights,
43
+ threshold: threshold,
44
+ x: x,
45
+ y: y,
46
+ width: width,
47
+ height: height
48
+ }),
49
+ code = _getCode.code,
50
+ meanCode = _getCode.meanCode;
51
+
52
+ var opts = {
53
+ gridOrigin: gridOrigin,
54
+ cellSize: cellSize,
55
+ x: x,
56
+ y: y,
57
+ width: width,
58
+ height: height,
59
+ code: code,
60
+ meanCode: meanCode,
61
+ thresholdData: data
62
+ };
63
+
64
+ if (Array.isArray(threshold)) {
65
+ opts.type = _marchingSquares.CONTOUR_TYPE.ISO_BANDS;
66
+ var polygons = (0, _marchingSquares.getVertices)(opts);
67
+
68
+ var _iterator2 = _createForOfIteratorHelper(polygons),
69
+ _step2;
70
+
71
+ try {
72
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
73
+ var polygon = _step2.value;
74
+ contourPolygons[polygonIndex++] = {
75
+ vertices: polygon,
76
+ contour: contour
77
+ };
78
+ }
79
+ } catch (err) {
80
+ _iterator2.e(err);
81
+ } finally {
82
+ _iterator2.f();
83
+ }
84
+ } else {
85
+ opts.type = _marchingSquares.CONTOUR_TYPE.ISO_LINES;
86
+ var vertices = (0, _marchingSquares.getVertices)(opts);
71
87
 
72
- for (let i = 0; i < vertices.length; i += 2) {
73
- contourSegments[segmentIndex++] = {
74
- start: vertices[i],
75
- end: vertices[i + 1],
76
- contour
77
- };
88
+ for (var i = 0; i < vertices.length; i += 2) {
89
+ contourSegments[segmentIndex++] = {
90
+ start: vertices[i],
91
+ end: vertices[i + 1],
92
+ contour: contour
93
+ };
94
+ }
78
95
  }
79
96
  }
80
97
  }
81
98
  }
99
+ } catch (err) {
100
+ _iterator.e(err);
101
+ } finally {
102
+ _iterator.f();
82
103
  }
83
104
 
84
105
  return {
85
- contourSegments,
86
- contourPolygons
106
+ contourSegments: contourSegments,
107
+ contourPolygons: contourPolygons
87
108
  };
88
109
  }
89
110
  //# sourceMappingURL=contour-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/contour-layer/contour-utils.js"],"names":["generateContours","thresholdData","colors","cellWeights","gridSize","gridOrigin","cellSize","contourSegments","contourPolygons","width","height","segmentIndex","polygonIndex","data","contour","threshold","x","y","code","meanCode","opts","Array","isArray","type","CONTOUR_TYPE","ISO_BANDS","polygons","polygon","vertices","ISO_LINES","i","length","start","end"],"mappings":";;;;;;;AAAA;;AAIO,SAASA,gBAAT,CAA0B;AAC/BC,EAAAA,aAD+B;AAE/BC,EAAAA,MAF+B;AAG/BC,EAAAA,WAH+B;AAI/BC,EAAAA,QAJ+B;AAK/BC,EAAAA,UAL+B;AAM/BC,EAAAA;AAN+B,CAA1B,EAOJ;AACD,QAAMC,eAAe,GAAG,EAAxB;AACA,QAAMC,eAAe,GAAG,EAAxB;AACA,QAAMC,KAAK,GAAGL,QAAQ,CAAC,CAAD,CAAtB;AACA,QAAMM,MAAM,GAAGN,QAAQ,CAAC,CAAD,CAAvB;AACA,MAAIO,YAAY,GAAG,CAAnB;AACA,MAAIC,YAAY,GAAG,CAAnB;;AAEA,OAAK,MAAMC,IAAX,IAAmBZ,aAAnB,EAAkC;AAChC,UAAM;AAACa,MAAAA;AAAD,QAAYD,IAAlB;AACA,UAAM;AAACE,MAAAA;AAAD,QAAcD,OAApB;;AACA,SAAK,IAAIE,CAAC,GAAG,CAAC,CAAd,EAAiBA,CAAC,GAAGP,KAArB,EAA4BO,CAAC,EAA7B,EAAiC;AAC/B,WAAK,IAAIC,CAAC,GAAG,CAAC,CAAd,EAAiBA,CAAC,GAAGP,MAArB,EAA6BO,CAAC,EAA9B,EAAkC;AAEhC,cAAM;AAACC,UAAAA,IAAD;AAAOC,UAAAA;AAAP,YAAmB,8BAAQ;AAC/BhB,UAAAA,WAD+B;AAE/BY,UAAAA,SAF+B;AAG/BC,UAAAA,CAH+B;AAI/BC,UAAAA,CAJ+B;AAK/BR,UAAAA,KAL+B;AAM/BC,UAAAA;AAN+B,SAAR,CAAzB;AAQA,cAAMU,IAAI,GAAG;AACXf,UAAAA,UADW;AAEXC,UAAAA,QAFW;AAGXU,UAAAA,CAHW;AAIXC,UAAAA,CAJW;AAKXR,UAAAA,KALW;AAMXC,UAAAA,MANW;AAOXQ,UAAAA,IAPW;AAQXC,UAAAA,QARW;AASXlB,UAAAA,aAAa,EAAEY;AATJ,SAAb;;AAWA,YAAIQ,KAAK,CAACC,OAAN,CAAcP,SAAd,CAAJ,EAA8B;AAC5BK,UAAAA,IAAI,CAACG,IAAL,GAAYC,8BAAaC,SAAzB;AACA,gBAAMC,QAAQ,GAAG,kCAAYN,IAAZ,CAAjB;;AACA,eAAK,MAAMO,OAAX,IAAsBD,QAAtB,EAAgC;AAC9BlB,YAAAA,eAAe,CAACI,YAAY,EAAb,CAAf,GAAkC;AAChCgB,cAAAA,QAAQ,EAAED,OADsB;AAEhCb,cAAAA;AAFgC,aAAlC;AAID;AACF,SATD,MASO;AAELM,UAAAA,IAAI,CAACG,IAAL,GAAYC,8BAAaK,SAAzB;AACA,gBAAMD,QAAQ,GAAG,kCAAYR,IAAZ,CAAjB;;AACA,eAAK,IAAIU,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGF,QAAQ,CAACG,MAA7B,EAAqCD,CAAC,IAAI,CAA1C,EAA6C;AAC3CvB,YAAAA,eAAe,CAACI,YAAY,EAAb,CAAf,GAAkC;AAChCqB,cAAAA,KAAK,EAAEJ,QAAQ,CAACE,CAAD,CADiB;AAEhCG,cAAAA,GAAG,EAAEL,QAAQ,CAACE,CAAC,GAAG,CAAL,CAFmB;AAGhChB,cAAAA;AAHgC,aAAlC;AAKD;AACF;AACF;AACF;AACF;;AACD,SAAO;AAACP,IAAAA,eAAD;AAAkBC,IAAAA;AAAlB,GAAP;AACD","sourcesContent":["import {getCode, getVertices, CONTOUR_TYPE} from './marching-squares';\n\n// Given all the cell weights, generates contours for each threshold.\n/* eslint-disable max-depth */\nexport function generateContours({\n thresholdData,\n colors,\n cellWeights,\n gridSize,\n gridOrigin,\n cellSize\n}) {\n const contourSegments = [];\n const contourPolygons = [];\n const width = gridSize[0];\n const height = gridSize[1];\n let segmentIndex = 0;\n let polygonIndex = 0;\n\n for (const data of thresholdData) {\n const {contour} = data;\n const {threshold} = contour;\n for (let x = -1; x < width; x++) {\n for (let y = -1; y < height; y++) {\n // Get the MarchingSquares code based on neighbor cell weights.\n const {code, meanCode} = getCode({\n cellWeights,\n threshold,\n x,\n y,\n width,\n height\n });\n const opts = {\n gridOrigin,\n cellSize,\n x,\n y,\n width,\n height,\n code,\n meanCode,\n thresholdData: data\n };\n if (Array.isArray(threshold)) {\n opts.type = CONTOUR_TYPE.ISO_BANDS;\n const polygons = getVertices(opts);\n for (const polygon of polygons) {\n contourPolygons[polygonIndex++] = {\n vertices: polygon,\n contour\n };\n }\n } else {\n // Get the intersection vertices based on MarchingSquares code.\n opts.type = CONTOUR_TYPE.ISO_LINES;\n const vertices = getVertices(opts);\n for (let i = 0; i < vertices.length; i += 2) {\n contourSegments[segmentIndex++] = {\n start: vertices[i],\n end: vertices[i + 1],\n contour\n };\n }\n }\n }\n }\n }\n return {contourSegments, contourPolygons};\n}\n/* eslint-enable max-depth */\n"],"file":"contour-utils.js"}
1
+ {"version":3,"sources":["../../../src/contour-layer/contour-utils.js"],"names":["generateContours","thresholdData","colors","cellWeights","gridSize","gridOrigin","cellSize","contourSegments","contourPolygons","width","height","segmentIndex","polygonIndex","data","contour","threshold","x","y","code","meanCode","opts","Array","isArray","type","CONTOUR_TYPE","ISO_BANDS","polygons","polygon","vertices","ISO_LINES","i","length","start","end"],"mappings":"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","sourcesContent":["import {getCode, getVertices, CONTOUR_TYPE} from './marching-squares';\n\n// Given all the cell weights, generates contours for each threshold.\n/* eslint-disable max-depth */\nexport function generateContours({\n thresholdData,\n colors,\n cellWeights,\n gridSize,\n gridOrigin,\n cellSize\n}) {\n const contourSegments = [];\n const contourPolygons = [];\n const width = gridSize[0];\n const height = gridSize[1];\n let segmentIndex = 0;\n let polygonIndex = 0;\n\n for (const data of thresholdData) {\n const {contour} = data;\n const {threshold} = contour;\n for (let x = -1; x < width; x++) {\n for (let y = -1; y < height; y++) {\n // Get the MarchingSquares code based on neighbor cell weights.\n const {code, meanCode} = getCode({\n cellWeights,\n threshold,\n x,\n y,\n width,\n height\n });\n const opts = {\n gridOrigin,\n cellSize,\n x,\n y,\n width,\n height,\n code,\n meanCode,\n thresholdData: data\n };\n if (Array.isArray(threshold)) {\n opts.type = CONTOUR_TYPE.ISO_BANDS;\n const polygons = getVertices(opts);\n for (const polygon of polygons) {\n contourPolygons[polygonIndex++] = {\n vertices: polygon,\n contour\n };\n }\n } else {\n // Get the intersection vertices based on MarchingSquares code.\n opts.type = CONTOUR_TYPE.ISO_LINES;\n const vertices = getVertices(opts);\n for (let i = 0; i < vertices.length; i += 2) {\n contourSegments[segmentIndex++] = {\n start: vertices[i],\n end: vertices[i + 1],\n contour\n };\n }\n }\n }\n }\n }\n return {contourSegments, contourPolygons};\n}\n/* eslint-enable max-depth */\n"],"file":"contour-utils.js"}
@@ -1,12 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.ISOBANDS_CODE_OFFSET_MAP = exports.ISOLINES_CODE_OFFSET_MAP = void 0;
7
- const HALF = 0.5;
8
- const ONE6TH = 1 / 6;
9
- const OFFSET = {
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var _ISOBANDS_CODE_OFFSET;
13
+
14
+ var HALF = 0.5;
15
+ var ONE6TH = 1 / 6;
16
+ var OFFSET = {
10
17
  N: [0, HALF],
11
18
  E: [HALF, 0],
12
19
  S: [0, -HALF],
@@ -16,45 +23,45 @@ const OFFSET = {
16
23
  SE: [HALF, -HALF],
17
24
  SW: [-HALF, -HALF]
18
25
  };
19
- const SW_TRIANGLE = [OFFSET.W, OFFSET.SW, OFFSET.S];
20
- const SE_TRIANGLE = [OFFSET.S, OFFSET.SE, OFFSET.E];
21
- const NE_TRIANGLE = [OFFSET.E, OFFSET.NE, OFFSET.N];
22
- const NW_TRIANGLE = [OFFSET.NW, OFFSET.W, OFFSET.N];
23
- const SW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF]];
24
- const SE_TRAPEZOID = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH]];
25
- const NE_TRAPEZOID = [[HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
26
- const NW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
27
- const S_RECTANGLE = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E];
28
- const E_RECTANGLE = [OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
29
- const N_RECTANGLE = [OFFSET.NW, OFFSET.W, OFFSET.E, OFFSET.NE];
30
- const W_RECTANGLE = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.N];
31
- const EW_RECTANGEL = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [HALF, -ONE6TH], [HALF, ONE6TH]];
32
- const SN_RECTANGEL = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [ONE6TH, HALF], [-ONE6TH, HALF]];
33
- const SQUARE = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.NE];
34
- const SW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.E, OFFSET.N];
35
- const SE_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.NE, OFFSET.N];
36
- const NE_PENTAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.NE];
37
- const NW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE];
38
- const NW_N_PENTAGON = [OFFSET.NW, OFFSET.W, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
39
- const NE_E_PENTAGON = [[-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
40
- const SE_S_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E];
41
- const SW_W_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [ONE6TH, HALF], [-ONE6TH, HALF]];
42
- const NW_W_PENTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.N];
43
- const NE_N_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.E, OFFSET.NE, OFFSET.N];
44
- const SE_E_PENTAGON = [OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
45
- const SW_S_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH]];
46
- const S_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
47
- const E_HEXAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
48
- const N_HEXAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE];
49
- const W_HEXAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
50
- const SW_NE_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE, OFFSET.N];
51
- const NW_SE_HEXAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.E, OFFSET.N];
52
- const NE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
53
- const SW_HEPTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
54
- const NW_HEPTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
55
- const SE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
56
- const OCTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
57
- const ISOLINES_CODE_OFFSET_MAP = {
26
+ var SW_TRIANGLE = [OFFSET.W, OFFSET.SW, OFFSET.S];
27
+ var SE_TRIANGLE = [OFFSET.S, OFFSET.SE, OFFSET.E];
28
+ var NE_TRIANGLE = [OFFSET.E, OFFSET.NE, OFFSET.N];
29
+ var NW_TRIANGLE = [OFFSET.NW, OFFSET.W, OFFSET.N];
30
+ var SW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF]];
31
+ var SE_TRAPEZOID = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH]];
32
+ var NE_TRAPEZOID = [[HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
33
+ var NW_TRAPEZOID = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
34
+ var S_RECTANGLE = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E];
35
+ var E_RECTANGLE = [OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
36
+ var N_RECTANGLE = [OFFSET.NW, OFFSET.W, OFFSET.E, OFFSET.NE];
37
+ var W_RECTANGLE = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.N];
38
+ var EW_RECTANGEL = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [HALF, -ONE6TH], [HALF, ONE6TH]];
39
+ var SN_RECTANGEL = [[-ONE6TH, -HALF], [ONE6TH, -HALF], [ONE6TH, HALF], [-ONE6TH, HALF]];
40
+ var SQUARE = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.NE];
41
+ var SW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.SE, OFFSET.E, OFFSET.N];
42
+ var SE_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.NE, OFFSET.N];
43
+ var NE_PENTAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.NE];
44
+ var NW_PENTAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE];
45
+ var NW_N_PENTAGON = [OFFSET.NW, OFFSET.W, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
46
+ var NE_E_PENTAGON = [[-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
47
+ var SE_S_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E];
48
+ var SW_W_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [ONE6TH, HALF], [-ONE6TH, HALF]];
49
+ var NW_W_PENTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.N];
50
+ var NE_N_PENTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.E, OFFSET.NE, OFFSET.N];
51
+ var SE_E_PENTAGON = [OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
52
+ var SW_S_PENTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH]];
53
+ var S_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
54
+ var E_HEXAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.NE, OFFSET.N];
55
+ var N_HEXAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE];
56
+ var W_HEXAGON = [OFFSET.NW, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
57
+ var SW_NE_HEXAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, OFFSET.E, OFFSET.NE, OFFSET.N];
58
+ var NW_SE_HEXAGON = [OFFSET.NW, OFFSET.W, OFFSET.S, OFFSET.SE, OFFSET.E, OFFSET.N];
59
+ var NE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], OFFSET.E, OFFSET.NE, OFFSET.N];
60
+ var SW_HEPTAGON = [OFFSET.W, OFFSET.SW, OFFSET.S, [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
61
+ var NW_HEPTAGON = [OFFSET.NW, OFFSET.W, [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], OFFSET.N];
62
+ var SE_HEPTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], OFFSET.S, OFFSET.SE, OFFSET.E, [ONE6TH, HALF], [-ONE6TH, HALF]];
63
+ var OCTAGON = [[-HALF, ONE6TH], [-HALF, -ONE6TH], [-ONE6TH, -HALF], [ONE6TH, -HALF], [HALF, -ONE6TH], [HALF, ONE6TH], [ONE6TH, HALF], [-ONE6TH, HALF]];
64
+ var ISOLINES_CODE_OFFSET_MAP = {
58
65
  0: [],
59
66
  1: [[OFFSET.W, OFFSET.S]],
60
67
  2: [[OFFSET.S, OFFSET.E]],
@@ -84,144 +91,62 @@ function ternaryToIndex(ternary) {
84
91
  return parseInt(ternary, 4);
85
92
  }
86
93
 
87
- const ISOBANDS_CODE_OFFSET_MAP = {
88
- [ternaryToIndex('0000')]: [],
89
- [ternaryToIndex('2222')]: [],
90
- [ternaryToIndex('2221')]: [SW_TRIANGLE],
91
- [ternaryToIndex('2212')]: [SE_TRIANGLE],
92
- [ternaryToIndex('2122')]: [NE_TRIANGLE],
93
- [ternaryToIndex('1222')]: [NW_TRIANGLE],
94
- [ternaryToIndex('0001')]: [SW_TRIANGLE],
95
- [ternaryToIndex('0010')]: [SE_TRIANGLE],
96
- [ternaryToIndex('0100')]: [NE_TRIANGLE],
97
- [ternaryToIndex('1000')]: [NW_TRIANGLE],
98
- [ternaryToIndex('2220')]: [SW_TRAPEZOID],
99
- [ternaryToIndex('2202')]: [SE_TRAPEZOID],
100
- [ternaryToIndex('2022')]: [NE_TRAPEZOID],
101
- [ternaryToIndex('0222')]: [NW_TRAPEZOID],
102
- [ternaryToIndex('0002')]: [SW_TRAPEZOID],
103
- [ternaryToIndex('0020')]: [SE_TRAPEZOID],
104
- [ternaryToIndex('0200')]: [NE_TRAPEZOID],
105
- [ternaryToIndex('2000')]: [NW_TRAPEZOID],
106
- [ternaryToIndex('0011')]: [S_RECTANGLE],
107
- [ternaryToIndex('0110')]: [E_RECTANGLE],
108
- [ternaryToIndex('1100')]: [N_RECTANGLE],
109
- [ternaryToIndex('1001')]: [W_RECTANGLE],
110
- [ternaryToIndex('2211')]: [S_RECTANGLE],
111
- [ternaryToIndex('2112')]: [E_RECTANGLE],
112
- [ternaryToIndex('1122')]: [N_RECTANGLE],
113
- [ternaryToIndex('1221')]: [W_RECTANGLE],
114
- [ternaryToIndex('2200')]: [EW_RECTANGEL],
115
- [ternaryToIndex('2002')]: [SN_RECTANGEL],
116
- [ternaryToIndex('0022')]: [EW_RECTANGEL],
117
- [ternaryToIndex('0220')]: [SN_RECTANGEL],
118
- [ternaryToIndex('1111')]: [SQUARE],
119
- [ternaryToIndex('1211')]: [SW_PENTAGON],
120
- [ternaryToIndex('2111')]: [SE_PENTAGON],
121
- [ternaryToIndex('1112')]: [NE_PENTAGON],
122
- [ternaryToIndex('1121')]: [NW_PENTAGON],
123
- [ternaryToIndex('1011')]: [SW_PENTAGON],
124
- [ternaryToIndex('0111')]: [SE_PENTAGON],
125
- [ternaryToIndex('1110')]: [NE_PENTAGON],
126
- [ternaryToIndex('1101')]: [NW_PENTAGON],
127
- [ternaryToIndex('1200')]: [NW_N_PENTAGON],
128
- [ternaryToIndex('0120')]: [NE_E_PENTAGON],
129
- [ternaryToIndex('0012')]: [SE_S_PENTAGON],
130
- [ternaryToIndex('2001')]: [SW_W_PENTAGON],
131
- [ternaryToIndex('1022')]: [NW_N_PENTAGON],
132
- [ternaryToIndex('2102')]: [NE_E_PENTAGON],
133
- [ternaryToIndex('2210')]: [SE_S_PENTAGON],
134
- [ternaryToIndex('0221')]: [SW_W_PENTAGON],
135
- [ternaryToIndex('1002')]: [NW_W_PENTAGON],
136
- [ternaryToIndex('2100')]: [NE_N_PENTAGON],
137
- [ternaryToIndex('0210')]: [SE_E_PENTAGON],
138
- [ternaryToIndex('0021')]: [SW_S_PENTAGON],
139
- [ternaryToIndex('1220')]: [NW_W_PENTAGON],
140
- [ternaryToIndex('0122')]: [NE_N_PENTAGON],
141
- [ternaryToIndex('2012')]: [SE_E_PENTAGON],
142
- [ternaryToIndex('2201')]: [SW_S_PENTAGON],
143
- [ternaryToIndex('0211')]: [S_HEXAGON],
144
- [ternaryToIndex('2110')]: [E_HEXAGON],
145
- [ternaryToIndex('1102')]: [N_HEXAGON],
146
- [ternaryToIndex('1021')]: [W_HEXAGON],
147
- [ternaryToIndex('2011')]: [S_HEXAGON],
148
- [ternaryToIndex('0112')]: [E_HEXAGON],
149
- [ternaryToIndex('1120')]: [N_HEXAGON],
150
- [ternaryToIndex('1201')]: [W_HEXAGON],
151
- [ternaryToIndex('2101')]: [SW_NE_HEXAGON],
152
- [ternaryToIndex('0121')]: [SW_NE_HEXAGON],
153
- [ternaryToIndex('1012')]: [NW_SE_HEXAGON],
154
- [ternaryToIndex('1210')]: [NW_SE_HEXAGON],
155
- [ternaryToIndex('0101')]: {
156
- 0: [SW_TRIANGLE, NE_TRIANGLE],
157
- 1: [SW_NE_HEXAGON],
158
- 2: [SW_NE_HEXAGON]
159
- },
160
- [ternaryToIndex('1010')]: {
161
- 0: [NW_TRIANGLE, SE_TRIANGLE],
162
- 1: [NW_SE_HEXAGON],
163
- 2: [NW_SE_HEXAGON]
164
- },
165
- [ternaryToIndex('2121')]: {
166
- 0: [SW_NE_HEXAGON],
167
- 1: [SW_NE_HEXAGON],
168
- 2: [SW_TRIANGLE, NE_TRIANGLE]
169
- },
170
- [ternaryToIndex('1212')]: {
171
- 0: [NW_SE_HEXAGON],
172
- 1: [NW_SE_HEXAGON],
173
- 2: [NW_TRIANGLE, SE_TRIANGLE]
174
- },
175
- [ternaryToIndex('2120')]: {
176
- 0: [NE_HEPTAGON],
177
- 1: [NE_HEPTAGON],
178
- 2: [SW_TRAPEZOID, NE_TRIANGLE]
179
- },
180
- [ternaryToIndex('2021')]: {
181
- 0: [SW_HEPTAGON],
182
- 1: [SW_HEPTAGON],
183
- 2: [SW_TRIANGLE, NE_TRAPEZOID]
184
- },
185
- [ternaryToIndex('1202')]: {
186
- 0: [NW_HEPTAGON],
187
- 1: [NW_HEPTAGON],
188
- 2: [NW_TRIANGLE, SE_TRAPEZOID]
189
- },
190
- [ternaryToIndex('0212')]: {
191
- 0: [SE_HEPTAGON],
192
- 1: [SE_HEPTAGON],
193
- 2: [SE_TRIANGLE, NW_TRAPEZOID]
194
- },
195
- [ternaryToIndex('0102')]: {
196
- 0: [SW_TRAPEZOID, NE_TRIANGLE],
197
- 1: [NE_HEPTAGON],
198
- 2: [NE_HEPTAGON]
199
- },
200
- [ternaryToIndex('0201')]: {
201
- 0: [SW_TRIANGLE, NE_TRAPEZOID],
202
- 1: [SW_HEPTAGON],
203
- 2: [SW_HEPTAGON]
204
- },
205
- [ternaryToIndex('1020')]: {
206
- 0: [NW_TRIANGLE, SE_TRAPEZOID],
207
- 1: [NW_HEPTAGON],
208
- 2: [NW_HEPTAGON]
209
- },
210
- [ternaryToIndex('2010')]: {
211
- 0: [SE_TRIANGLE, NW_TRAPEZOID],
212
- 1: [SE_HEPTAGON],
213
- 2: [SE_HEPTAGON]
214
- },
215
- [ternaryToIndex('2020')]: {
216
- 0: [NW_TRAPEZOID, SE_TRAPEZOID],
217
- 1: [OCTAGON],
218
- 2: [SW_TRAPEZOID, NE_TRAPEZOID]
219
- },
220
- [ternaryToIndex('0202')]: {
221
- 0: [NE_TRAPEZOID, SW_TRAPEZOID],
222
- 1: [OCTAGON],
223
- 2: [NW_TRAPEZOID, SE_TRAPEZOID]
224
- }
225
- };
94
+ var ISOBANDS_CODE_OFFSET_MAP = (_ISOBANDS_CODE_OFFSET = {}, (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0000'), []), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2222'), []), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2221'), [SW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2212'), [SE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2122'), [NE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1222'), [NW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0001'), [SW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0010'), [SE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0100'), [NE_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1000'), [NW_TRIANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2220'), [SW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2202'), [SE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2022'), [NE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0222'), [NW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0002'), [SW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0020'), [SE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0200'), [NE_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2000'), [NW_TRAPEZOID]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0011'), [S_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0110'), [E_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1100'), [N_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1001'), [W_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2211'), [S_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2112'), [E_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1122'), [N_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1221'), [W_RECTANGLE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2200'), [EW_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2002'), [SN_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0022'), [EW_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0220'), [SN_RECTANGEL]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1111'), [SQUARE]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1211'), [SW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2111'), [SE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1112'), [NE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1121'), [NW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1011'), [SW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0111'), [SE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1110'), [NE_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1101'), [NW_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1200'), [NW_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0120'), [NE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0012'), [SE_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2001'), [SW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1022'), [NW_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2102'), [NE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2210'), [SE_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0221'), [SW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1002'), [NW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2100'), [NE_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0210'), [SE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0021'), [SW_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1220'), [NW_W_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0122'), [NE_N_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2012'), [SE_E_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2201'), [SW_S_PENTAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0211'), [S_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2110'), [E_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1102'), [N_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1021'), [W_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2011'), [S_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0112'), [E_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1120'), [N_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1201'), [W_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2101'), [SW_NE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0121'), [SW_NE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1012'), [NW_SE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1210'), [NW_SE_HEXAGON]), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0101'), {
95
+ 0: [SW_TRIANGLE, NE_TRIANGLE],
96
+ 1: [SW_NE_HEXAGON],
97
+ 2: [SW_NE_HEXAGON]
98
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1010'), {
99
+ 0: [NW_TRIANGLE, SE_TRIANGLE],
100
+ 1: [NW_SE_HEXAGON],
101
+ 2: [NW_SE_HEXAGON]
102
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2121'), {
103
+ 0: [SW_NE_HEXAGON],
104
+ 1: [SW_NE_HEXAGON],
105
+ 2: [SW_TRIANGLE, NE_TRIANGLE]
106
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1212'), {
107
+ 0: [NW_SE_HEXAGON],
108
+ 1: [NW_SE_HEXAGON],
109
+ 2: [NW_TRIANGLE, SE_TRIANGLE]
110
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2120'), {
111
+ 0: [NE_HEPTAGON],
112
+ 1: [NE_HEPTAGON],
113
+ 2: [SW_TRAPEZOID, NE_TRIANGLE]
114
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2021'), {
115
+ 0: [SW_HEPTAGON],
116
+ 1: [SW_HEPTAGON],
117
+ 2: [SW_TRIANGLE, NE_TRAPEZOID]
118
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1202'), {
119
+ 0: [NW_HEPTAGON],
120
+ 1: [NW_HEPTAGON],
121
+ 2: [NW_TRIANGLE, SE_TRAPEZOID]
122
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0212'), {
123
+ 0: [SE_HEPTAGON],
124
+ 1: [SE_HEPTAGON],
125
+ 2: [SE_TRIANGLE, NW_TRAPEZOID]
126
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0102'), {
127
+ 0: [SW_TRAPEZOID, NE_TRIANGLE],
128
+ 1: [NE_HEPTAGON],
129
+ 2: [NE_HEPTAGON]
130
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0201'), {
131
+ 0: [SW_TRIANGLE, NE_TRAPEZOID],
132
+ 1: [SW_HEPTAGON],
133
+ 2: [SW_HEPTAGON]
134
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('1020'), {
135
+ 0: [NW_TRIANGLE, SE_TRAPEZOID],
136
+ 1: [NW_HEPTAGON],
137
+ 2: [NW_HEPTAGON]
138
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2010'), {
139
+ 0: [SE_TRIANGLE, NW_TRAPEZOID],
140
+ 1: [SE_HEPTAGON],
141
+ 2: [SE_HEPTAGON]
142
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('2020'), {
143
+ 0: [NW_TRAPEZOID, SE_TRAPEZOID],
144
+ 1: [OCTAGON],
145
+ 2: [SW_TRAPEZOID, NE_TRAPEZOID]
146
+ }), (0, _defineProperty2.default)(_ISOBANDS_CODE_OFFSET, ternaryToIndex('0202'), {
147
+ 0: [NE_TRAPEZOID, SW_TRAPEZOID],
148
+ 1: [OCTAGON],
149
+ 2: [NW_TRAPEZOID, SE_TRAPEZOID]
150
+ }), _ISOBANDS_CODE_OFFSET);
226
151
  exports.ISOBANDS_CODE_OFFSET_MAP = ISOBANDS_CODE_OFFSET_MAP;
227
152
  //# sourceMappingURL=marching-squares-codes.js.map