geojs 1.4.1 → 1.6.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/.github/workflows/main.yml +1 -1
- package/CHANGELOG.md +261 -245
- package/geo.js +82473 -86198
- package/geo.lean.js +69524 -63827
- package/geo.lean.min.js +28 -41
- package/geo.min.js +30 -47
- package/package.json +62 -79
- package/src/annotation.js +2 -2
- package/src/annotationLayer.js +13 -13
- package/src/canvas/heatmapFeature.js +39 -16
- package/src/choroplethFeature.js +3 -3
- package/src/feature.js +4 -4
- package/src/geojsonReader.js +5 -4
- package/src/heatmapFeature.js +16 -5
- package/src/index.js +1 -1
- package/src/isolineFeature.js +4 -4
- package/src/lineFeature.js +4 -4
- package/src/map.js +2 -2
- package/src/mapInteractor.js +3 -0
- package/src/markerFeature.js +8 -8
- package/src/object.js +1 -3
- package/src/osmLayer.js +51 -6
- package/src/pixelmapFeature.js +1 -1
- package/src/pointFeature.js +1 -1
- package/src/polygonFeature.js +4 -4
- package/src/registry.js +1 -1
- package/src/svg/svgRenderer.js +3 -0
- package/src/svg/vectorFeature.js +1 -1
- package/src/tileLayer.js +4 -4
- package/src/trackFeature.js +12 -12
- package/src/transform.js +11 -10
- package/src/ui/colorLegendWidget.js +6 -6
- package/src/ui/legendWidget.js +3 -3
- package/src/ui/sliderWidget.js +4 -4
- package/src/util/common.js +9 -8
- package/src/util/mockVGL.js +3 -2
- package/src/util/throttle.js +3 -3
- package/src/vendor.js +0 -2
- package/src/vtkjs/vtkjsRenderer.js +3 -0
- package/src/webgl/layer.js +1 -1
- package/src/webgl/markerFeature.js +4 -4
- package/src/webgl/meshColored.js +3 -3
- package/src/webgl/pointFeature.js +11 -11
- package/src/webgl/polygonFeature.js +3 -3
- package/src/webgl/quadFeature.js +3 -1
- package/src/webgl/webglRenderer.js +1 -2
- package/src/polyfills.js +0 -4
package/src/webgl/layer.js
CHANGED
|
@@ -141,7 +141,7 @@ var webgl_layer = function () {
|
|
|
141
141
|
opacity,
|
|
142
142
|
lowerTileLayers;
|
|
143
143
|
layers.forEach(function (layer) {
|
|
144
|
-
|
|
144
|
+
const autoshare = layer.autoshareRenderer(),
|
|
145
145
|
isTileLayer = layer instanceof tileLayer;
|
|
146
146
|
if (!autoshare || !layer.renderer() || layer.renderer().api() !== webglRenderer.apiname) {
|
|
147
147
|
renderer = null;
|
|
@@ -129,7 +129,7 @@ var webgl_markerFeature = function (arg) {
|
|
|
129
129
|
|
|
130
130
|
posFunc = m_this.position();
|
|
131
131
|
|
|
132
|
-
for (
|
|
132
|
+
for (const key in styleKeys) {
|
|
133
133
|
styleFunc[key] = m_this.style.get(key);
|
|
134
134
|
if (!util.isFunction(m_this.style(key))) {
|
|
135
135
|
styleUni[key] = styleFunc[key]();
|
|
@@ -183,7 +183,7 @@ var webgl_markerFeature = function (arg) {
|
|
|
183
183
|
}
|
|
184
184
|
}
|
|
185
185
|
// unrolling this would speed it up
|
|
186
|
-
for (
|
|
186
|
+
for (const key in styleKeys) {
|
|
187
187
|
styleVal[key] = styleUni[key] === undefined ? styleFunc[key](item, i) : styleUni[key];
|
|
188
188
|
}
|
|
189
189
|
styleVal.scaleWithZoom = markerFeature.scaleMode[styleVal.scaleWithZoom] || (styleVal.scaleWithZoom >= 1 && styleVal.scaleWithZoom <= 3 ? styleVal.scaleWithZoom : 0);
|
|
@@ -219,7 +219,7 @@ var webgl_markerFeature = function (arg) {
|
|
|
219
219
|
}
|
|
220
220
|
|
|
221
221
|
if (m_this._primitiveShapeAuto) {
|
|
222
|
-
|
|
222
|
+
const maxr = m_this._approximateMaxRadius(m_this.renderer().map().zoom());
|
|
223
223
|
if ((m_this._primitiveShape === markerFeature.primitiveShapes.sprite && maxr > webglRenderer._maxPointSize) ||
|
|
224
224
|
(m_this._primitiveShape !== markerFeature.primitiveShapes.sprite && maxr <= webglRenderer._maxPointSize)) {
|
|
225
225
|
// Switch primitive
|
|
@@ -339,7 +339,7 @@ var webgl_markerFeature = function (arg) {
|
|
|
339
339
|
needsRefresh = true;
|
|
340
340
|
}
|
|
341
341
|
if (key === sbkey) {
|
|
342
|
-
|
|
342
|
+
const mod = m_this.modified;
|
|
343
343
|
if (!needsRefresh) {
|
|
344
344
|
// don't allow modified to be adjusted if we don't need to refresh
|
|
345
345
|
m_this.modified = () => {};
|
package/src/webgl/meshColored.js
CHANGED
|
@@ -140,11 +140,11 @@ var webgl_meshColored = function (arg) {
|
|
|
140
140
|
posAttr = vgl.vertexAttribute('pos'),
|
|
141
141
|
valueAttr = vgl.vertexAttribute('value'),
|
|
142
142
|
opacityAttr = vgl.vertexAttribute('opacity'),
|
|
143
|
-
sourcePositions = vgl.sourceDataP3fv({
|
|
143
|
+
sourcePositions = vgl.sourceDataP3fv({name: 'pos'}),
|
|
144
144
|
sourceValues = vgl.sourceDataAnyfv(
|
|
145
|
-
1, vgl.vertexAttributeKeysIndexed.One, {
|
|
145
|
+
1, vgl.vertexAttributeKeysIndexed.One, {name: 'value'}),
|
|
146
146
|
sourceOpacity = vgl.sourceDataAnyfv(
|
|
147
|
-
1, vgl.vertexAttributeKeysIndexed.Two, {
|
|
147
|
+
1, vgl.vertexAttributeKeysIndexed.Two, {name: 'opacity'}),
|
|
148
148
|
primitive = new vgl.triangles();
|
|
149
149
|
m_modelViewUniform = new vgl.modelViewOriginUniform('modelViewMatrix');
|
|
150
150
|
|
|
@@ -321,7 +321,7 @@ var webgl_pointFeature = function (arg) {
|
|
|
321
321
|
} else {
|
|
322
322
|
needsRefresh = true;
|
|
323
323
|
}
|
|
324
|
-
|
|
324
|
+
const mod = m_this.modified;
|
|
325
325
|
if (!needsRefresh) {
|
|
326
326
|
// don't allow modified to be adjusted if we don't need to refresh
|
|
327
327
|
m_this.modified = () => {};
|
|
@@ -362,25 +362,25 @@ var webgl_pointFeature = function (arg) {
|
|
|
362
362
|
mat = vgl.material(),
|
|
363
363
|
blend = vgl.blend(),
|
|
364
364
|
geom = vgl.geometryData(),
|
|
365
|
-
sourcePositions = vgl.sourceDataP3fv({
|
|
365
|
+
sourcePositions = vgl.sourceDataP3fv({name: 'pos'}),
|
|
366
366
|
sourceUnits = vgl.sourceDataAnyfv(
|
|
367
|
-
2, vgl.vertexAttributeKeysIndexed.One, {
|
|
367
|
+
2, vgl.vertexAttributeKeysIndexed.One, {name: 'unit'}),
|
|
368
368
|
sourceRadius = vgl.sourceDataAnyfv(
|
|
369
|
-
1, vgl.vertexAttributeKeysIndexed.Two, {
|
|
369
|
+
1, vgl.vertexAttributeKeysIndexed.Two, {name: 'radius'}),
|
|
370
370
|
sourceStrokeWidth = vgl.sourceDataAnyfv(
|
|
371
|
-
1, vgl.vertexAttributeKeysIndexed.Three, {
|
|
371
|
+
1, vgl.vertexAttributeKeysIndexed.Three, {name: 'strokeWidth'}),
|
|
372
372
|
sourceFillColor = vgl.sourceDataAnyfv(
|
|
373
|
-
3, vgl.vertexAttributeKeysIndexed.Four, {
|
|
373
|
+
3, vgl.vertexAttributeKeysIndexed.Four, {name: 'fillColor'}),
|
|
374
374
|
sourceFill = vgl.sourceDataAnyfv(
|
|
375
|
-
1, vgl.vertexAttributeKeysIndexed.Five, {
|
|
375
|
+
1, vgl.vertexAttributeKeysIndexed.Five, {name: 'fill'}),
|
|
376
376
|
sourceStrokeColor = vgl.sourceDataAnyfv(
|
|
377
|
-
3, vgl.vertexAttributeKeysIndexed.Six, {
|
|
377
|
+
3, vgl.vertexAttributeKeysIndexed.Six, {name: 'strokeColor'}),
|
|
378
378
|
sourceStroke = vgl.sourceDataAnyfv(
|
|
379
|
-
1, vgl.vertexAttributeKeysIndexed.Seven, {
|
|
379
|
+
1, vgl.vertexAttributeKeysIndexed.Seven, {name: 'stroke'}),
|
|
380
380
|
sourceAlpha = vgl.sourceDataAnyfv(
|
|
381
|
-
1, vgl.vertexAttributeKeysIndexed.Eight, {
|
|
381
|
+
1, vgl.vertexAttributeKeysIndexed.Eight, {name: 'fillOpacity'}),
|
|
382
382
|
sourceStrokeOpacity = vgl.sourceDataAnyfv(
|
|
383
|
-
1, vgl.vertexAttributeKeysIndexed.Nine, {
|
|
383
|
+
1, vgl.vertexAttributeKeysIndexed.Nine, {name: 'strokeOpacity'}),
|
|
384
384
|
primitive;
|
|
385
385
|
m_modelViewUniform = new vgl.modelViewOriginUniform('modelViewMatrix', m_origin);
|
|
386
386
|
|
|
@@ -267,11 +267,11 @@ var webgl_polygonFeature = function (arg) {
|
|
|
267
267
|
fragmentShader = createFragmentShader(),
|
|
268
268
|
blend = vgl.blend(),
|
|
269
269
|
geom = vgl.geometryData(),
|
|
270
|
-
sourcePositions = vgl.sourceDataP3fv({
|
|
270
|
+
sourcePositions = vgl.sourceDataP3fv({name: 'pos'}),
|
|
271
271
|
sourceFillColor = vgl.sourceDataAnyfv(
|
|
272
|
-
3, vgl.vertexAttributeKeysIndexed.Two, {
|
|
272
|
+
3, vgl.vertexAttributeKeysIndexed.Two, {name: 'fillColor'}),
|
|
273
273
|
sourceFillOpacity = vgl.sourceDataAnyfv(
|
|
274
|
-
1, vgl.vertexAttributeKeysIndexed.Three, {
|
|
274
|
+
1, vgl.vertexAttributeKeysIndexed.Three, {name: 'fillOpacity'}),
|
|
275
275
|
trianglePrimitive = vgl.triangles();
|
|
276
276
|
m_modelViewUniform = new vgl.modelViewOriginUniform('modelViewMatrix');
|
|
277
277
|
|
package/src/webgl/quadFeature.js
CHANGED
|
@@ -361,7 +361,9 @@ var webgl_quadFeature = function (arg) {
|
|
|
361
361
|
return;
|
|
362
362
|
}
|
|
363
363
|
quad.texture.bind(renderState);
|
|
364
|
-
|
|
364
|
+
if (context.getError() === context.OUT_OF_MEMORY) {
|
|
365
|
+
console.log('Insufficient GPU memory for texture');
|
|
366
|
+
}
|
|
365
367
|
if (quad.opacity !== opacity) {
|
|
366
368
|
opacity = quad.opacity;
|
|
367
369
|
context.uniform1fv(renderState.m_material.shaderProgram()
|
|
@@ -271,8 +271,7 @@ var webglRenderer = function (arg) {
|
|
|
271
271
|
|
|
272
272
|
// Connect to pan event. This is sufficient, as all zooms and rotations also
|
|
273
273
|
// produce a pan
|
|
274
|
-
m_this.layer().geoOn(geo_event.pan, function (
|
|
275
|
-
void (evt);
|
|
274
|
+
m_this.layer().geoOn(geo_event.pan, function (_evt) {
|
|
276
275
|
m_updateCamera = true;
|
|
277
276
|
});
|
|
278
277
|
|
package/src/polyfills.js
DELETED