@genome-spy/core 0.78.0 → 0.79.1
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/dist/bundle/{browser-KWU9rWZT.js → browser-CETrb2cm.js} +53 -33
- package/dist/bundle/esm-BdLYkz-m.js +248 -0
- package/dist/bundle/esm-BwiDsqSb.js +1367 -0
- package/dist/bundle/esm-CDFd1cjk.js +441 -0
- package/dist/bundle/{esm-DVOHLB1e.js → esm-CTUHLDbv.js} +30 -30
- package/dist/bundle/{esm-NIYEaYkc.js → esm-Cx-EbkOj.js} +13 -13
- package/dist/bundle/esm-DlYGqi79.js +128 -0
- package/dist/bundle/{esm-BygJiwh0.js → esm-k9p3oHkt.js} +133 -158
- package/dist/bundle/{esm-CT3ygiMq.js → esm-zAZJQO6D.js} +226 -212
- package/dist/bundle/index.es.js +14879 -11656
- package/dist/bundle/index.js +119 -108
- package/dist/bundle/{parquetRead-DG_-F5j5.js → parquetRead-Cad1SOVV.js} +473 -399
- package/dist/schema.json +18940 -6914
- package/dist/src/config/axisConfig.d.ts +2 -2
- package/dist/src/config/axisConfig.d.ts.map +1 -1
- package/dist/src/config/axisConfig.js +28 -44
- package/dist/src/config/configLayers.d.ts +45 -0
- package/dist/src/config/configLayers.d.ts.map +1 -0
- package/dist/src/config/configLayers.js +110 -0
- package/dist/src/config/defaultConfig.d.ts.map +1 -1
- package/dist/src/config/defaultConfig.js +8 -1
- package/dist/src/config/defaults/legendDefaults.d.ts +14 -0
- package/dist/src/config/defaults/legendDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/legendDefaults.js +46 -0
- package/dist/src/config/defaults/titleDefaults.d.ts.map +1 -1
- package/dist/src/config/defaults/titleDefaults.js +26 -18
- package/dist/src/config/legendConfig.d.ts +11 -0
- package/dist/src/config/legendConfig.d.ts.map +1 -0
- package/dist/src/config/legendConfig.js +63 -0
- package/dist/src/config/styleUtils.d.ts +8 -2
- package/dist/src/config/styleUtils.d.ts.map +1 -1
- package/dist/src/config/styleUtils.js +25 -1
- package/dist/src/config/themes.d.ts.map +1 -1
- package/dist/src/config/themes.js +21 -2
- package/dist/src/config/titleConfig.d.ts.map +1 -1
- package/dist/src/config/titleConfig.js +2 -18
- package/dist/src/data/collector.d.ts.map +1 -1
- package/dist/src/data/collector.js +40 -18
- package/dist/src/data/flowInit.d.ts +6 -0
- package/dist/src/data/flowInit.d.ts.map +1 -1
- package/dist/src/data/flowInit.js +1 -1
- package/dist/src/data/flowNode.d.ts +32 -0
- package/dist/src/data/flowNode.d.ts.map +1 -1
- package/dist/src/data/flowNode.js +59 -0
- package/dist/src/data/sources/lazy/bamSource.d.ts +0 -1
- package/dist/src/data/sources/lazy/bamSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bamSource.js +39 -30
- package/dist/src/data/sources/lazy/bigBedSource.d.ts +0 -10
- package/dist/src/data/sources/lazy/bigBedSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bigBedSource.js +127 -62
- package/dist/src/data/sources/lazy/bigWigSource.d.ts +2 -2
- package/dist/src/data/sources/lazy/bigWigSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bigWigSource.js +234 -81
- package/dist/src/data/sources/lazy/gff3Source.d.ts +7 -3
- package/dist/src/data/sources/lazy/gff3Source.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/gff3Source.js +7 -8
- package/dist/src/data/sources/lazy/indexedFastaSource.d.ts +1 -1
- package/dist/src/data/sources/lazy/indexedFastaSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/indexedFastaSource.js +28 -19
- package/dist/src/data/sources/lazy/legendEntriesSource.d.ts +24 -0
- package/dist/src/data/sources/lazy/legendEntriesSource.d.ts.map +1 -0
- package/dist/src/data/sources/lazy/legendEntriesSource.js +218 -0
- package/dist/src/data/sources/lazy/legendGradientSource.d.ts +30 -0
- package/dist/src/data/sources/lazy/legendGradientSource.d.ts.map +1 -0
- package/dist/src/data/sources/lazy/legendGradientSource.js +388 -0
- package/dist/src/data/sources/lazy/mockLazySource.d.ts +4 -1
- package/dist/src/data/sources/lazy/mockLazySource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/mockLazySource.js +49 -4
- package/dist/src/data/sources/lazy/registerCoreLazySources.js +2 -0
- package/dist/src/data/sources/lazy/singleAxisWindowedSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/singleAxisWindowedSource.js +3 -4
- package/dist/src/data/sources/lazy/tabixSource.d.ts +9 -4
- package/dist/src/data/sources/lazy/tabixSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/tabixSource.js +201 -70
- package/dist/src/data/sources/lazy/tabixTsvSource.d.ts +2 -3
- package/dist/src/data/sources/lazy/tabixTsvSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/tabixTsvSource.js +14 -12
- package/dist/src/data/sources/lazy/vcfSource.d.ts +7 -3
- package/dist/src/data/sources/lazy/vcfSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/vcfSource.js +7 -8
- package/dist/src/data/sources/urlDescriptor.d.ts +165 -0
- package/dist/src/data/sources/urlDescriptor.d.ts.map +1 -0
- package/dist/src/data/sources/urlDescriptor.js +473 -0
- package/dist/src/data/sources/urlDescriptorController.d.ts +25 -0
- package/dist/src/data/sources/urlDescriptorController.d.ts.map +1 -0
- package/dist/src/data/sources/urlDescriptorController.js +72 -0
- package/dist/src/data/sources/urlDescriptorState.d.ts +47 -0
- package/dist/src/data/sources/urlDescriptorState.d.ts.map +1 -0
- package/dist/src/data/sources/urlDescriptorState.js +129 -0
- package/dist/src/data/sources/urlSource.d.ts.map +1 -1
- package/dist/src/data/sources/urlSource.js +101 -61
- package/dist/src/data/transforms/packLegendLabels.d.ts +21 -0
- package/dist/src/data/transforms/packLegendLabels.d.ts.map +1 -0
- package/dist/src/data/transforms/packLegendLabels.js +189 -0
- package/dist/src/data/transforms/transformFactory.d.ts.map +1 -1
- package/dist/src/data/transforms/transformFactory.js +4 -0
- package/dist/src/data/transforms/truncateText.d.ts +27 -0
- package/dist/src/data/transforms/truncateText.d.ts.map +1 -0
- package/dist/src/data/transforms/truncateText.js +94 -0
- package/dist/src/debug/dataflowDebugSnapshot.d.ts +58 -0
- package/dist/src/debug/dataflowDebugSnapshot.d.ts.map +1 -0
- package/dist/src/debug/dataflowDebugSnapshot.js +159 -0
- package/dist/src/debug/markDebugSnapshot.d.ts +54 -0
- package/dist/src/debug/markDebugSnapshot.d.ts.map +1 -0
- package/dist/src/debug/markDebugSnapshot.js +100 -0
- package/dist/src/debug/paramDebugSnapshot.d.ts +53 -0
- package/dist/src/debug/paramDebugSnapshot.d.ts.map +1 -0
- package/dist/src/debug/paramDebugSnapshot.js +86 -0
- package/dist/src/debug/resolutionDebugSnapshot.d.ts +155 -0
- package/dist/src/debug/resolutionDebugSnapshot.d.ts.map +1 -0
- package/dist/src/debug/resolutionDebugSnapshot.js +291 -0
- package/dist/src/debug/valuePreview.d.ts +9 -0
- package/dist/src/debug/valuePreview.d.ts.map +1 -0
- package/dist/src/debug/valuePreview.js +57 -0
- package/dist/src/debug/viewDebugSnapshot.d.ts +131 -0
- package/dist/src/debug/viewDebugSnapshot.d.ts.map +1 -0
- package/dist/src/debug/viewDebugSnapshot.js +390 -0
- package/dist/src/embedFactory.d.ts.map +1 -1
- package/dist/src/embedFactory.js +6 -1
- package/dist/src/encoder/encoder.d.ts +2 -2
- package/dist/src/encoder/encoder.d.ts.map +1 -1
- package/dist/src/encoder/encoder.js +5 -4
- package/dist/src/fonts/bmFontManager.d.ts +1 -1
- package/dist/src/fonts/bmFontManager.d.ts.map +1 -1
- package/dist/src/fonts/bmFontManager.js +45 -10
- package/dist/src/fonts/textMetrics.d.ts +69 -0
- package/dist/src/fonts/textMetrics.d.ts.map +1 -0
- package/dist/src/fonts/textMetrics.js +73 -0
- package/dist/src/genomeSpy/headlessBootstrap.d.ts.map +1 -1
- package/dist/src/genomeSpy/headlessBootstrap.js +6 -0
- package/dist/src/genomeSpy/renderCoordinator.d.ts.map +1 -1
- package/dist/src/genomeSpy/renderCoordinator.js +25 -3
- package/dist/src/genomeSpy/viewDataInit.d.ts +14 -0
- package/dist/src/genomeSpy/viewDataInit.d.ts.map +1 -1
- package/dist/src/genomeSpy/viewDataInit.js +45 -8
- package/dist/src/genomeSpyBase.d.ts +6 -0
- package/dist/src/genomeSpyBase.d.ts.map +1 -1
- package/dist/src/genomeSpyBase.js +20 -3
- package/dist/src/gl/glslScaleGenerator.d.ts +17 -0
- package/dist/src/gl/glslScaleGenerator.d.ts.map +1 -1
- package/dist/src/gl/glslScaleGenerator.js +39 -2
- package/dist/src/gl/includes/common.glsl.js +1 -1
- package/dist/src/gl/vertexRangeIndex.d.ts.map +1 -1
- package/dist/src/gl/vertexRangeIndex.js +4 -2
- package/dist/src/gl/webGLHelper.d.ts +1 -1
- package/dist/src/gl/webGLHelper.d.ts.map +1 -1
- package/dist/src/gl/webGLHelper.js +13 -8
- package/dist/src/marks/__snapshots__/shaderSnapshot.test.js.snap +140 -3
- package/dist/src/marks/mark.d.ts +47 -4
- package/dist/src/marks/mark.d.ts.map +1 -1
- package/dist/src/marks/mark.js +158 -54
- package/dist/src/marks/point.d.ts.map +1 -1
- package/dist/src/marks/point.js +4 -0
- package/dist/src/marks/point.vertex.glsl.js +1 -1
- package/dist/src/marks/text.d.ts +1 -1
- package/dist/src/marks/text.d.ts.map +1 -1
- package/dist/src/marks/text.js +2 -7
- package/dist/src/marks/text.vertex.glsl.js +1 -1
- package/dist/src/paramRuntime/paramUtils.d.ts +43 -9
- package/dist/src/paramRuntime/paramUtils.d.ts.map +1 -1
- package/dist/src/paramRuntime/paramUtils.js +61 -1
- package/dist/src/paramRuntime/viewParamRuntime.d.ts +32 -0
- package/dist/src/paramRuntime/viewParamRuntime.d.ts.map +1 -1
- package/dist/src/paramRuntime/viewParamRuntime.js +63 -0
- package/dist/src/scales/axisResolution.d.ts +35 -0
- package/dist/src/scales/axisResolution.d.ts.map +1 -1
- package/dist/src/scales/axisResolution.js +115 -7
- package/dist/src/scales/legendResolution.d.ts +83 -0
- package/dist/src/scales/legendResolution.d.ts.map +1 -0
- package/dist/src/scales/legendResolution.js +461 -0
- package/dist/src/scales/scaleResolution.d.ts +36 -0
- package/dist/src/scales/scaleResolution.d.ts.map +1 -1
- package/dist/src/scales/scaleResolution.js +59 -0
- package/dist/src/scales/viewLevelGuideConfig.d.ts +53 -0
- package/dist/src/scales/viewLevelGuideConfig.d.ts.map +1 -0
- package/dist/src/scales/viewLevelGuideConfig.js +224 -0
- package/dist/src/scales/viewLevelScaleConfig.d.ts.map +1 -1
- package/dist/src/scales/viewLevelScaleConfig.js +13 -2
- package/dist/src/spec/axis.d.ts +109 -3
- package/dist/src/spec/channel.d.ts +23 -4
- package/dist/src/spec/config.d.ts +59 -4
- package/dist/src/spec/data.d.ts +177 -17
- package/dist/src/spec/legend.d.ts +246 -0
- package/dist/src/spec/mark.d.ts +16 -4
- package/dist/src/spec/title.d.ts +58 -1
- package/dist/src/spec/transform.d.ts +149 -0
- package/dist/src/spec/view.d.ts +39 -6
- package/dist/src/types/embedApi.d.ts +262 -6
- package/dist/src/types/rendering.d.ts +19 -3
- package/dist/src/types/viewContext.d.ts +18 -2
- package/dist/src/utils/arrayUtils.d.ts +11 -0
- package/dist/src/utils/arrayUtils.d.ts.map +1 -1
- package/dist/src/utils/arrayUtils.js +23 -0
- package/dist/src/utils/suspension.d.ts +17 -0
- package/dist/src/utils/suspension.d.ts.map +1 -0
- package/dist/src/utils/suspension.js +41 -0
- package/dist/src/view/axisGridView.d.ts.map +1 -1
- package/dist/src/view/axisGridView.js +1 -4
- package/dist/src/view/axisView.d.ts +18 -2
- package/dist/src/view/axisView.d.ts.map +1 -1
- package/dist/src/view/axisView.js +180 -75
- package/dist/src/view/concatView.d.ts +10 -2
- package/dist/src/view/concatView.d.ts.map +1 -1
- package/dist/src/view/concatView.js +46 -9
- package/dist/src/view/containerMutationHelper.d.ts +20 -1
- package/dist/src/view/containerMutationHelper.d.ts.map +1 -1
- package/dist/src/view/containerMutationHelper.js +196 -33
- package/dist/src/view/facetView.d.ts +1 -1
- package/dist/src/view/gridView/gridChild.d.ts +54 -4
- package/dist/src/view/gridView/gridChild.d.ts.map +1 -1
- package/dist/src/view/gridView/gridChild.js +301 -120
- package/dist/src/view/gridView/gridChildLegends.d.ts +57 -0
- package/dist/src/view/gridView/gridChildLegends.d.ts.map +1 -0
- package/dist/src/view/gridView/gridChildLegends.js +503 -0
- package/dist/src/view/gridView/gridView.d.ts +25 -0
- package/dist/src/view/gridView/gridView.d.ts.map +1 -1
- package/dist/src/view/gridView/gridView.js +490 -78
- package/dist/src/view/gridView/legendLayout.d.ts +30 -0
- package/dist/src/view/gridView/legendLayout.d.ts.map +1 -0
- package/dist/src/view/gridView/legendLayout.js +115 -0
- package/dist/src/view/gridView/scrollbar.d.ts.map +1 -1
- package/dist/src/view/gridView/scrollbar.js +1 -4
- package/dist/src/view/gridView/selectionRect.d.ts.map +1 -1
- package/dist/src/view/gridView/selectionRect.js +1 -4
- package/dist/src/view/gridView/separatorView.d.ts.map +1 -1
- package/dist/src/view/gridView/separatorView.js +1 -4
- package/dist/src/view/layerView.d.ts +9 -2
- package/dist/src/view/layerView.d.ts.map +1 -1
- package/dist/src/view/layerView.js +18 -1
- package/dist/src/view/layout/flexLayout.d.ts +20 -4
- package/dist/src/view/layout/flexLayout.d.ts.map +1 -1
- package/dist/src/view/layout/flexLayout.js +331 -31
- package/dist/src/view/layout/rectangle.d.ts +14 -0
- package/dist/src/view/layout/rectangle.d.ts.map +1 -1
- package/dist/src/view/layout/rectangle.js +40 -0
- package/dist/src/view/legend/legendEntries.d.ts +20 -0
- package/dist/src/view/legend/legendEntries.d.ts.map +1 -0
- package/dist/src/view/legend/legendEntries.js +21 -0
- package/dist/src/view/legendView.d.ts +137 -0
- package/dist/src/view/legendView.d.ts.map +1 -0
- package/dist/src/view/legendView.js +1654 -0
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +26 -4
- package/dist/src/view/renderingContext/clipOptions.d.ts +44 -0
- package/dist/src/view/renderingContext/clipOptions.d.ts.map +1 -0
- package/dist/src/view/renderingContext/clipOptions.js +140 -0
- package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/simpleViewRenderingContext.js +12 -1
- package/dist/src/view/resolutionPlanner.d.ts +2 -1
- package/dist/src/view/resolutionPlanner.d.ts.map +1 -1
- package/dist/src/view/resolutionPlanner.js +89 -25
- package/dist/src/view/testUtils.d.ts +4 -2
- package/dist/src/view/testUtils.d.ts.map +1 -1
- package/dist/src/view/testUtils.js +60 -7
- package/dist/src/view/titleView.d.ts +37 -0
- package/dist/src/view/titleView.d.ts.map +1 -0
- package/dist/src/view/titleView.js +584 -0
- package/dist/src/view/unitView.d.ts +3 -3
- package/dist/src/view/unitView.d.ts.map +1 -1
- package/dist/src/view/unitView.js +3 -2
- package/dist/src/view/view.d.ts +25 -24
- package/dist/src/view/view.d.ts.map +1 -1
- package/dist/src/view/view.js +126 -16
- package/dist/src/view/viewChrome.d.ts +33 -0
- package/dist/src/view/viewChrome.d.ts.map +1 -0
- package/dist/src/view/viewChrome.js +64 -0
- package/dist/src/view/viewFactory.d.ts +2 -5
- package/dist/src/view/viewFactory.d.ts.map +1 -1
- package/dist/src/view/viewFactory.js +1 -2
- package/dist/src/view/viewIdentityRegistry.d.ts +37 -0
- package/dist/src/view/viewIdentityRegistry.d.ts.map +1 -0
- package/dist/src/view/viewIdentityRegistry.js +71 -0
- package/dist/src/view/viewMutationAcidTestUtils.d.ts +112 -0
- package/dist/src/view/viewMutationAcidTestUtils.d.ts.map +1 -0
- package/dist/src/view/viewMutationAcidTestUtils.js +234 -0
- package/dist/src/view/viewMutationApi.d.ts +42 -0
- package/dist/src/view/viewMutationApi.d.ts.map +1 -0
- package/dist/src/view/viewMutationApi.js +811 -0
- package/dist/src/view/viewSelectors.d.ts +11 -9
- package/dist/src/view/viewSelectors.d.ts.map +1 -1
- package/dist/src/view/viewSelectors.js +28 -17
- package/package.json +4 -4
- package/dist/bundle/esm-CuMSzCHy.js +0 -298
- package/dist/bundle/esm-DAnOffpD.js +0 -1426
- package/dist/bundle/esm-DMXpJXM4.js +0 -369
- package/dist/bundle/esm-DNtC3H80.js +0 -121
- package/dist/src/view/title.d.ts +0 -13
- package/dist/src/view/title.d.ts.map +0 -1
- package/dist/src/view/title.js +0 -154
- /package/dist/bundle/{AbortablePromiseCache-3gHJdF3E.js → AbortablePromiseCache-BTmAcN-t.js} +0 -0
- /package/dist/bundle/{esm-CuVa5T98.js → esm-VvpZ9hsq.js} +0 -0
- /package/dist/bundle/{chunk-DmhlhrBa.js → rolldown-runtime-Dy4uBu1J.js} +0 -0
|
@@ -43,6 +43,8 @@ uniform View {
|
|
|
43
43
|
mediump vec2 uViewScale;
|
|
44
44
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
45
45
|
mediump vec2 uViewportSize;
|
|
46
|
+
mediump vec4 uLogicalVisibleRect;
|
|
47
|
+
lowp vec2 uCullByVisibleRange;
|
|
46
48
|
lowp float uDevicePixelRatio;
|
|
47
49
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
48
50
|
// that is rendered with the specified opacity.
|
|
@@ -71,6 +73,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
71
73
|
return pixelsToNdc(vec2(x, y));
|
|
72
74
|
}
|
|
73
75
|
|
|
76
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
77
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
78
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
79
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
80
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
81
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
82
|
+
pos.y > uLogicalVisibleRect.w));
|
|
83
|
+
}
|
|
84
|
+
|
|
74
85
|
float linearstep(float edge0, float edge1, float x) {
|
|
75
86
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
76
87
|
}
|
|
@@ -309,6 +320,8 @@ uniform View {
|
|
|
309
320
|
mediump vec2 uViewScale;
|
|
310
321
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
311
322
|
mediump vec2 uViewportSize;
|
|
323
|
+
mediump vec4 uLogicalVisibleRect;
|
|
324
|
+
lowp vec2 uCullByVisibleRange;
|
|
312
325
|
lowp float uDevicePixelRatio;
|
|
313
326
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
314
327
|
// that is rendered with the specified opacity.
|
|
@@ -337,6 +350,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
337
350
|
return pixelsToNdc(vec2(x, y));
|
|
338
351
|
}
|
|
339
352
|
|
|
353
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
354
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
355
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
356
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
357
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
358
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
359
|
+
pos.y > uLogicalVisibleRect.w));
|
|
360
|
+
}
|
|
361
|
+
|
|
340
362
|
float linearstep(float edge0, float edge1, float x) {
|
|
341
363
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
342
364
|
}
|
|
@@ -996,8 +1018,17 @@ void main(void) {
|
|
|
996
1018
|
|
|
997
1019
|
float size = getScaled_size();
|
|
998
1020
|
vec2 pos = vec2(getScaled_x(), getScaled_y()) + getDxDy();
|
|
1021
|
+
vec2 facetedPos = applySampleFacet(pos);
|
|
1022
|
+
|
|
1023
|
+
#ifdef VISIBLE_RANGE_CULLING
|
|
1024
|
+
if (isOutsideVisibleRange(facetedPos)) {
|
|
1025
|
+
gl_PointSize = 0.0;
|
|
1026
|
+
gl_Position = vec4(100.0, 0.0, 0.0, 0.0);
|
|
1027
|
+
return;
|
|
1028
|
+
}
|
|
1029
|
+
#endif
|
|
999
1030
|
|
|
1000
|
-
gl_Position = unitToNdc(
|
|
1031
|
+
gl_Position = unitToNdc(facetedPos);
|
|
1001
1032
|
|
|
1002
1033
|
float strokeWidth = getScaled_strokeWidth();
|
|
1003
1034
|
|
|
@@ -1115,6 +1146,8 @@ uniform View {
|
|
|
1115
1146
|
mediump vec2 uViewScale;
|
|
1116
1147
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
1117
1148
|
mediump vec2 uViewportSize;
|
|
1149
|
+
mediump vec4 uLogicalVisibleRect;
|
|
1150
|
+
lowp vec2 uCullByVisibleRange;
|
|
1118
1151
|
lowp float uDevicePixelRatio;
|
|
1119
1152
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
1120
1153
|
// that is rendered with the specified opacity.
|
|
@@ -1143,6 +1176,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
1143
1176
|
return pixelsToNdc(vec2(x, y));
|
|
1144
1177
|
}
|
|
1145
1178
|
|
|
1179
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
1180
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
1181
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
1182
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
1183
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
1184
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
1185
|
+
pos.y > uLogicalVisibleRect.w));
|
|
1186
|
+
}
|
|
1187
|
+
|
|
1146
1188
|
float linearstep(float edge0, float edge1, float x) {
|
|
1147
1189
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
1148
1190
|
}
|
|
@@ -1293,6 +1335,8 @@ uniform View {
|
|
|
1293
1335
|
mediump vec2 uViewScale;
|
|
1294
1336
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
1295
1337
|
mediump vec2 uViewportSize;
|
|
1338
|
+
mediump vec4 uLogicalVisibleRect;
|
|
1339
|
+
lowp vec2 uCullByVisibleRange;
|
|
1296
1340
|
lowp float uDevicePixelRatio;
|
|
1297
1341
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
1298
1342
|
// that is rendered with the specified opacity.
|
|
@@ -1321,6 +1365,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
1321
1365
|
return pixelsToNdc(vec2(x, y));
|
|
1322
1366
|
}
|
|
1323
1367
|
|
|
1368
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
1369
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
1370
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
1371
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
1372
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
1373
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
1374
|
+
pos.y > uLogicalVisibleRect.w));
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1324
1377
|
float linearstep(float edge0, float edge1, float x) {
|
|
1325
1378
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
1326
1379
|
}
|
|
@@ -2199,6 +2252,8 @@ uniform View {
|
|
|
2199
2252
|
mediump vec2 uViewScale;
|
|
2200
2253
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
2201
2254
|
mediump vec2 uViewportSize;
|
|
2255
|
+
mediump vec4 uLogicalVisibleRect;
|
|
2256
|
+
lowp vec2 uCullByVisibleRange;
|
|
2202
2257
|
lowp float uDevicePixelRatio;
|
|
2203
2258
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
2204
2259
|
// that is rendered with the specified opacity.
|
|
@@ -2227,6 +2282,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
2227
2282
|
return pixelsToNdc(vec2(x, y));
|
|
2228
2283
|
}
|
|
2229
2284
|
|
|
2285
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
2286
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
2287
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
2288
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
2289
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
2290
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
2291
|
+
pos.y > uLogicalVisibleRect.w));
|
|
2292
|
+
}
|
|
2293
|
+
|
|
2230
2294
|
float linearstep(float edge0, float edge1, float x) {
|
|
2231
2295
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
2232
2296
|
}
|
|
@@ -2471,6 +2535,8 @@ uniform View {
|
|
|
2471
2535
|
mediump vec2 uViewScale;
|
|
2472
2536
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
2473
2537
|
mediump vec2 uViewportSize;
|
|
2538
|
+
mediump vec4 uLogicalVisibleRect;
|
|
2539
|
+
lowp vec2 uCullByVisibleRange;
|
|
2474
2540
|
lowp float uDevicePixelRatio;
|
|
2475
2541
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
2476
2542
|
// that is rendered with the specified opacity.
|
|
@@ -2499,6 +2565,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
2499
2565
|
return pixelsToNdc(vec2(x, y));
|
|
2500
2566
|
}
|
|
2501
2567
|
|
|
2568
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
2569
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
2570
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
2571
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
2572
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
2573
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
2574
|
+
pos.y > uLogicalVisibleRect.w));
|
|
2575
|
+
}
|
|
2576
|
+
|
|
2502
2577
|
float linearstep(float edge0, float edge1, float x) {
|
|
2503
2578
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
2504
2579
|
}
|
|
@@ -3195,8 +3270,17 @@ void main(void) {
|
|
|
3195
3270
|
|
|
3196
3271
|
float size = getScaled_size();
|
|
3197
3272
|
vec2 pos = vec2(getScaled_x(), getScaled_y()) + getDxDy();
|
|
3273
|
+
vec2 facetedPos = applySampleFacet(pos);
|
|
3274
|
+
|
|
3275
|
+
#ifdef VISIBLE_RANGE_CULLING
|
|
3276
|
+
if (isOutsideVisibleRange(facetedPos)) {
|
|
3277
|
+
gl_PointSize = 0.0;
|
|
3278
|
+
gl_Position = vec4(100.0, 0.0, 0.0, 0.0);
|
|
3279
|
+
return;
|
|
3280
|
+
}
|
|
3281
|
+
#endif
|
|
3198
3282
|
|
|
3199
|
-
gl_Position = unitToNdc(
|
|
3283
|
+
gl_Position = unitToNdc(facetedPos);
|
|
3200
3284
|
|
|
3201
3285
|
float strokeWidth = getScaled_strokeWidth();
|
|
3202
3286
|
|
|
@@ -3310,6 +3394,8 @@ uniform View {
|
|
|
3310
3394
|
mediump vec2 uViewScale;
|
|
3311
3395
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
3312
3396
|
mediump vec2 uViewportSize;
|
|
3397
|
+
mediump vec4 uLogicalVisibleRect;
|
|
3398
|
+
lowp vec2 uCullByVisibleRange;
|
|
3313
3399
|
lowp float uDevicePixelRatio;
|
|
3314
3400
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
3315
3401
|
// that is rendered with the specified opacity.
|
|
@@ -3338,6 +3424,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
3338
3424
|
return pixelsToNdc(vec2(x, y));
|
|
3339
3425
|
}
|
|
3340
3426
|
|
|
3427
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
3428
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
3429
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
3430
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
3431
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
3432
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
3433
|
+
pos.y > uLogicalVisibleRect.w));
|
|
3434
|
+
}
|
|
3435
|
+
|
|
3341
3436
|
float linearstep(float edge0, float edge1, float x) {
|
|
3342
3437
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
3343
3438
|
}
|
|
@@ -3576,6 +3671,8 @@ uniform View {
|
|
|
3576
3671
|
mediump vec2 uViewScale;
|
|
3577
3672
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
3578
3673
|
mediump vec2 uViewportSize;
|
|
3674
|
+
mediump vec4 uLogicalVisibleRect;
|
|
3675
|
+
lowp vec2 uCullByVisibleRange;
|
|
3579
3676
|
lowp float uDevicePixelRatio;
|
|
3580
3677
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
3581
3678
|
// that is rendered with the specified opacity.
|
|
@@ -3604,6 +3701,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
3604
3701
|
return pixelsToNdc(vec2(x, y));
|
|
3605
3702
|
}
|
|
3606
3703
|
|
|
3704
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
3705
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
3706
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
3707
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
3708
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
3709
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
3710
|
+
pos.y > uLogicalVisibleRect.w));
|
|
3711
|
+
}
|
|
3712
|
+
|
|
3607
3713
|
float linearstep(float edge0, float edge1, float x) {
|
|
3608
3714
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
3609
3715
|
}
|
|
@@ -4261,8 +4367,17 @@ void main(void) {
|
|
|
4261
4367
|
|
|
4262
4368
|
float size = getScaled_size();
|
|
4263
4369
|
vec2 pos = vec2(getScaled_x(), getScaled_y()) + getDxDy();
|
|
4370
|
+
vec2 facetedPos = applySampleFacet(pos);
|
|
4264
4371
|
|
|
4265
|
-
|
|
4372
|
+
#ifdef VISIBLE_RANGE_CULLING
|
|
4373
|
+
if (isOutsideVisibleRange(facetedPos)) {
|
|
4374
|
+
gl_PointSize = 0.0;
|
|
4375
|
+
gl_Position = vec4(100.0, 0.0, 0.0, 0.0);
|
|
4376
|
+
return;
|
|
4377
|
+
}
|
|
4378
|
+
#endif
|
|
4379
|
+
|
|
4380
|
+
gl_Position = unitToNdc(facetedPos);
|
|
4266
4381
|
|
|
4267
4382
|
float strokeWidth = getScaled_strokeWidth();
|
|
4268
4383
|
|
|
@@ -4385,6 +4500,8 @@ uniform View {
|
|
|
4385
4500
|
mediump vec2 uViewScale;
|
|
4386
4501
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
4387
4502
|
mediump vec2 uViewportSize;
|
|
4503
|
+
mediump vec4 uLogicalVisibleRect;
|
|
4504
|
+
lowp vec2 uCullByVisibleRange;
|
|
4388
4505
|
lowp float uDevicePixelRatio;
|
|
4389
4506
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
4390
4507
|
// that is rendered with the specified opacity.
|
|
@@ -4413,6 +4530,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
4413
4530
|
return pixelsToNdc(vec2(x, y));
|
|
4414
4531
|
}
|
|
4415
4532
|
|
|
4533
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
4534
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
4535
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
4536
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
4537
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
4538
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
4539
|
+
pos.y > uLogicalVisibleRect.w));
|
|
4540
|
+
}
|
|
4541
|
+
|
|
4416
4542
|
float linearstep(float edge0, float edge1, float x) {
|
|
4417
4543
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
4418
4544
|
}
|
|
@@ -4770,6 +4896,8 @@ uniform View {
|
|
|
4770
4896
|
mediump vec2 uViewScale;
|
|
4771
4897
|
/** Size of the logical viewport in pixels, i.e., the view */
|
|
4772
4898
|
mediump vec2 uViewportSize;
|
|
4899
|
+
mediump vec4 uLogicalVisibleRect;
|
|
4900
|
+
lowp vec2 uCullByVisibleRange;
|
|
4773
4901
|
lowp float uDevicePixelRatio;
|
|
4774
4902
|
// TODO: Views with opacity less than 1.0 should be rendered into a texture
|
|
4775
4903
|
// that is rendered with the specified opacity.
|
|
@@ -4798,6 +4926,15 @@ vec4 pixelsToNdc(float x, float y) {
|
|
|
4798
4926
|
return pixelsToNdc(vec2(x, y));
|
|
4799
4927
|
}
|
|
4800
4928
|
|
|
4929
|
+
bool isOutsideVisibleRange(vec2 pos) {
|
|
4930
|
+
return (uCullByVisibleRange.x > 0.5 &&
|
|
4931
|
+
(pos.x < uLogicalVisibleRect.x ||
|
|
4932
|
+
pos.x > uLogicalVisibleRect.z)) ||
|
|
4933
|
+
(uCullByVisibleRange.y > 0.5 &&
|
|
4934
|
+
(pos.y < uLogicalVisibleRect.y ||
|
|
4935
|
+
pos.y > uLogicalVisibleRect.w));
|
|
4936
|
+
}
|
|
4937
|
+
|
|
4801
4938
|
float linearstep(float edge0, float edge1, float x) {
|
|
4802
4939
|
return clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
|
4803
4940
|
}
|
package/dist/src/marks/mark.d.ts
CHANGED
|
@@ -1,6 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{ width: number, height: number }} canvasSize
|
|
3
|
+
* @param {Rectangle} coords
|
|
4
|
+
* @param {ClipOptions | undefined} clip
|
|
5
|
+
* @param {boolean} [clipSelf]
|
|
6
|
+
*/
|
|
7
|
+
export function createViewportScope(canvasSize: {
|
|
8
|
+
width: number;
|
|
9
|
+
height: number;
|
|
10
|
+
}, coords: Rectangle, clip: ClipOptions | undefined, clipSelf?: boolean): {
|
|
11
|
+
requiresScissor: boolean;
|
|
12
|
+
coords: import("../view/layout/rectangle.js").default;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* @param {Rectangle} coords
|
|
16
|
+
* @param {ClipOptions | undefined} clip
|
|
17
|
+
* @returns {[number, number, number, number]}
|
|
18
|
+
*/
|
|
19
|
+
export function createLogicalVisibleRect(coords: Rectangle, clip: ClipOptions | undefined): [number, number, number, number];
|
|
1
20
|
export const SAMPLE_FACET_UNIFORM: "SAMPLE_FACET_UNIFORM";
|
|
2
21
|
export const SAMPLE_FACET_TEXTURE: "SAMPLE_FACET_TEXTURE";
|
|
3
22
|
export const SELECTION_TEXTURE_PREFIX: "uSelectionTexture_";
|
|
23
|
+
/**
|
|
24
|
+
* @typedef {import("../types/rendering.js").ClipOptions} ClipOptions
|
|
25
|
+
* @typedef {import("../view/layout/rectangle.js").default} Rectangle
|
|
26
|
+
*/
|
|
4
27
|
/**
|
|
5
28
|
*
|
|
6
29
|
* @typedef {import("../types/rendering.js").RenderingOptions} RenderingOptions
|
|
@@ -15,6 +38,13 @@ export const SELECTION_TEXTURE_PREFIX: "uSelectionTexture_";
|
|
|
15
38
|
*
|
|
16
39
|
* @typedef {"intersects" | "encloses" | "endpoints"} HitTestMode
|
|
17
40
|
*/
|
|
41
|
+
/**
|
|
42
|
+
* @typedef {object} MarkDebugState
|
|
43
|
+
* @prop {boolean} markUniformsAltered
|
|
44
|
+
* @prop {number | undefined} vertexCount
|
|
45
|
+
* @prop {number | undefined} allocatedVertices
|
|
46
|
+
* @prop {Record<string, any>} properties
|
|
47
|
+
*/
|
|
18
48
|
/**
|
|
19
49
|
* @template {MarkProps} [P=MarkProps]
|
|
20
50
|
*/
|
|
@@ -144,7 +174,7 @@ export default class Mark<P extends import("../spec/mark.js").MarkProps = import
|
|
|
144
174
|
*/
|
|
145
175
|
get encoding(): import("../spec/channel.js").Encoding;
|
|
146
176
|
getContext(): import("../types/viewContext.js").default;
|
|
147
|
-
getType(): "
|
|
177
|
+
getType(): "rect" | "point" | "rule" | "tick" | "text" | "link";
|
|
148
178
|
initializeData(): void;
|
|
149
179
|
/**
|
|
150
180
|
* Initialize encoders that encode fields of the data (or constants) to
|
|
@@ -159,7 +189,7 @@ export default class Mark<P extends import("../spec/mark.js").MarkProps = import
|
|
|
159
189
|
* Update WebGL buffers from the data
|
|
160
190
|
*/
|
|
161
191
|
updateGraphicsData(): void;
|
|
162
|
-
getSampleFacetMode(): "
|
|
192
|
+
getSampleFacetMode(): "SAMPLE_FACET_TEXTURE" | "SAMPLE_FACET_UNIFORM";
|
|
163
193
|
/**
|
|
164
194
|
*
|
|
165
195
|
* @param {string} vertexShader
|
|
@@ -222,6 +252,10 @@ export default class Mark<P extends import("../spec/mark.js").MarkProps = import
|
|
|
222
252
|
* Returns true if this mark instance participates in picking.
|
|
223
253
|
*/
|
|
224
254
|
isPickingParticipant(): boolean;
|
|
255
|
+
/**
|
|
256
|
+
* @returns {MarkDebugState}
|
|
257
|
+
*/
|
|
258
|
+
getDebugState(): MarkDebugState;
|
|
225
259
|
/**
|
|
226
260
|
* @protected
|
|
227
261
|
*/
|
|
@@ -265,13 +299,14 @@ export default class Mark<P extends import("../spec/mark.js").MarkProps = import
|
|
|
265
299
|
* @param {{width: number, height: number}} canvasSize Size of the canvas in logical pixels
|
|
266
300
|
* @param {number} dpr Device pixel ratio
|
|
267
301
|
* @param {import("../view/layout/rectangle.js").default} coords
|
|
268
|
-
* @param {
|
|
302
|
+
* @param {ClipOptions} [clip]
|
|
303
|
+
* @param {ClipOptions} [cullClip]
|
|
269
304
|
* @returns {boolean} true if the viewport is renderable (size > 0)
|
|
270
305
|
*/
|
|
271
306
|
setViewport(canvasSize: {
|
|
272
307
|
width: number;
|
|
273
308
|
height: number;
|
|
274
|
-
}, dpr: number, coords: import("../view/layout/rectangle.js").default,
|
|
309
|
+
}, dpr: number, coords: import("../view/layout/rectangle.js").default, clip?: ClipOptions, cullClip?: ClipOptions): boolean;
|
|
275
310
|
/**
|
|
276
311
|
* Finds a datum that overlaps the given value on the x domain.
|
|
277
312
|
* The result is unspecified if multiple data are found.
|
|
@@ -285,6 +320,8 @@ export default class Mark<P extends import("../spec/mark.js").MarkProps = import
|
|
|
285
320
|
findDatumAt(facetId: string, x: import("../spec/channel.js").Scalar): any;
|
|
286
321
|
#private;
|
|
287
322
|
}
|
|
323
|
+
export type ClipOptions = import("../types/rendering.js").ClipOptions;
|
|
324
|
+
export type Rectangle = import("../view/layout/rectangle.js").default;
|
|
288
325
|
export type RenderingOptions = import("../types/rendering.js").RenderingOptions;
|
|
289
326
|
export type _MarkRenderingOptions = {
|
|
290
327
|
/**
|
|
@@ -296,6 +333,12 @@ export type _MarkRenderingOptions = {
|
|
|
296
333
|
export type MarkRenderingOptions = RenderingOptions & _MarkRenderingOptions;
|
|
297
334
|
export type DrawFunction = (offset: number, count: number) => any;
|
|
298
335
|
export type HitTestMode = "intersects" | "encloses" | "endpoints";
|
|
336
|
+
export type MarkDebugState = {
|
|
337
|
+
markUniformsAltered: boolean;
|
|
338
|
+
vertexCount: number | undefined;
|
|
339
|
+
allocatedVertices: number | undefined;
|
|
340
|
+
properties: Record<string, any>;
|
|
341
|
+
};
|
|
299
342
|
/**
|
|
300
343
|
* @augments {InternMap<K, import("../gl/dataToVertices.js").RangeEntry>}
|
|
301
344
|
* @template K
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark.d.ts","sourceRoot":"","sources":["../../../src/marks/mark.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mark.d.ts","sourceRoot":"","sources":["../../../src/marks/mark.js"],"names":[],"mappings":"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"}
|