@webviz/subsurface-viewer 0.0.1-alpha.1 → 0.0.2-alpha.2
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/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +5 -2
- package/package.json +6 -3
- package/dist/DashSubsurfaceViewer.d.ts +0 -56
- package/dist/DashSubsurfaceViewer.js +0 -160
- package/dist/DashSubsurfaceViewer.js.map +0 -1
- package/src/DashSubsurfaceViewer.tsx +0 -270
- package/src/SubsurfaceViewer.stories.tsx +0 -449
- package/src/SubsurfaceViewer.test.tsx +0 -98
- package/src/SubsurfaceViewer.tsx +0 -356
- package/src/__snapshots__/SubsurfaceViewer.test.tsx.snap +0 -178
- package/src/assets/glTF/north_arrow/scene.bin +0 -0
- package/src/assets/glTF/north_arrow/scene.gltf +0 -315
- package/src/assets/glTF/north_arrow/textures/Arrow5_baseColor.png +0 -0
- package/src/assets/glTF/north_arrow/textures/Arrow5_metallicRoughness.png +0 -0
- package/src/assets/glTF/north_arrow/textures/Arrow5_normal.png +0 -0
- package/src/components/ColorLegend.test.tsx +0 -32
- package/src/components/ColorLegend.tsx +0 -80
- package/src/components/ColorLegends.test.tsx +0 -97
- package/src/components/ColorLegends.tsx +0 -46
- package/src/components/DistanceScale.stories.tsx +0 -28
- package/src/components/DistanceScale.test.tsx +0 -36
- package/src/components/DistanceScale.tsx +0 -84
- package/src/components/InfoCard.test.tsx +0 -110
- package/src/components/InfoCard.tsx +0 -263
- package/src/components/Map.test.tsx +0 -142
- package/src/components/Map.tsx +0 -1435
- package/src/components/StatusIndicator.test.tsx +0 -14
- package/src/components/StatusIndicator.tsx +0 -38
- package/src/components/ViewAnnotation.tsx +0 -16
- package/src/components/ViewFooter.test.tsx +0 -12
- package/src/components/ViewFooter.tsx +0 -30
- package/src/components/__snapshots__/ColorLegends.test.tsx.snap +0 -15
- package/src/components/__snapshots__/DistanceScale.test.tsx.snap +0 -33
- package/src/components/__snapshots__/InfoCard.test.tsx.snap +0 -561
- package/src/components/__snapshots__/Map.test.tsx.snap +0 -119
- package/src/components/__snapshots__/StatusIndicator.test.tsx.snap +0 -3
- package/src/components/__snapshots__/ViewFooter.test.tsx.snap +0 -7
- package/src/components/settings/DrawModeSelector.test.tsx +0 -45
- package/src/components/settings/DrawModeSelector.tsx +0 -58
- package/src/components/settings/DrawModeSelector_performance.test.tsx +0 -35
- package/src/components/settings/LayerProperty.test.tsx +0 -35
- package/src/components/settings/LayerProperty.tsx +0 -153
- package/src/components/settings/LayerProperty_performance.test.tsx +0 -39
- package/src/components/settings/LayerSettingsButton.test.tsx +0 -133
- package/src/components/settings/LayerSettingsButton.tsx +0 -95
- package/src/components/settings/LayersButton.test.tsx +0 -102
- package/src/components/settings/LayersButton.tsx +0 -97
- package/src/components/settings/NumericInput.test.tsx +0 -25
- package/src/components/settings/NumericInput.tsx +0 -67
- package/src/components/settings/Settings.tsx +0 -71
- package/src/components/settings/SliderInput.test.tsx +0 -28
- package/src/components/settings/SliderInput.tsx +0 -71
- package/src/components/settings/ToggleButton.test.tsx +0 -25
- package/src/components/settings/ToggleButton.tsx +0 -53
- package/src/components/settings/__snapshots__/DrawModeSelector.test.tsx.snap +0 -124
- package/src/components/settings/__snapshots__/LayerProperty.test.tsx.snap +0 -124
- package/src/components/settings/__snapshots__/LayerSettingsButton.test.tsx.snap +0 -36
- package/src/components/settings/__snapshots__/LayersButton.test.tsx.snap +0 -83
- package/src/components/settings/__snapshots__/NumericInput.test.tsx.snap +0 -123
- package/src/components/settings/__snapshots__/SliderInput.test.tsx.snap +0 -244
- package/src/components/settings/__snapshots__/ToggleButton.test.tsx.snap +0 -182
- package/src/custom.d.ts +0 -9
- package/src/index.ts +0 -5
- package/src/inputSchema/ColorTables.json +0 -51
- package/src/inputSchema/FaultPolygons.json +0 -80
- package/src/inputSchema/Grid.json +0 -39
- package/src/inputSchema/PieChart.json +0 -72
- package/src/inputSchema/WellLog.json +0 -126
- package/src/inputSchema/WellLogTemplate.json +0 -136
- package/src/inputSchema/WellLogs.json +0 -5
- package/src/inputSchema/Wells.json +0 -106
- package/src/inputSchema/schemaValidationUtil.tsx +0 -55
- package/src/inputSchema/validator.tsx +0 -72
- package/src/inputSchema/wellCompletions.json +0 -108
- package/src/layers/BoxSelectionLayer/boxSelectionLayer.stories.tsx +0 -172
- package/src/layers/BoxSelectionLayer/boxSelectionLayer.tsx +0 -136
- package/src/layers/axes/axes-fragment.glsl.ts +0 -15
- package/src/layers/axes/axesLayer.stories.tsx +0 -87
- package/src/layers/axes/axesLayer.ts +0 -692
- package/src/layers/axes/boxLayer.ts +0 -71
- package/src/layers/axes/grid-vertex.glsl.ts +0 -14
- package/src/layers/axes2d/axes2DLayer.stories.tsx +0 -150
- package/src/layers/axes2d/axes2DLayer.ts +0 -841
- package/src/layers/axes2d/font-atlas.png +0 -0
- package/src/layers/axes2d/label-fragment.glsl.js +0 -37
- package/src/layers/axes2d/label-vertex.glsl.js +0 -20
- package/src/layers/axes2d/line-fragment.glsl.js +0 -14
- package/src/layers/axes2d/line-vertex.glsl.js +0 -13
- package/src/layers/colormap/colormap.fs.glsl.ts +0 -42
- package/src/layers/colormap/colormapLayer.ts +0 -247
- package/src/layers/drawing/drawingLayer.tsx +0 -256
- package/src/layers/fault_polygons/faultPolygonsLayer.ts +0 -54
- package/src/layers/grid3d/fragment.fs.glsl.ts +0 -109
- package/src/layers/grid3d/fragment_lines.glsl.ts +0 -21
- package/src/layers/grid3d/grid3dLayer.stories.tsx +0 -172
- package/src/layers/grid3d/grid3dLayer.ts +0 -248
- package/src/layers/grid3d/privateLayer.ts +0 -292
- package/src/layers/grid3d/vertex.glsl.ts +0 -43
- package/src/layers/grid3d/vertex_lines.glsl.ts +0 -15
- package/src/layers/grid3d/webworker.ts +0 -173
- package/src/layers/hillshading2d/hillshading2d.fs.glsl.ts +0 -62
- package/src/layers/hillshading2d/hillshading2dLayer.ts +0 -172
- package/src/layers/index.ts +0 -35
- package/src/layers/intersection/intersectionView.stories.tsx +0 -294
- package/src/layers/intersection/unfoldedGeoJsonLayer.ts +0 -92
- package/src/layers/map/fragment.fs.glsl.ts +0 -127
- package/src/layers/map/fragment_lines.glsl.ts +0 -21
- package/src/layers/map/mapLayer.stories.tsx +0 -1369
- package/src/layers/map/mapLayer.ts +0 -470
- package/src/layers/map/privateMapLayer.ts +0 -317
- package/src/layers/map/vertex.glsl.ts +0 -45
- package/src/layers/map/vertex_lines.glsl.ts +0 -15
- package/src/layers/map/webworker.ts +0 -479
- package/src/layers/northarrow/northArrow.stories.tsx +0 -108
- package/src/layers/northarrow/northArrow3DLayer.ts +0 -204
- package/src/layers/northarrow/northarrow-fragment.glsl.js +0 -14
- package/src/layers/northarrow/northarrow-vertex.glsl.js +0 -13
- package/src/layers/piechart/fragment.glsl.js +0 -42
- package/src/layers/piechart/pieChartLayer.ts +0 -246
- package/src/layers/piechart/vertex.glsl.js +0 -42
- package/src/layers/points/pointsLayer.stories.tsx +0 -141
- package/src/layers/points/pointsLayer.ts +0 -143
- package/src/layers/polylines/polylinesLayer.stories.tsx +0 -144
- package/src/layers/polylines/polylinesLayer.ts +0 -263
- package/src/layers/selectable_geojson/selectableGeoJsonLayer.ts +0 -25
- package/src/layers/shader_modules/decoder.fs.glsl.ts +0 -41
- package/src/layers/shader_modules/decoder.ts +0 -46
- package/src/layers/shader_modules/index.ts +0 -1
- package/src/layers/terrain/map3DLayer.stories.tsx +0 -340
- package/src/layers/terrain/map3DLayer.ts +0 -556
- package/src/layers/terrain/terrainMapLayer.ts +0 -334
- package/src/layers/terrain/terrainmap.fs.glsl.ts +0 -134
- package/src/layers/triangle/fragment.fs.glsl.ts +0 -126
- package/src/layers/triangle/fragment_lines.glsl.ts +0 -21
- package/src/layers/triangle/privateTriangleLayer.ts +0 -203
- package/src/layers/triangle/test_data/surfacePoints.ts +0 -4344
- package/src/layers/triangle/test_data/surfaceTriangles.ts +0 -7392
- package/src/layers/triangle/triangleLayer.stories.tsx +0 -191
- package/src/layers/triangle/triangleLayer.ts +0 -273
- package/src/layers/triangle/vertex.glsl.ts +0 -35
- package/src/layers/triangle/vertex_lines.glsl.ts +0 -15
- package/src/layers/triangle/webworker.ts +0 -165
- package/src/layers/utils/glsl.d.ts +0 -4
- package/src/layers/utils/layerTools.ts +0 -182
- package/src/layers/utils/propertyMapTools.ts +0 -43
- package/src/layers/wells/utils/spline.ts +0 -318
- package/src/layers/wells/wellsLayer.stories.tsx +0 -625
- package/src/layers/wells/wellsLayer.ts +0 -1377
- package/src/redux/actions.ts +0 -8
- package/src/redux/reducer.ts +0 -43
- package/src/redux/store.ts +0 -15
- package/src/redux/types.ts +0 -114
- package/src/storybook/SubsurfaceViewer.stories.jsx +0 -644
- package/src/storybook/components/InfoCard.stories.jsx +0 -39
- package/src/storybook/components/colorLegends/ContinuousLegend.stories.jsx +0 -32
- package/src/storybook/components/colorLegends/DiscreteLegend.stories.jsx +0 -33
- package/src/storybook/components/colorLegends/IndividualScaleForMap.stories.jsx +0 -99
- package/src/storybook/components/colorLegends/SingleScaleForMap.stories.jsx +0 -120
- package/src/storybook/components/settings/LayerSettingsButton.stories.jsx +0 -34
- package/src/storybook/components/settings/NumericInput.stories.jsx +0 -17
- package/src/storybook/components/settings/ToggleButton.stories.jsx +0 -16
- package/src/storybook/schemaValidation/sampleData.js +0 -177
- package/src/storybook/schemaValidation/schemaValidation.stories.jsx +0 -91
- package/src/test/TestWrapper.tsx +0 -13
- package/src/utils/configuration.ts +0 -61
- package/src/utils/fit-bounds.js +0 -85
- package/src/utils/measurement.ts +0 -61
- package/src/utils/northArrow.ts +0 -4
- package/src/utils/specExtractor.ts +0 -36
- package/src/viewports/index.js +0 -1
- package/src/viewports/intersectionViewport.ts +0 -137
- package/src/views/index.js +0 -1
- package/src/views/intersectionView.ts +0 -38
- package/tsconfig.json +0 -7
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
import { isEmpty } from "lodash";
|
|
3
|
-
import { LayerProps } from "@deck.gl/core/typed";
|
|
4
|
-
import {
|
|
5
|
-
ToggleTypeProps,
|
|
6
|
-
MenuTypeProps,
|
|
7
|
-
NumericTypeProps,
|
|
8
|
-
SliderTypeProps,
|
|
9
|
-
} from "../redux/types";
|
|
10
|
-
|
|
11
|
-
// return true if layer props are displayable as defined in ../redux/types.tsx
|
|
12
|
-
export const getPropVisibility = (layer: Record<string, unknown>): boolean => {
|
|
13
|
-
if (layer == undefined) return false;
|
|
14
|
-
|
|
15
|
-
const prop_types = [
|
|
16
|
-
...MenuTypeProps,
|
|
17
|
-
...NumericTypeProps,
|
|
18
|
-
...SliderTypeProps,
|
|
19
|
-
...ToggleTypeProps,
|
|
20
|
-
];
|
|
21
|
-
const visibility = prop_types.reduce(
|
|
22
|
-
(acc, current) => acc || current.id in layer,
|
|
23
|
-
false
|
|
24
|
-
);
|
|
25
|
-
return visibility;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
// returns layer properties
|
|
29
|
-
export const getLayerProps = (
|
|
30
|
-
layers: LayerProps<unknown>[],
|
|
31
|
-
layerId: string
|
|
32
|
-
): Record<string, unknown> | null => {
|
|
33
|
-
if (!layers?.length) return null;
|
|
34
|
-
const layer_props = (layers as any[]).find((l) => l.id === layerId);
|
|
35
|
-
return isEmpty(layer_props) ? null : layer_props;
|
|
36
|
-
};
|
package/src/viewports/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as IntersectionViewport } from "./intersectionViewport";
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
import { Viewport } from "@deck.gl/core/typed";
|
|
2
|
-
import { Matrix4, clamp } from "@math.gl/core";
|
|
3
|
-
|
|
4
|
-
// The typings generated by danmarshall is for deckgl 8.1.3, typings for v8.8.3 is not available
|
|
5
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
6
|
-
// @ts-ignore
|
|
7
|
-
// Displaying in 2d view XZ plane by configuring the view matrix
|
|
8
|
-
const viewMatrix = new Matrix4().lookAt({
|
|
9
|
-
eye: [0, -1, 0],
|
|
10
|
-
up: [0, 0, 1],
|
|
11
|
-
center: [0, 0, 0],
|
|
12
|
-
});
|
|
13
|
-
|
|
14
|
-
export type Padding = {
|
|
15
|
-
left?: number;
|
|
16
|
-
right?: number;
|
|
17
|
-
top?: number;
|
|
18
|
-
bottom?: number;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
function getProjectionMatrix({
|
|
22
|
-
width,
|
|
23
|
-
height,
|
|
24
|
-
near,
|
|
25
|
-
far,
|
|
26
|
-
padding,
|
|
27
|
-
}: {
|
|
28
|
-
width: number;
|
|
29
|
-
height: number;
|
|
30
|
-
near: number;
|
|
31
|
-
far: number;
|
|
32
|
-
padding: Padding | null;
|
|
33
|
-
}) {
|
|
34
|
-
let left = -width / 2;
|
|
35
|
-
let right = width / 2;
|
|
36
|
-
let bottom = -height / 2;
|
|
37
|
-
let top = height / 2;
|
|
38
|
-
if (padding) {
|
|
39
|
-
const {
|
|
40
|
-
left: l = 0,
|
|
41
|
-
right: r = 0,
|
|
42
|
-
top: t = 0,
|
|
43
|
-
bottom: b = 0,
|
|
44
|
-
} = padding;
|
|
45
|
-
const offsetX = clamp((l + width - r) / 2, 0, width) - width / 2;
|
|
46
|
-
const offsetY = clamp((t + height - b) / 2, 0, height) - height / 2;
|
|
47
|
-
left -= offsetX;
|
|
48
|
-
right -= offsetX;
|
|
49
|
-
bottom += offsetY;
|
|
50
|
-
top += offsetY;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
return new Matrix4().ortho({
|
|
54
|
-
left,
|
|
55
|
-
right,
|
|
56
|
-
bottom,
|
|
57
|
-
top,
|
|
58
|
-
near,
|
|
59
|
-
far,
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export type IntersectionViewportOptions = {
|
|
64
|
-
/** Name of the viewport */
|
|
65
|
-
id?: string;
|
|
66
|
-
/** Left offset from the canvas edge, in pixels */
|
|
67
|
-
x?: number;
|
|
68
|
-
/** Top offset from the canvas edge, in pixels */
|
|
69
|
-
y?: number;
|
|
70
|
-
/** Viewport width in pixels */
|
|
71
|
-
width?: number;
|
|
72
|
-
/** Viewport height in pixels */
|
|
73
|
-
height?: number;
|
|
74
|
-
/** The world position at the center of the viewport. Default `[0, 0, 0]`. */
|
|
75
|
-
target?: [number, number, number] | [number, number];
|
|
76
|
-
/** The zoom level of the viewport. `zoom: 0` maps one unit distance to one pixel on screen, and increasing `zoom` by `1` scales the same object to twice as large.
|
|
77
|
-
* To apply independent zoom levels to the X and Y axes, supply an array `[zoomX, zoomY]`. Default `0`. */
|
|
78
|
-
zoom?: number | [number, number];
|
|
79
|
-
/** Padding around the viewport, in pixels. */
|
|
80
|
-
padding?: Padding | null;
|
|
81
|
-
/** Distance of near clipping plane. Default `0.1`. */
|
|
82
|
-
near?: number;
|
|
83
|
-
/** Distance of far clipping plane. Default `1000`. */
|
|
84
|
-
far?: number;
|
|
85
|
-
/** Whether to use top-left coordinates (`true`) or bottom-left coordinates (`false`). Default `true`. */
|
|
86
|
-
flipY?: boolean;
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
export default class IntersectionViewport extends Viewport {
|
|
90
|
-
constructor(props: IntersectionViewportOptions) {
|
|
91
|
-
const {
|
|
92
|
-
width,
|
|
93
|
-
height,
|
|
94
|
-
near = 0.1,
|
|
95
|
-
far = 1000,
|
|
96
|
-
zoom = 0,
|
|
97
|
-
target = [0, 0, 0],
|
|
98
|
-
padding = null,
|
|
99
|
-
flipY = true,
|
|
100
|
-
} = props;
|
|
101
|
-
const zoomX = Array.isArray(zoom) ? zoom[0] : zoom;
|
|
102
|
-
const zoomY = Array.isArray(zoom) ? zoom[1] : zoom;
|
|
103
|
-
const zoom_ = Math.min(zoomX, zoomY);
|
|
104
|
-
const scale = Math.pow(2, zoom_);
|
|
105
|
-
|
|
106
|
-
let distanceScales;
|
|
107
|
-
if (zoomX !== zoomY) {
|
|
108
|
-
const scaleX = Math.pow(2, zoomX);
|
|
109
|
-
const scaleY = Math.pow(2, zoomY);
|
|
110
|
-
|
|
111
|
-
distanceScales = {
|
|
112
|
-
unitsPerMeter: [scaleX / scale, 1, scaleY / scale],
|
|
113
|
-
metersPerUnit: [scale / scaleX, 1, scale / scaleY],
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
super({
|
|
118
|
-
...props,
|
|
119
|
-
// in case viewState contains longitude/latitude values,
|
|
120
|
-
// make sure that the base Viewport class does not treat this as a geospatial viewport
|
|
121
|
-
longitude: undefined,
|
|
122
|
-
position: target,
|
|
123
|
-
viewMatrix: viewMatrix
|
|
124
|
-
.clone()
|
|
125
|
-
.scale([scale, scale, scale * (flipY ? -1 : 1)]),
|
|
126
|
-
projectionMatrix: getProjectionMatrix({
|
|
127
|
-
width: width || 1,
|
|
128
|
-
height: height || 1,
|
|
129
|
-
padding,
|
|
130
|
-
near,
|
|
131
|
-
far,
|
|
132
|
-
}),
|
|
133
|
-
zoom: zoom_,
|
|
134
|
-
distanceScales,
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
}
|
package/src/views/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default as IntersectionView } from "./intersectionView";
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { View, OrthographicViewState } from "@deck.gl/core/typed";
|
|
2
|
-
import IntersectionViewport from "../viewports/intersectionViewport";
|
|
3
|
-
|
|
4
|
-
// IntersectionViewState and IntersectionViewProps may need to have its own implementation when defining pan and zoom controls
|
|
5
|
-
export type IntersectionViewState = OrthographicViewState;
|
|
6
|
-
|
|
7
|
-
type IntersectionViewProps = {
|
|
8
|
-
/** Distance of near clipping plane. Default `0.1`. */
|
|
9
|
-
near?: number;
|
|
10
|
-
/** Distance of far clipping plane. Default `1000`. */
|
|
11
|
-
far?: number;
|
|
12
|
-
/** Whether to use top-left coordinates (`true`) or bottom-left coordinates (`false`). Default `true`. */
|
|
13
|
-
flipY?: boolean;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
export default class IntersectionView extends View<
|
|
17
|
-
IntersectionViewState,
|
|
18
|
-
IntersectionViewProps
|
|
19
|
-
> {
|
|
20
|
-
static displayName = "IntersectionView";
|
|
21
|
-
constructor(props: IntersectionViewProps) {
|
|
22
|
-
super({
|
|
23
|
-
...props,
|
|
24
|
-
controller: false,
|
|
25
|
-
viewState: {
|
|
26
|
-
target: [275, 0, -500],
|
|
27
|
-
},
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
get ViewportType(): typeof IntersectionViewport {
|
|
32
|
-
return IntersectionViewport;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
get ControllerType(): never {
|
|
36
|
-
throw new Error("Method not implemented.");
|
|
37
|
-
}
|
|
38
|
-
}
|