geojs 1.9.2 → 1.9.3

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/geo.lean.js CHANGED
@@ -3725,6 +3725,17 @@ var textFeature = __webpack_require__(9757);
3725
3725
  * style object.
3726
3726
  */
3727
3727
 
3728
+ /**
3729
+ * @typedef {geo.util.polyop.spec} geo.util.polyop.annotationLayerSpec
3730
+ * @extends {geo.util.polyop.spec}
3731
+ * @property {string} [keepAnnotations='exact'] Determine which annotations are
3732
+ * present after a boolean operation. `'exact'` replaces modified
3733
+ * annotations with the results; unmodified annotations are left as is.
3734
+ * `'all'` replaces all annotations, so unchanged annotations may be
3735
+ * converted to polygonAnnotations. `'none'` discards all existing
3736
+ * annotations and only keeps modified results.
3737
+ */
3738
+
3728
3739
  /**
3729
3740
  * Layer to handle direct interactions with different features. Annotations
3730
3741
  * (features) can be created by calling mode(<name of feature>) or cancelled
@@ -5192,8 +5203,8 @@ var annotationLayer = function annotationLayer(arg) {
5192
5203
  * Replace appropriate annotations with a list of polygons.
5193
5204
  *
5194
5205
  * @param {geo.polygonList} poly A list of polygons.
5195
- * @param {geo.util.polyop.spec} [opts] This contains annotationIndices and
5196
- * correspondence used to track annotations.
5206
+ * @param {geo.util.polyop.annotationLayerSpec} [opts] This contains
5207
+ * annotationIndices and correspondence used to track annotations.
5197
5208
  * @returns {this}
5198
5209
  */
5199
5210
 
@@ -15578,9 +15589,12 @@ var util = __webpack_require__(4634);
15578
15589
  * divided by the sine of half the angle between segments, then a bevel join
15579
15590
  * is used instead. This is a single value that applies to all lines. If a
15580
15591
  * function, it is called with `(data)`.
15581
- * @property {boolean|function} [uniformLine=false] Boolean indicating if each
15582
- * line has a uniform style (uniform stroke color, opacity, and width). Can
15583
- * vary by line.
15592
+ * @property {boolean|string|function} [uniformLine=false] Boolean indicating
15593
+ * if each line has a uniform style (uniform stroke color, opacity, and
15594
+ * width). Can vary by line. A value of `'drop'` will modify rendered
15595
+ * vertex order by dropping duplicates and setting later values to zero
15596
+ * opacity. This can be faster but makes it so updating the style array
15597
+ * can no longer be used.
15584
15598
  * @property {number|function} [antialiasing] Antialiasing distance in pixels.
15585
15599
  * Values must be non-negative. A value greater than 1 will produce a
15586
15600
  * visible gradient. This is a single value that applies to all lines.
@@ -27563,7 +27577,7 @@ module.exports = sceneObject;
27563
27577
  * @constant
27564
27578
  * @type {string}
27565
27579
  */
27566
- module.exports = "c77ab7869ca682dfc42f6a12a7ad2121687e94b8";
27580
+ module.exports = "965d40f46507df035bc01450d2bd15c3ed06368d";
27567
27581
 
27568
27582
  /***/ }),
27569
27583
 
@@ -33441,7 +33455,9 @@ var trackFeature = function trackFeature(arg) {
33441
33455
  position: util.identityFunction,
33442
33456
  time: function time(d, i) {
33443
33457
  return d.t !== undefined ? d.t : i;
33444
- }
33458
+ },
33459
+ uniformLine: 'drop',
33460
+ closed: false
33445
33461
  }, arg.style === undefined ? {} : arg.style);
33446
33462
  var markerStyle = $.extend(true, {}, {
33447
33463
  rotateWithMap: true,
@@ -40683,7 +40699,7 @@ module.exports = vectorFeature;
40683
40699
  * @constant
40684
40700
  * @type {string}
40685
40701
  */
40686
- module.exports = "1.9.2";
40702
+ module.exports = "1.9.3";
40687
40703
 
40688
40704
  /***/ }),
40689
40705
 
@@ -42082,6 +42098,7 @@ var webgl_lineFeature = function webgl_lineFeature(arg) {
42082
42098
  closedVal = closed[i];
42083
42099
  firstPosIdx3 = posIdx3;
42084
42100
  maxj = lineItem.length + (closedVal === 2 ? 1 : 0);
42101
+ var skipped = 0;
42085
42102
 
42086
42103
  for (j = 0; j < maxj; j += 1, posIdx3 += 3) {
42087
42104
  lidx = j;
@@ -42148,9 +42165,20 @@ var webgl_lineFeature = function webgl_lineFeature(arg) {
42148
42165
  }
42149
42166
 
42150
42167
  if (j) {
42168
+ if (uniform === 'drop' && j > 1 && position[vert[0].pos] === position[vert[1].pos] && position[vert[0].pos + 1] === position[vert[1].pos + 1]) {
42169
+ skipped += 1;
42170
+ continue;
42171
+ }
42151
42172
  /* zero out the z position. This can be changed if we handle it in
42152
42173
  * the shader. */
42174
+
42175
+
42153
42176
  for (k = 0; k < orderLen; k += 1, dest += 1, dest3 += 3) {
42177
+ if (uniform === 'drop' && vert[0].strokeOpacity <= 0 && vert[1].strokeOpacity <= 0) {
42178
+ strokeOpacityBuf[dest] = -1;
42179
+ continue;
42180
+ }
42181
+
42154
42182
  orderk0 = order[k][0];
42155
42183
  v1 = vert[orderk0];
42156
42184
  v2 = vert[1 - orderk0];
@@ -42193,6 +42221,12 @@ var webgl_lineFeature = function webgl_lineFeature(arg) {
42193
42221
  }
42194
42222
  }
42195
42223
  }
42224
+
42225
+ if (skipped) {
42226
+ for (k = 0; k < skipped * orderLen; k += 1, dest += 1, dest3 += 3) {
42227
+ strokeOpacityBuf[dest] = -1;
42228
+ }
42229
+ }
42196
42230
  }
42197
42231
 
42198
42232
  if (!onlyStyle) {