geojs 1.11.2 → 1.12.0
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.
- package/.pre-commit-config.yaml +1 -1
- package/geo.js +47505 -32294
- package/geo.lean.js +130 -181
- package/geo.lean.min.js +4 -4
- package/geo.min.js +4 -4
- package/package.json +8 -8
- package/src/choroplethFeature.js +2 -2
- package/src/svg/lineFeature.js +3 -3
- package/src/svg/pathFeature.js +6 -6
- package/src/svg/svgRenderer.js +3 -1
- package/src/svg/vectorFeature.js +6 -6
- package/src/ui/colorLegendWidget.js +48 -57
- package/src/ui/legendWidget.js +11 -12
- package/src/ui/scaleWidget.js +24 -35
- package/src/ui/sliderWidget.js +21 -29
- package/src/ui/svgWidget.js +1 -1
- package/src/vendor.js +0 -8
package/geo.lean.js
CHANGED
|
@@ -3014,7 +3014,6 @@ var rectangleAnnotation = function rectangleAnnotation(args, annotationName) {
|
|
|
3014
3014
|
/* Should we ensure that the four points form a rectangle in the current
|
|
3015
3015
|
* projection, though this might not be rectangular in another gcs? */
|
|
3016
3016
|
}
|
|
3017
|
-
|
|
3018
3017
|
return m_this.options('corners');
|
|
3019
3018
|
};
|
|
3020
3019
|
this._coordinateOption = 'corners';
|
|
@@ -3981,7 +3980,6 @@ var annotationLayer = function annotationLayer(arg) {
|
|
|
3981
3980
|
if (id !== undefined && id !== null) {
|
|
3982
3981
|
id = +id; /* Cast to int */
|
|
3983
3982
|
}
|
|
3984
|
-
|
|
3985
3983
|
var annotations = m_annotations.filter(function (annotation) {
|
|
3986
3984
|
return annotation.id() === id;
|
|
3987
3985
|
});
|
|
@@ -7592,7 +7590,7 @@ var feature = __webpack_require__(6837);
|
|
|
7592
7590
|
* @property {geo.colorObject[]} [colorRange] Color lookup table. Default is
|
|
7593
7591
|
* 9-step color table.
|
|
7594
7592
|
* @property {function} [scale] A scale converts a input domain into the
|
|
7595
|
-
* the colorRange. Default is `d3.
|
|
7593
|
+
* the colorRange. Default is `d3.scaleQuantize()`.
|
|
7596
7594
|
* @property {function} [geoId] Given a geometry feature, return an identifier.
|
|
7597
7595
|
* @property {function} [scalarId] Given a scalar element, return an
|
|
7598
7596
|
* identifier.
|
|
@@ -7665,7 +7663,7 @@ var choroplethFeature = function choroplethFeature(arg) {
|
|
|
7665
7663
|
g: 0.236630659,
|
|
7666
7664
|
b: 0.209939162
|
|
7667
7665
|
}],
|
|
7668
|
-
scale: d3.
|
|
7666
|
+
scale: d3.scaleQuantize(),
|
|
7669
7667
|
//accessor for ID on geodata feature
|
|
7670
7668
|
geoId: function geoId(geoFeature) {
|
|
7671
7669
|
return geoFeature.properties.GEO_ID;
|
|
@@ -7743,7 +7741,6 @@ var choroplethFeature = function choroplethFeature(arg) {
|
|
|
7743
7741
|
} else {
|
|
7744
7742
|
m_choropleth[arg1] = arg2; //if you pass in accessor for prop
|
|
7745
7743
|
}
|
|
7746
|
-
|
|
7747
7744
|
m_this.modified();
|
|
7748
7745
|
return m_this;
|
|
7749
7746
|
};
|
|
@@ -10850,8 +10847,8 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
|
|
|
10850
10847
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
10851
10848
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
10852
10849
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10853
|
-
function _toPropertyKey(
|
|
10854
|
-
function _toPrimitive(
|
|
10850
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
10851
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
10855
10852
|
var inherit = __webpack_require__(5699);
|
|
10856
10853
|
var registerFileReader = (__webpack_require__(4647).registerFileReader);
|
|
10857
10854
|
var fileReader = __webpack_require__(407);
|
|
@@ -11286,16 +11283,15 @@ var geojsonReader = function geojsonReader(arg) {
|
|
|
11286
11283
|
// create an object with each property in m_options.polygonStyle,
|
|
11287
11284
|
// mapping the values through the _style function.
|
|
11288
11285
|
.style([{}].concat(Object.keys(m_options.polygonStyle)).reduce(function (styleObj, key) {
|
|
11289
|
-
|
|
11290
|
-
return _objectSpread((_objectSpread5 = {}, _defineProperty(_objectSpread5, key, ellipses.some(function (d) {
|
|
11286
|
+
return _objectSpread(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, key, ellipses.some(function (d) {
|
|
11291
11287
|
return d.properties && d.properties[key] !== undefined;
|
|
11292
|
-
}) ? m_this._style(key, m_options.polygonStyle[key]) : m_options.polygonStyle[key]),
|
|
11288
|
+
}) ? m_this._style(key, m_options.polygonStyle[key]) : m_options.polygonStyle[key]), "radius", function radius(d) {
|
|
11293
11289
|
return d._props.radius;
|
|
11294
|
-
}),
|
|
11290
|
+
}), "radiusIncludesStroke", false), "symbolValue", function symbolValue(d) {
|
|
11295
11291
|
return d._props.aspect;
|
|
11296
|
-
}),
|
|
11292
|
+
}), "rotation", function rotation(d) {
|
|
11297
11293
|
return d._props.rotation;
|
|
11298
|
-
}),
|
|
11294
|
+
}), "strokeOffset", 0), "rotateWithMap", true), "scaleWithZoom", markerFeature.scaleMode.fill), styleObj);
|
|
11299
11295
|
}));
|
|
11300
11296
|
allFeatures.push(feature);
|
|
11301
11297
|
}
|
|
@@ -14965,7 +14961,6 @@ var map = function map(arg) {
|
|
|
14965
14961
|
if (queue.length && queue[0] !== m_animationQueue[0]) {
|
|
14966
14962
|
window['cancelAnimationFrame'](m_animationQueue[0]); // eslint-disable-line dot-notation
|
|
14967
14963
|
}
|
|
14968
|
-
|
|
14969
14964
|
for (var i = queue.length ? 1 : 0; i < m_animationQueue.length; i += 1) {
|
|
14970
14965
|
queue.push(m_animationQueue[i]);
|
|
14971
14966
|
}
|
|
@@ -16664,7 +16659,6 @@ var map = function map(arg) {
|
|
|
16664
16659
|
* override this if needed. */
|
|
16665
16660
|
m_animationQueue.push(window['requestAnimationFrame'](processAnimationFrame)); // eslint-disable-line dot-notation
|
|
16666
16661
|
}
|
|
16667
|
-
|
|
16668
16662
|
var pos = m_animationQueue.indexOf(callback, 1);
|
|
16669
16663
|
if (pos >= 0) {
|
|
16670
16664
|
if (!action) {
|
|
@@ -20072,7 +20066,6 @@ markerFeature.symbols = {
|
|
|
20072
20066
|
// possible other symbols:
|
|
20073
20067
|
// half inner stellations (bowtie/hourglass), hash (#), inner curved shapes
|
|
20074
20068
|
};
|
|
20075
|
-
|
|
20076
20069
|
['flower', 'star', 'cross', 'jack', 'drop', 'arrow'].forEach(function (key) {
|
|
20077
20070
|
for (var i = 2; i <= markerFeature.symbols[key + 'Max']; i += 1) {
|
|
20078
20071
|
markerFeature.symbols[key + i] = markerFeature.symbols[key + 'Base'] - 2 + i;
|
|
@@ -25078,7 +25071,7 @@ module.exports = sceneObject;
|
|
|
25078
25071
|
* @constant
|
|
25079
25072
|
* @type {string}
|
|
25080
25073
|
*/
|
|
25081
|
-
module.exports = "
|
|
25074
|
+
module.exports = "ee3d8be376e56abdc7e2d506b9a724b74fd945fd";
|
|
25082
25075
|
|
|
25083
25076
|
/***/ }),
|
|
25084
25077
|
|
|
@@ -25245,11 +25238,11 @@ var svg_lineFeature = function svg_lineFeature(arg) {
|
|
|
25245
25238
|
style[key] = wrapStyle(s_style[key]);
|
|
25246
25239
|
}
|
|
25247
25240
|
}
|
|
25248
|
-
line = d3.
|
|
25241
|
+
line = d3.line().x(function (d) {
|
|
25249
25242
|
return m_this.featureGcsToDisplay(d).x;
|
|
25250
25243
|
}).y(function (d) {
|
|
25251
25244
|
return m_this.featureGcsToDisplay(d).y;
|
|
25252
|
-
}).
|
|
25245
|
+
}).curve(m_this.style.get('closed')(item, idx) && ln.length > 2 ? d3.curveLinearClosed : d3.curveLinear);
|
|
25253
25246
|
// item is an object representing a single line
|
|
25254
25247
|
// m_this.line()(item) is an array of coordinates
|
|
25255
25248
|
m_style = {
|
|
@@ -25393,7 +25386,6 @@ var svg_pathFeature = function svg_pathFeature(arg) {
|
|
|
25393
25386
|
return new svg_pathFeature(arg);
|
|
25394
25387
|
}
|
|
25395
25388
|
var $ = __webpack_require__(5638);
|
|
25396
|
-
var d3 = (__webpack_require__(2531).d3);
|
|
25397
25389
|
var object = __webpack_require__(2738);
|
|
25398
25390
|
var timestamp = __webpack_require__(6618);
|
|
25399
25391
|
arg = arg || {};
|
|
@@ -25418,11 +25410,9 @@ var svg_pathFeature = function svg_pathFeature(arg) {
|
|
|
25418
25410
|
diag;
|
|
25419
25411
|
s_update.call(m_this);
|
|
25420
25412
|
diag = function diag(d) {
|
|
25421
|
-
|
|
25422
|
-
|
|
25423
|
-
|
|
25424
|
-
};
|
|
25425
|
-
return d3.svg.diagonal()(p);
|
|
25413
|
+
// in d3 v3 this was "d3.svg.diagonal(d);". See
|
|
25414
|
+
// https://stackoverflow.com/questions/40845121/where-is-d3-svg-diagonal
|
|
25415
|
+
return 'M' + d.source.x + ',' + d.source.y + 'C' + d.source.x + ',' + (d.source.y + d.target.y) / 2 + ' ' + d.target.x + ',' + (d.source.y + d.target.y) / 2 + ' ' + d.target.x + ',' + d.target.y;
|
|
25426
25416
|
};
|
|
25427
25417
|
tmp = [];
|
|
25428
25418
|
data.forEach(function (d, i) {
|
|
@@ -26412,7 +26402,9 @@ var svgRenderer = function svgRenderer(arg) {
|
|
|
26412
26402
|
rendersel;
|
|
26413
26403
|
entries = selection.enter().append(append);
|
|
26414
26404
|
selection.exit().remove();
|
|
26415
|
-
|
|
26405
|
+
// in d3 v3 this was
|
|
26406
|
+
// rendersel = m_features[id].onlyRenderNew ? entries : selection;
|
|
26407
|
+
rendersel = entries;
|
|
26416
26408
|
setAttrs(rendersel, attributes);
|
|
26417
26409
|
rendersel.attr('class', classes.concat([id]).join(' '));
|
|
26418
26410
|
setStyles(rendersel, style);
|
|
@@ -26834,10 +26826,10 @@ var svg_vectorFeature = function svg_vectorFeature(arg) {
|
|
|
26834
26826
|
}
|
|
26835
26827
|
return markers;
|
|
26836
26828
|
}, []);
|
|
26829
|
+
markerGroup = m_this.renderer()._definitions().selectAll('g.marker-group#' + m_this._svgid());
|
|
26837
26830
|
var sel = markerGroup.selectAll('marker.geo-vector-marker').data(markers);
|
|
26838
|
-
sel.enter().append('marker').append('path');
|
|
26839
26831
|
var renderer = m_this.renderer();
|
|
26840
|
-
sel.each(function (d) {
|
|
26832
|
+
sel.enter().append('marker').each(function (d) {
|
|
26841
26833
|
var marker = d3.select(this);
|
|
26842
26834
|
var markerData = d.head ? markerConfigs[endStyle(d.data, d.dataIndex)] : markerConfigs[originStyle(d.data, d.dataIndex)];
|
|
26843
26835
|
Object.keys(markerData.attrs).forEach(function (attrName) {
|
|
@@ -26851,7 +26843,7 @@ var svg_vectorFeature = function svg_vectorFeature(arg) {
|
|
|
26851
26843
|
return renderer._convertColor(stroke)(d.data, d.dataIndex);
|
|
26852
26844
|
}).style('opacity', function (d) {
|
|
26853
26845
|
return opacity(d.data, d.dataIndex);
|
|
26854
|
-
}).
|
|
26846
|
+
}).append('path').attr('d', function (d) {
|
|
26855
26847
|
return d.head ? markerConfigs[endStyle(d.data, d.dataIndex)].path : markerConfigs[originStyle(d.data, d.dataIndex)].path;
|
|
26856
26848
|
});
|
|
26857
26849
|
sel.exit().remove();
|
|
@@ -31643,12 +31635,7 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31643
31635
|
m_categories.forEach(function (category, index) {
|
|
31644
31636
|
var legendContainer = container.append('div').attr('class', 'geojs-color-legend');
|
|
31645
31637
|
legendContainer.append('div').attr('class', 'geojs-title').text(category.name);
|
|
31646
|
-
var legendSvg = legendContainer.append('svg').attr(
|
|
31647
|
-
class: 'svg',
|
|
31648
|
-
width: width,
|
|
31649
|
-
height: '40px',
|
|
31650
|
-
viewBox: -margin + ' 0 ' + width + ' 40'
|
|
31651
|
-
});
|
|
31638
|
+
var legendSvg = legendContainer.append('svg').attr('class', 'svg').attr('width', width).attr('height', '40px').attr('viewBox', -margin + ' 0 ' + width + ' 40');
|
|
31652
31639
|
if (category.type === 'discrete') {
|
|
31653
31640
|
m_this._drawDiscrete(legendSvg, width - 2 * margin, category);
|
|
31654
31641
|
} else if (category.type === 'continuous') {
|
|
@@ -31723,27 +31710,38 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31723
31710
|
* @param {geo.gui.colorLegendWidget.category} category The discrete type legend category
|
|
31724
31711
|
*/
|
|
31725
31712
|
this._drawDiscrete = function (svg, width, category) {
|
|
31713
|
+
/**
|
|
31714
|
+
* Render the d3 axis object based on the axis d3 Scale.
|
|
31715
|
+
* @param {object} axisScale d3 scale object
|
|
31716
|
+
* @returns {object} d3 axis object
|
|
31717
|
+
*/
|
|
31718
|
+
function createAxis(axisScale) {
|
|
31719
|
+
var skip = Math.ceil(axisScale.domain().length / m_ticks);
|
|
31720
|
+
var values = axisScale.domain().filter(function (d, i) {
|
|
31721
|
+
return i % skip === 0;
|
|
31722
|
+
});
|
|
31723
|
+
return d3.axisBottom(axisScale).tickFormat(d3.format('.2s')).tickValues(values);
|
|
31724
|
+
}
|
|
31726
31725
|
if (['linear', 'log', 'sqrt', 'pow', 'quantile', 'ordinal'].indexOf(category.scale) === -1) {
|
|
31727
31726
|
throw new Error('unsupported scale');
|
|
31728
31727
|
}
|
|
31729
31728
|
var valueRange, valueScale, colorScale, axisScale, axis, steps, ticks;
|
|
31730
31729
|
if (category.scale === 'ordinal') {
|
|
31731
|
-
colorScale = d3.
|
|
31730
|
+
colorScale = d3.scaleOrdinal().domain(category.domain).range(category.colors);
|
|
31732
31731
|
m_this._renderDiscreteColors(svg, category.domain, colorScale, width, function (d) {
|
|
31733
31732
|
return d;
|
|
31734
31733
|
});
|
|
31735
|
-
axisScale = d3.
|
|
31736
|
-
|
|
31737
|
-
|
|
31738
|
-
return
|
|
31739
|
-
return i % skip === 0;
|
|
31740
|
-
});
|
|
31734
|
+
axisScale = d3.scaleBand().domain(category.domain).rangeRound([0, width]);
|
|
31735
|
+
var skip = Math.ceil(category.domain.length / m_ticks);
|
|
31736
|
+
var values = category.domain.filter(function (d, i) {
|
|
31737
|
+
return i % skip === 0;
|
|
31741
31738
|
});
|
|
31739
|
+
axis = d3.axisBottom(axisScale).tickValues(values);
|
|
31742
31740
|
} else if (category.scale === 'quantile') {
|
|
31743
31741
|
valueRange = [0, category.colors.length];
|
|
31744
31742
|
steps = util.range(0, category.colors.length - 1);
|
|
31745
|
-
valueScale = d3.
|
|
31746
|
-
colorScale = d3.
|
|
31743
|
+
valueScale = d3.scaleQuantile().domain(category.domain).range(steps);
|
|
31744
|
+
colorScale = d3.scaleQuantize().domain(valueRange).range(category.colors);
|
|
31747
31745
|
m_this._renderDiscreteColors(svg, steps, colorScale, width, function (d) {
|
|
31748
31746
|
return valueScale.invertExtent(d).join(' - ');
|
|
31749
31747
|
});
|
|
@@ -31751,12 +31749,12 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31751
31749
|
axisDomain = axisDomain.concat(steps.map(function (step) {
|
|
31752
31750
|
return valueScale.invertExtent(step)[1];
|
|
31753
31751
|
}));
|
|
31754
|
-
axisScale = d3.
|
|
31752
|
+
axisScale = d3.scalePoint().domain(axisDomain).range([0, width]);
|
|
31755
31753
|
axis = createAxis(axisScale);
|
|
31756
31754
|
} else if (['linear', 'log', 'sqrt', 'pow'].indexOf(category.scale) !== -1) {
|
|
31757
31755
|
valueRange = [0, category.colors.length];
|
|
31758
|
-
valueScale = d3.scale
|
|
31759
|
-
colorScale = d3.
|
|
31756
|
+
valueScale = d3['scale' + category.scale.charAt(0).toUpperCase() + category.scale.slice(1)]().domain(category.domain).range(valueRange).nice();
|
|
31757
|
+
colorScale = d3.scaleQuantize().domain(valueRange).range(category.colors);
|
|
31760
31758
|
steps = util.range(0, category.colors.length - 1);
|
|
31761
31759
|
var precision = Math.max.apply(null, category.domain.map(function (number) {
|
|
31762
31760
|
return getPrecision(number);
|
|
@@ -31766,29 +31764,15 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31766
31764
|
});
|
|
31767
31765
|
ticks = steps.slice();
|
|
31768
31766
|
ticks.push(category.colors.length);
|
|
31769
|
-
axisScale = d3.
|
|
31767
|
+
axisScale = d3.scalePoint().domain(ticks.map(function (tick) {
|
|
31770
31768
|
return valueScale.invert(tick);
|
|
31771
|
-
})).
|
|
31769
|
+
})).range([0, width]);
|
|
31772
31770
|
axis = createAxis(axisScale);
|
|
31773
31771
|
}
|
|
31774
31772
|
if (category.endAxisLabelOnly) {
|
|
31775
31773
|
axis.tickValues([axisScale.domain()[0], axisScale.domain()[axisScale.domain().length - 1]]);
|
|
31776
31774
|
}
|
|
31777
31775
|
m_this._renderAxis(svg, axis);
|
|
31778
|
-
|
|
31779
|
-
/**
|
|
31780
|
-
* Render the d3 axis object based on the axis d3 Scale.
|
|
31781
|
-
* @param {object} axisScale d3 scale object
|
|
31782
|
-
* @returns {object} d3 axis object
|
|
31783
|
-
*/
|
|
31784
|
-
function createAxis(axisScale) {
|
|
31785
|
-
return d3.svg.axis().scale(axisScale).tickFormat(d3.format('.2s')).tickValues(function () {
|
|
31786
|
-
var skip = Math.ceil(axisScale.domain().length / m_ticks);
|
|
31787
|
-
return axisScale.domain().filter(function (d, i) {
|
|
31788
|
-
return i % skip === 0;
|
|
31789
|
-
});
|
|
31790
|
-
});
|
|
31791
|
-
}
|
|
31792
31776
|
};
|
|
31793
31777
|
|
|
31794
31778
|
/**
|
|
@@ -31804,8 +31788,8 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31804
31788
|
return colorScale(d);
|
|
31805
31789
|
}).attr('transform', function (d, i) {
|
|
31806
31790
|
return 'translate(' + i * width / steps.length + ' ,0)';
|
|
31807
|
-
}).on('mousemove', function (d) {
|
|
31808
|
-
m_this._showPopup(getValue(d));
|
|
31791
|
+
}).on('mousemove', function (evt, d) {
|
|
31792
|
+
m_this._showPopup(evt, getValue(d));
|
|
31809
31793
|
}).on('mouseout', m_this._hidePopup);
|
|
31810
31794
|
};
|
|
31811
31795
|
|
|
@@ -31825,7 +31809,7 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31825
31809
|
range.push(width / (category.domain.length - 1) * i);
|
|
31826
31810
|
}
|
|
31827
31811
|
range.push(width);
|
|
31828
|
-
axisScale = d3.scale
|
|
31812
|
+
axisScale = d3['scale' + category.scale.charAt(0).toUpperCase() + category.scale.slice(1)]().domain(category.domain).range(range).nice();
|
|
31829
31813
|
if (category.scale === 'log' && category.base) {
|
|
31830
31814
|
axisScale.base(category.base);
|
|
31831
31815
|
}
|
|
@@ -31842,12 +31826,12 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31842
31826
|
gradient.append('stop').attr('offset', (100 / (category.colors.length - 1) * i).toFixed(6) + '%').attr('stop-color', category.colors[i]);
|
|
31843
31827
|
}
|
|
31844
31828
|
gradient.append('stop').attr('offset', '100%').attr('stop-color', category.colors[category.colors.length - 1]);
|
|
31845
|
-
svg.append('rect').attr('fill', 'url(#gradient' + id + ')').attr('width', width).attr('height', '20px').on('mousemove', function () {
|
|
31846
|
-
var value = axisScale.invert(d3.
|
|
31829
|
+
svg.append('rect').attr('fill', 'url(#gradient' + id + ')').attr('width', width).attr('height', '20px').on('mousemove', function (event) {
|
|
31830
|
+
var value = axisScale.invert(d3.pointer(event)[0]);
|
|
31847
31831
|
var text = m_this._popupFormatter(value, precision);
|
|
31848
|
-
m_this._showPopup(text);
|
|
31832
|
+
m_this._showPopup(event, text);
|
|
31849
31833
|
}).on('mouseout', m_this._hidePopup);
|
|
31850
|
-
axis = d3.
|
|
31834
|
+
axis = d3.axisBottom(axisScale).ticks(m_ticks, '.2s');
|
|
31851
31835
|
if (category.endAxisLabelOnly) {
|
|
31852
31836
|
axis.tickValues([category.domain[0], category.domain[category.domain.length - 1]]);
|
|
31853
31837
|
}
|
|
@@ -31860,9 +31844,12 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31860
31844
|
* @param {object} axis d3 axis object
|
|
31861
31845
|
*/
|
|
31862
31846
|
this._renderAxis = function (svg, axis) {
|
|
31863
|
-
svg.append('g').attr('class', 'axis x').attr('transform', 'translate(0, 20)')
|
|
31847
|
+
svg.append('g').attr('class', 'axis x').attr('transform', 'translate(0, 20)')
|
|
31848
|
+
/*
|
|
31849
|
+
.call(function (g) {
|
|
31864
31850
|
g.call(axis);
|
|
31865
31851
|
});
|
|
31852
|
+
*/.call(axis);
|
|
31866
31853
|
};
|
|
31867
31854
|
|
|
31868
31855
|
/**
|
|
@@ -31881,19 +31868,18 @@ var colorLegendWidget = function colorLegendWidget(arg) {
|
|
|
31881
31868
|
|
|
31882
31869
|
/**
|
|
31883
31870
|
* Show the popup based on current mouse event.
|
|
31871
|
+
* @param {d3.event} event The triggering d3 event.
|
|
31884
31872
|
* @param {string} text content to be shown in the popup
|
|
31885
31873
|
*/
|
|
31886
|
-
this._showPopup = function (text) {
|
|
31874
|
+
this._showPopup = function (event, text) {
|
|
31887
31875
|
// The cursor location relative to the container
|
|
31888
|
-
var offset = d3.
|
|
31876
|
+
var offset = d3.pointer(event, m_this.canvas());
|
|
31889
31877
|
m_this.popup.text(text);
|
|
31890
31878
|
var containerWidth = m_this.canvas().clientWidth;
|
|
31891
|
-
var popupWidth = m_this.popup
|
|
31892
|
-
m_this.popup
|
|
31893
|
-
|
|
31894
|
-
|
|
31895
|
-
top: offset[1] - 22 + 'px'
|
|
31896
|
-
}).transition().duration(200).style('opacity', 1);
|
|
31879
|
+
var popupWidth = m_this.popup.node().clientWidth;
|
|
31880
|
+
m_this.popup
|
|
31881
|
+
// If the popup will be longer or almost longer than the container
|
|
31882
|
+
.style('left', offset[0] - (offset[0] + popupWidth - containerWidth > -10 ? popupWidth : 0) + 'px').style('top', offset[1] - 22 + 'px').transition().duration(200).style('opacity', 1);
|
|
31897
31883
|
};
|
|
31898
31884
|
|
|
31899
31885
|
/**
|
|
@@ -32184,8 +32170,8 @@ var legendWidget = function legendWidget(arg) {
|
|
|
32184
32170
|
*/
|
|
32185
32171
|
this._scale = function () {
|
|
32186
32172
|
return {
|
|
32187
|
-
x: d3.
|
|
32188
|
-
y: d3.
|
|
32173
|
+
x: d3.scaleLinear().domain([0, 1]).range([0, m_this.size().width]),
|
|
32174
|
+
y: d3.scaleLinear().domain([0, m_categories.length - 1]).range([m_padding / 2, m_this.size().height - m_padding / 2])
|
|
32189
32175
|
};
|
|
32190
32176
|
};
|
|
32191
32177
|
|
|
@@ -32213,15 +32199,10 @@ var legendWidget = function legendWidget(arg) {
|
|
|
32213
32199
|
d3.select(m_this.canvas()).attr('width', w).attr('height', h);
|
|
32214
32200
|
m_top = d3.select(m_this.canvas()).append('g');
|
|
32215
32201
|
m_group = m_top.append('g').attr('transform', 'translate(' + [m_padding + 2, m_padding + 2] + ')');
|
|
32216
|
-
m_border = m_group.append('rect').attr('x', -m_padding).attr('y', -m_padding).attr('width', w - 4).attr('height', h - 4).attr('rx', 3).attr('ry', 3)
|
|
32217
|
-
|
|
32218
|
-
|
|
32219
|
-
|
|
32220
|
-
'fill-opacity': 0.75,
|
|
32221
|
-
display: 'none'
|
|
32222
|
-
});
|
|
32223
|
-
m_group.on('mousedown', function () {
|
|
32224
|
-
d3.event.stopPropagation();
|
|
32202
|
+
m_border = m_group.append('rect').attr('x', -m_padding).attr('y', -m_padding).attr('width', w - 4).attr('height', h - 4).attr('rx', 3).attr('ry', 3);
|
|
32203
|
+
m_border.style('stroke', 'black').style('stroke-width', '1.5px').style('fill', 'white').style('fill-opacity', 0.75).style('display', 'none');
|
|
32204
|
+
m_group.on('mousedown', function (evt) {
|
|
32205
|
+
evt.stopPropagation();
|
|
32225
32206
|
});
|
|
32226
32207
|
m_group.on('mouseover', function () {
|
|
32227
32208
|
m_border.transition().duration(250).style('fill-opacity', 1);
|
|
@@ -32366,10 +32347,7 @@ var scaleWidget = function scaleWidget(arg) {
|
|
|
32366
32347
|
m_this._createCanvas();
|
|
32367
32348
|
m_this._appendCanvasToParent();
|
|
32368
32349
|
m_this.reposition();
|
|
32369
|
-
d3.select(m_this.canvas()).attr(
|
|
32370
|
-
width: m_options.maxWidth,
|
|
32371
|
-
height: m_options.maxHeight
|
|
32372
|
-
});
|
|
32350
|
+
d3.select(m_this.canvas()).attr('width', m_options.maxWidth).attr('height', m_options.maxHeight);
|
|
32373
32351
|
// Update the scale on pan
|
|
32374
32352
|
m_this.geoOn(geo_event.pan, m_this._update);
|
|
32375
32353
|
m_this._render();
|
|
@@ -32479,8 +32457,7 @@ var scaleWidget = function scaleWidget(arg) {
|
|
|
32479
32457
|
pixels = (vert ? m_options.maxHeight : m_options.maxWidth) - sw;
|
|
32480
32458
|
/* Calculate the distance that the maximum length scale bar can occupy at
|
|
32481
32459
|
* the location that the scale bar will be drawn. */
|
|
32482
|
-
|
|
32483
|
-
pt1 = $(svg[0][0]).offset();
|
|
32460
|
+
pt1 = $(svg.node()).offset();
|
|
32484
32461
|
pt1 = {
|
|
32485
32462
|
x: pt1.left + (m_options.orientation === 'left' ? width - sw2 : sw2),
|
|
32486
32463
|
y: pt1.top + (m_options.orientation === 'top' ? height - sw2 : sw2)
|
|
@@ -32500,15 +32477,9 @@ var scaleWidget = function scaleWidget(arg) {
|
|
|
32500
32477
|
} else {
|
|
32501
32478
|
width = value.pixels + sw;
|
|
32502
32479
|
}
|
|
32503
|
-
svg.attr(
|
|
32504
|
-
width: width,
|
|
32505
|
-
height: height
|
|
32506
|
-
});
|
|
32480
|
+
svg.attr('width', width).attr('height', height);
|
|
32507
32481
|
if (svg.select('polyline').empty()) {
|
|
32508
|
-
svg.append('polyline').classed('geojs-scale-widget-bar', true).attr(
|
|
32509
|
-
fill: 'none',
|
|
32510
|
-
'stroke-width': sw
|
|
32511
|
-
});
|
|
32482
|
+
svg.append('polyline').classed('geojs-scale-widget-bar', true).attr('fill', 'none').attr('stroke-width', sw);
|
|
32512
32483
|
}
|
|
32513
32484
|
if (svg.select('text').empty()) {
|
|
32514
32485
|
svg.append('text').classed('geojs-scale-widget-text', true);
|
|
@@ -32516,39 +32487,19 @@ var scaleWidget = function scaleWidget(arg) {
|
|
|
32516
32487
|
switch (m_options.orientation) {
|
|
32517
32488
|
case 'bottom':
|
|
32518
32489
|
pts = [[sw2, tl], [sw2, sw2], [width - sw2, sw2], [width - sw2, tl]];
|
|
32519
|
-
svg.select('text').attr(
|
|
32520
|
-
x: width / 2,
|
|
32521
|
-
y: sw * 2,
|
|
32522
|
-
'text-anchor': 'middle',
|
|
32523
|
-
'dominant-baseline': 'hanging'
|
|
32524
|
-
});
|
|
32490
|
+
svg.select('text').attr('x', width / 2).attr('y', sw * 2).attr('text-anchor', 'middle').attr('dominant-baseline', 'hanging');
|
|
32525
32491
|
break;
|
|
32526
32492
|
case 'top':
|
|
32527
32493
|
pts = [[sw2, height - tl], [sw2, height - sw2], [width - sw2, height - sw2], [width - sw2, height - tl]];
|
|
32528
|
-
svg.select('text').attr(
|
|
32529
|
-
x: width / 2,
|
|
32530
|
-
y: height - sw * 2,
|
|
32531
|
-
'text-anchor': 'middle',
|
|
32532
|
-
'dominant-baseline': 'alphabetic'
|
|
32533
|
-
});
|
|
32494
|
+
svg.select('text').attr('x', width / 2).attr('y', height - sw * 2).attr('text-anchor', 'middle').attr('dominant-baseline', 'alphabetic');
|
|
32534
32495
|
break;
|
|
32535
32496
|
case 'left':
|
|
32536
32497
|
pts = [[width - tl, sw2], [width - sw2, sw2], [width - sw2, height - sw2], [width - tl, height - sw2]];
|
|
32537
|
-
svg.select('text').attr(
|
|
32538
|
-
x: width - sw * 2,
|
|
32539
|
-
y: height / 2,
|
|
32540
|
-
'text-anchor': 'end',
|
|
32541
|
-
'dominant-baseline': 'middle'
|
|
32542
|
-
});
|
|
32498
|
+
svg.select('text').attr('x', width - sw * 2).attr('y', height / 2).attr('text-anchor', 'end').attr('dominant-baseline', 'middle');
|
|
32543
32499
|
break;
|
|
32544
32500
|
case 'right':
|
|
32545
32501
|
pts = [[tl, sw2], [sw2, sw2], [sw2, height - sw2], [tl, height - sw2]];
|
|
32546
|
-
svg.select('text').attr(
|
|
32547
|
-
x: sw * 2,
|
|
32548
|
-
y: height / 2,
|
|
32549
|
-
'text-anchor': 'start',
|
|
32550
|
-
'dominant-baseline': 'middle'
|
|
32551
|
-
});
|
|
32502
|
+
svg.select('text').attr('x', sw * 2).attr('y', height / 2).attr('text-anchor', 'start').attr('dominant-baseline', 'middle');
|
|
32552
32503
|
break;
|
|
32553
32504
|
}
|
|
32554
32505
|
svg.select('polyline').attr('points', pts.map(function (pt) {
|
|
@@ -32896,8 +32847,8 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
32896
32847
|
|
|
32897
32848
|
// create d3 scales for positioning
|
|
32898
32849
|
// TODO: make customizable and responsive
|
|
32899
|
-
m_xscale = d3.
|
|
32900
|
-
m_yscale = d3.
|
|
32850
|
+
m_xscale = d3.scaleLinear().domain([-4, 4]).range([0, m_width]);
|
|
32851
|
+
m_yscale = d3.scaleLinear().domain([0, 1]).range([m_width * 1.5, m_height - m_width * 1.5]);
|
|
32901
32852
|
|
|
32902
32853
|
// Create the main group element
|
|
32903
32854
|
svg = svg.append('g').classed('geo-ui-slider', true);
|
|
@@ -32908,17 +32859,15 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
32908
32859
|
m_plus.append('circle').datum({
|
|
32909
32860
|
fill: 'white',
|
|
32910
32861
|
stroke: null
|
|
32911
|
-
}).classed('geo-zoom-in', true).attr('cx', m_xscale(0)).attr('cy', m_yscale(0.0) - m_width + 2).attr('r', (m_width - 2) / 2).style({
|
|
32912
|
-
cursor: 'pointer'
|
|
32913
|
-
}).on('click', function () {
|
|
32862
|
+
}).classed('geo-zoom-in', true).attr('cx', m_xscale(0)).attr('cy', m_yscale(0.0) - m_width + 2).attr('r', (m_width - 2) / 2).style('cursor', 'pointer').on('click', function () {
|
|
32914
32863
|
var z = map.zoom();
|
|
32915
32864
|
map.transition({
|
|
32916
32865
|
zoom: z + 1,
|
|
32917
|
-
ease: d3.
|
|
32866
|
+
ease: d3.easeCubicInOut,
|
|
32918
32867
|
duration: 500
|
|
32919
32868
|
});
|
|
32920
|
-
}).on('mousedown', function () {
|
|
32921
|
-
|
|
32869
|
+
}).on('mousedown', function (evt) {
|
|
32870
|
+
evt.stopPropagation();
|
|
32922
32871
|
});
|
|
32923
32872
|
put_icon(m_plusIcon, m_plus, m_xscale(0), m_yscale(0) - m_width + 2, m_width + 4).style('cursor', 'pointer').style('pointer-events', 'none').select('path').datum({
|
|
32924
32873
|
fill: 'black',
|
|
@@ -32930,17 +32879,15 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
32930
32879
|
m_minus.append('circle').datum({
|
|
32931
32880
|
fill: 'white',
|
|
32932
32881
|
stroke: null
|
|
32933
|
-
}).classed('geo-zoom-out', true).attr('cx', m_xscale(0)).attr('cy', m_yscale(1.0) + m_width - 2).attr('r', (m_width - 2) / 2).style({
|
|
32934
|
-
cursor: 'pointer'
|
|
32935
|
-
}).on('click', function () {
|
|
32882
|
+
}).classed('geo-zoom-out', true).attr('cx', m_xscale(0)).attr('cy', m_yscale(1.0) + m_width - 2).attr('r', (m_width - 2) / 2).style('cursor', 'pointer').on('click', function () {
|
|
32936
32883
|
var z = map.zoom();
|
|
32937
32884
|
map.transition({
|
|
32938
32885
|
zoom: z - 1,
|
|
32939
|
-
ease: d3.
|
|
32886
|
+
ease: d3.easeCubicInOut,
|
|
32940
32887
|
duration: 500
|
|
32941
32888
|
});
|
|
32942
|
-
}).on('mousedown', function () {
|
|
32943
|
-
|
|
32889
|
+
}).on('mousedown', function (evt) {
|
|
32890
|
+
evt.stopPropagation();
|
|
32944
32891
|
});
|
|
32945
32892
|
put_icon(m_minusIcon, m_minus, m_xscale(0), m_yscale(1) + m_width - 2, m_width + 4).style('cursor', 'pointer').style('pointer-events', 'none').select('path').datum({
|
|
32946
32893
|
fill: 'black',
|
|
@@ -32954,13 +32901,13 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
32954
32901
|
* @param {boolean} [trans] Truthy for an animated transition.
|
|
32955
32902
|
*/
|
|
32956
32903
|
function respond(evt, trans) {
|
|
32957
|
-
var z = m_yscale.invert(d3.
|
|
32904
|
+
var z = m_yscale.invert(d3.pointer(event, svg.node())[1]),
|
|
32958
32905
|
zrange = map.zoomRange();
|
|
32959
32906
|
z = (1 - z) * (zrange.max - zrange.min) + zrange.min;
|
|
32960
32907
|
if (trans) {
|
|
32961
32908
|
map.transition({
|
|
32962
32909
|
zoom: z,
|
|
32963
|
-
ease: d3.
|
|
32910
|
+
ease: d3.easeCubicInOut,
|
|
32964
32911
|
duration: 500,
|
|
32965
32912
|
done: m_this._update()
|
|
32966
32913
|
});
|
|
@@ -32975,27 +32922,23 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
32975
32922
|
svg.append('rect').datum({
|
|
32976
32923
|
fill: 'white',
|
|
32977
32924
|
stroke: 'black'
|
|
32978
|
-
}).classed('geo-zoom-track', true).attr('x', m_xscale(0) - m_width / 6).attr('y', m_yscale(0)).attr('rx', m_width / 10).attr('ry', m_width / 10).attr('width', m_width / 3).attr('height', m_height - m_width * 3).style({
|
|
32979
|
-
|
|
32980
|
-
}).on('click', function () {
|
|
32981
|
-
respond(d3.event, true);
|
|
32925
|
+
}).classed('geo-zoom-track', true).attr('x', m_xscale(0) - m_width / 6).attr('y', m_yscale(0)).attr('rx', m_width / 10).attr('ry', m_width / 10).attr('width', m_width / 3).attr('height', m_height - m_width * 3).style('cursor', 'pointer').on('click', function (evt) {
|
|
32926
|
+
respond(evt, true);
|
|
32982
32927
|
});
|
|
32983
32928
|
|
|
32984
32929
|
// Create the nub
|
|
32985
32930
|
m_nub = svg.append('rect').datum({
|
|
32986
32931
|
fill: 'black',
|
|
32987
32932
|
stroke: null
|
|
32988
|
-
}).classed('geo-zoom-nub', true).attr('x', m_xscale(-4)).attr('y', m_yscale(0.5) - m_nubSize / 2).attr('rx', 3).attr('ry', 3).attr('width', m_width).attr('height', m_nubSize).style({
|
|
32989
|
-
cursor: 'pointer'
|
|
32990
|
-
}).on('mousedown', function () {
|
|
32933
|
+
}).classed('geo-zoom-nub', true).attr('x', m_xscale(-4)).attr('y', m_yscale(0.5) - m_nubSize / 2).attr('rx', 3).attr('ry', 3).attr('width', m_width).attr('height', m_nubSize).style('cursor', 'pointer').on('mousedown', function (evt) {
|
|
32991
32934
|
d3.select(document).on('mousemove.geo.slider', function () {
|
|
32992
|
-
respond(
|
|
32935
|
+
respond(evt);
|
|
32993
32936
|
});
|
|
32994
32937
|
d3.select(document).on('mouseup.geo.slider', function () {
|
|
32995
|
-
respond(
|
|
32938
|
+
respond(evt);
|
|
32996
32939
|
d3.select(document).on('.geo.slider', null);
|
|
32997
32940
|
});
|
|
32998
|
-
|
|
32941
|
+
evt.stopPropagation();
|
|
32999
32942
|
});
|
|
33000
32943
|
|
|
33001
32944
|
/**
|
|
@@ -33050,7 +32993,7 @@ var sliderWidget = function sliderWidget(arg) {
|
|
|
33050
32993
|
var map = m_this.layer().map(),
|
|
33051
32994
|
zoomRange = map.zoomRange(),
|
|
33052
32995
|
zoom = map.zoom(),
|
|
33053
|
-
zoomScale = d3.
|
|
32996
|
+
zoomScale = d3.scaleLinear();
|
|
33054
32997
|
obj = obj || {};
|
|
33055
32998
|
zoom = obj.value || zoom;
|
|
33056
32999
|
zoomScale.domain([zoomRange.min, zoomRange.max]).range([1, 0]).clamp(true);
|
|
@@ -33149,7 +33092,7 @@ var svgWidget = function svgWidget(arg) {
|
|
|
33149
33092
|
|
|
33150
33093
|
// svg widgets manage their own sizes, so make the resize handler a no-op
|
|
33151
33094
|
m_renderer._resize = function () {};
|
|
33152
|
-
m_this.canvas(m_renderer.canvas()
|
|
33095
|
+
m_this.canvas(m_renderer.canvas().node());
|
|
33153
33096
|
};
|
|
33154
33097
|
return this;
|
|
33155
33098
|
};
|
|
@@ -36956,7 +36899,7 @@ module.exports = vectorFeature;
|
|
|
36956
36899
|
* @constant
|
|
36957
36900
|
* @type {string}
|
|
36958
36901
|
*/
|
|
36959
|
-
module.exports = "1.
|
|
36902
|
+
module.exports = "1.12.0";
|
|
36960
36903
|
|
|
36961
36904
|
/***/ }),
|
|
36962
36905
|
|
|
@@ -42680,7 +42623,6 @@ var webgl_lineFeature = function webgl_lineFeature(arg) {
|
|
|
42680
42623
|
farBuf[dest3 + 1] = position[v2[nextkey] + 1];
|
|
42681
42624
|
farBuf[dest3 + 2] = 0; // position[v2[nextkey] + 2];
|
|
42682
42625
|
}
|
|
42683
|
-
|
|
42684
42626
|
if (updateFlags) {
|
|
42685
42627
|
offkey = !orderk0 ? 'negStrokeOffset' : 'posStrokeOffset';
|
|
42686
42628
|
flagsBuf[dest] = order[k][3] + v1.flags * flagsNearLineMult + v2.flags * flagsFarLineMult + v1[offkey] * flagsNearOffsetMult;
|
|
@@ -43187,7 +43129,6 @@ var webgl_markerFeature = function webgl_markerFeature(arg) {
|
|
|
43187
43129
|
// ignore the z values until we support them
|
|
43188
43130
|
position[i3 + 2] = 0; // posVal.z || 0;
|
|
43189
43131
|
}
|
|
43190
|
-
|
|
43191
43132
|
position = transform.transformCoordinates(m_this.gcs(), m_this.layer().map().gcs(), position, 3);
|
|
43192
43133
|
m_origin = new Float32Array(m_this.style.get('origin')(position));
|
|
43193
43134
|
if (m_origin[0] || m_origin[1] || m_origin[2]) {
|
|
@@ -44204,7 +44145,6 @@ var webgl_pointFeature = function webgl_pointFeature(arg) {
|
|
|
44204
44145
|
// ignore the z values until we support them
|
|
44205
44146
|
position[i3 + 2] = 0; // posVal.z || 0;
|
|
44206
44147
|
}
|
|
44207
|
-
|
|
44208
44148
|
position = transform.transformCoordinates(m_this.gcs(), m_this.layer().map().gcs(), position, 3);
|
|
44209
44149
|
m_origin = new Float32Array(m_this.style.get('origin')(position));
|
|
44210
44150
|
if (m_origin[0] || m_origin[1] || m_origin[2]) {
|
|
@@ -44832,7 +44772,6 @@ var webgl_polygonFeature = function webgl_polygonFeature(arg) {
|
|
|
44832
44772
|
// ignore the z values until we support them
|
|
44833
44773
|
geometry[d3 + 2] = 0; // c.z || 0;
|
|
44834
44774
|
}
|
|
44835
|
-
|
|
44836
44775
|
geometry = {
|
|
44837
44776
|
vertices: geometry,
|
|
44838
44777
|
dimensions: 3,
|
|
@@ -66317,6 +66256,12 @@ Datum_exports.hermannskogel = {
|
|
|
66317
66256
|
datumName: "Hermannskogel"
|
|
66318
66257
|
};
|
|
66319
66258
|
|
|
66259
|
+
Datum_exports.militargeographische_institut = {
|
|
66260
|
+
towgs84: "577.326,90.129,463.919,5.137,1.474,5.297,2.4232",
|
|
66261
|
+
ellipse: "bessel",
|
|
66262
|
+
datumName: "Militar-Geographische Institut"
|
|
66263
|
+
};
|
|
66264
|
+
|
|
66320
66265
|
Datum_exports.osni52 = {
|
|
66321
66266
|
towgs84: "482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",
|
|
66322
66267
|
ellipse: "airy",
|
|
@@ -66429,9 +66374,6 @@ function nadgrid(key, data) {
|
|
|
66429
66374
|
var view = new DataView(data);
|
|
66430
66375
|
var isLittleEndian = detectLittleEndian(view);
|
|
66431
66376
|
var header = readHeader(view, isLittleEndian);
|
|
66432
|
-
if (header.nSubgrids > 1) {
|
|
66433
|
-
console.log('Only single NTv2 subgrids are currently supported, subsequent sub grids are ignored');
|
|
66434
|
-
}
|
|
66435
66377
|
var subgrids = readSubgrids(view, header, isLittleEndian);
|
|
66436
66378
|
var nadgrid = {header: header, subgrids: subgrids};
|
|
66437
66379
|
loadedNadgrids[key] = nadgrid;
|
|
@@ -66518,6 +66460,7 @@ function readSubgrids(view, header, isLittleEndian) {
|
|
|
66518
66460
|
count: subHeader.gridNodeCount,
|
|
66519
66461
|
cvs: mapNodes(nodes)
|
|
66520
66462
|
});
|
|
66463
|
+
gridOffset += 176 + subHeader.gridNodeCount * 16;
|
|
66521
66464
|
}
|
|
66522
66465
|
return grids;
|
|
66523
66466
|
}
|
|
@@ -66714,6 +66657,7 @@ function applyGridShift(source, inverse, point) {
|
|
|
66714
66657
|
var output = {x: Number.NaN, y: Number.NaN};
|
|
66715
66658
|
var onlyMandatoryGrids = false;
|
|
66716
66659
|
var attemptedGrids = [];
|
|
66660
|
+
outer:
|
|
66717
66661
|
for (var i = 0; i < source.grids.length; i++) {
|
|
66718
66662
|
var grid = source.grids[i];
|
|
66719
66663
|
attemptedGrids.push(grid.name);
|
|
@@ -66729,19 +66673,22 @@ function applyGridShift(source, inverse, point) {
|
|
|
66729
66673
|
}
|
|
66730
66674
|
continue;
|
|
66731
66675
|
}
|
|
66732
|
-
var
|
|
66733
|
-
|
|
66734
|
-
|
|
66735
|
-
|
|
66736
|
-
|
|
66737
|
-
|
|
66738
|
-
|
|
66739
|
-
|
|
66740
|
-
|
|
66741
|
-
|
|
66742
|
-
|
|
66743
|
-
|
|
66744
|
-
|
|
66676
|
+
var subgrids = grid.grid.subgrids;
|
|
66677
|
+
for (var j = 0, jj = subgrids.length; j < jj; j++) {
|
|
66678
|
+
var subgrid = subgrids[j];
|
|
66679
|
+
// skip tables that don't match our point at all
|
|
66680
|
+
var epsilon = (Math.abs(subgrid.del[1]) + Math.abs(subgrid.del[0])) / 10000.0;
|
|
66681
|
+
var minX = subgrid.ll[0] - epsilon;
|
|
66682
|
+
var minY = subgrid.ll[1] - epsilon;
|
|
66683
|
+
var maxX = subgrid.ll[0] + (subgrid.lim[0] - 1) * subgrid.del[0] + epsilon;
|
|
66684
|
+
var maxY = subgrid.ll[1] + (subgrid.lim[1] - 1) * subgrid.del[1] + epsilon;
|
|
66685
|
+
if (minY > input.y || minX > input.x || maxY < input.y || maxX < input.x ) {
|
|
66686
|
+
continue;
|
|
66687
|
+
}
|
|
66688
|
+
output = applySubgridShift(input, inverse, subgrid);
|
|
66689
|
+
if (!isNaN(output.x)) {
|
|
66690
|
+
break outer;
|
|
66691
|
+
}
|
|
66745
66692
|
}
|
|
66746
66693
|
}
|
|
66747
66694
|
if (isNaN(output.x)) {
|
|
@@ -69240,7 +69187,7 @@ function inverse(p) {
|
|
|
69240
69187
|
return p;
|
|
69241
69188
|
}
|
|
69242
69189
|
|
|
69243
|
-
var names = ["Extended_Transverse_Mercator", "Extended Transverse Mercator", "etmerc", "Transverse_Mercator", "Transverse Mercator", "tmerc"];
|
|
69190
|
+
var names = ["Extended_Transverse_Mercator", "Extended Transverse Mercator", "etmerc", "Transverse_Mercator", "Transverse Mercator", "Gauss Kruger", "Gauss_Kruger", "tmerc"];
|
|
69244
69191
|
/* harmony default export */ var etmerc = ({
|
|
69245
69192
|
init: init,
|
|
69246
69193
|
forward: forward,
|
|
@@ -72514,6 +72461,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
72514
72461
|
/* harmony export */ });
|
|
72515
72462
|
/* harmony import */ var _gauss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9326);
|
|
72516
72463
|
/* harmony import */ var _common_adjust_lon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(759);
|
|
72464
|
+
/* harmony import */ var _common_hypot__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(110);
|
|
72465
|
+
|
|
72517
72466
|
|
|
72518
72467
|
|
|
72519
72468
|
|
|
@@ -72552,7 +72501,7 @@ function inverse(p) {
|
|
|
72552
72501
|
|
|
72553
72502
|
p.x /= this.k0;
|
|
72554
72503
|
p.y /= this.k0;
|
|
72555
|
-
if ((rho =
|
|
72504
|
+
if ((rho = (0,_common_hypot__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z)(p.x, p.y))) {
|
|
72556
72505
|
var c = 2 * Math.atan2(rho, this.R2);
|
|
72557
72506
|
sinc = Math.sin(c);
|
|
72558
72507
|
cosc = Math.cos(c);
|
|
@@ -73863,8 +73812,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
73863
73812
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
73864
73813
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
73865
73814
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
73866
|
-
function _toPropertyKey(
|
|
73867
|
-
function _toPrimitive(
|
|
73815
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
73816
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
73868
73817
|
var ARRAY_TYPES = [Int8Array, Uint8Array, Uint8ClampedArray, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array];
|
|
73869
73818
|
|
|
73870
73819
|
/** @typedef {Int8ArrayConstructor | Uint8ArrayConstructor | Uint8ClampedArrayConstructor | Int16ArrayConstructor | Uint16ArrayConstructor | Int32ArrayConstructor | Uint32ArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor} TypedArrayConstructor */
|