@equinor/videx-3d 5.1.0-beta

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.
Files changed (235) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +120 -0
  3. package/dist/chunk-BX-cez1_.js +23 -0
  4. package/dist/chunk-CnY6Tmof.js +358 -0
  5. package/dist/chunk-MFzFdEWm.js +591 -0
  6. package/dist/chunk-iY0wQ9Z6.js +887 -0
  7. package/dist/generators.js +711 -0
  8. package/dist/main.js +8405 -0
  9. package/dist/sdk.js +610 -0
  10. package/dist/shaderLib/color-conversion.glsl +33 -0
  11. package/dist/shaderLib/colors.glsl +8 -0
  12. package/dist/shaderLib/glyphs.glsl +78 -0
  13. package/dist/shaderLib/random.glsl +3 -0
  14. package/dist/shaderLib/remap.glsl +13 -0
  15. package/dist/shaderLib/render-number.glsl +74 -0
  16. package/dist/shaderLib/render-text.glsl +66 -0
  17. package/dist/shaderLib/rotation.glsl +19 -0
  18. package/dist/shaderLib/sdf-functions.glsl +18 -0
  19. package/dist/textures/normal_map.jpg +0 -0
  20. package/dist/types/common/color-ramps.d.ts +5 -0
  21. package/dist/types/common/types.d.ts +25 -0
  22. package/dist/types/components/Annotations/Annotations.d.ts +42 -0
  23. package/dist/types/components/Annotations/AnnotationsHMTL.d.ts +1 -0
  24. package/dist/types/components/Annotations/AnnotationsLayer.d.ts +46 -0
  25. package/dist/types/components/Annotations/AutoUpdate.d.ts +3 -0
  26. package/dist/types/components/Annotations/DefaultLabelComponent.d.ts +11 -0
  27. package/dist/types/components/Annotations/TestAnnotations.d.ts +12 -0
  28. package/dist/types/components/Annotations/annotations-renderer.d.ts +26 -0
  29. package/dist/types/components/Annotations/annotations-state.d.ts +88 -0
  30. package/dist/types/components/Annotations/helpers.d.ts +11 -0
  31. package/dist/types/components/Annotations/index.d.ts +8 -0
  32. package/dist/types/components/Annotations/types.d.ts +80 -0
  33. package/dist/types/components/Annotations/update-annotations.d.ts +12 -0
  34. package/dist/types/components/CameraTargetMarker/CameraTargetMarker.d.ts +29 -0
  35. package/dist/types/components/Distance/Distance.d.ts +35 -0
  36. package/dist/types/components/Distance/DistanceContext.d.ts +12 -0
  37. package/dist/types/components/Distance/index.d.ts +2 -0
  38. package/dist/types/components/EventEmitter/EventEmitter.d.ts +20 -0
  39. package/dist/types/components/EventEmitter/EventEmitterContext.d.ts +90 -0
  40. package/dist/types/components/EventEmitter/index.d.ts +3 -0
  41. package/dist/types/components/EventEmitter/picking-helper.d.ts +32 -0
  42. package/dist/types/components/EventEmitter/picking-material.d.ts +11 -0
  43. package/dist/types/components/Grids/BoxGrid/BoxGrid.d.ts +52 -0
  44. package/dist/types/components/Grids/Grid/Grid.d.ts +62 -0
  45. package/dist/types/components/Grids/Grid/GridAxesLabels.d.ts +24 -0
  46. package/dist/types/components/Grids/Grid/UtmGrid.d.ts +30 -0
  47. package/dist/types/components/Grids/Grid/grid-helpers.d.ts +2 -0
  48. package/dist/types/components/Grids/index.d.ts +5 -0
  49. package/dist/types/components/Highlighter/Highlighter.d.ts +23 -0
  50. package/dist/types/components/Highlighter/highlight-state.d.ts +43 -0
  51. package/dist/types/components/Highlighter/index.d.ts +2 -0
  52. package/dist/types/components/Html/DepthSelector.d.ts +1 -0
  53. package/dist/types/components/Html/OutputPanel/OutputPanel.d.ts +10 -0
  54. package/dist/types/components/Html/OutputPanel/index.d.ts +2 -0
  55. package/dist/types/components/Html/OutputPanel/output-panel-state.d.ts +38 -0
  56. package/dist/types/components/Html/Panel/Panel.d.ts +20 -0
  57. package/dist/types/components/Html/WellMap/ActiveTrack.d.ts +9 -0
  58. package/dist/types/components/Html/WellMap/DepthCursor.d.ts +8 -0
  59. package/dist/types/components/Html/WellMap/DepthReadout.d.ts +6 -0
  60. package/dist/types/components/Html/WellMap/Schematic.d.ts +15 -0
  61. package/dist/types/components/Html/WellMap/Track.d.ts +13 -0
  62. package/dist/types/components/Html/WellMap/WellMap.d.ts +47 -0
  63. package/dist/types/components/Html/WellMap/addons/WellMapCasingShoes.d.ts +14 -0
  64. package/dist/types/components/Html/WellMap/addons/WellMapCompletionIntervals.d.ts +15 -0
  65. package/dist/types/components/Html/WellMap/addons/WellMapFormations.d.ts +14 -0
  66. package/dist/types/components/Html/WellMap/addons/WellMapTvd.d.ts +14 -0
  67. package/dist/types/components/Html/WellMap/addons/index.d.ts +4 -0
  68. package/dist/types/components/Html/WellMap/index.d.ts +4 -0
  69. package/dist/types/components/Html/WellMap/themes.d.ts +13 -0
  70. package/dist/types/components/Html/WellMap/well-map-context.d.ts +34 -0
  71. package/dist/types/components/Html/WellMap/well-map-state.d.ts +38 -0
  72. package/dist/types/components/Html/index.d.ts +5 -0
  73. package/dist/types/components/ObservableGroup/ObservableGroup.d.ts +38 -0
  74. package/dist/types/components/SDFTest/SDFTest.d.ts +12 -0
  75. package/dist/types/components/Surfaces/Surface.d.ts +46 -0
  76. package/dist/types/components/Surfaces/SurfaceMaterial.d.ts +53 -0
  77. package/dist/types/components/Surfaces/index.d.ts +4 -0
  78. package/dist/types/components/Surfaces/surface-defs.d.ts +7 -0
  79. package/dist/types/components/Symbol/Symbol.d.ts +45 -0
  80. package/dist/types/components/Symbol/index.d.ts +1 -0
  81. package/dist/types/components/UtmArea/UtmArea.d.ts +37 -0
  82. package/dist/types/components/UtmArea/UtmAreaContext.d.ts +32 -0
  83. package/dist/types/components/UtmArea/UtmPosition.d.ts +26 -0
  84. package/dist/types/components/UtmArea/Wgs84Position.d.ts +26 -0
  85. package/dist/types/components/UtmArea/index.d.ts +4 -0
  86. package/dist/types/components/Wellbores/BasicTrajectory/BasicTrajectory.d.ts +27 -0
  87. package/dist/types/components/Wellbores/BasicTrajectory/basic-trajectory-defs.d.ts +3 -0
  88. package/dist/types/components/Wellbores/BasicTrajectory/index.d.ts +2 -0
  89. package/dist/types/components/Wellbores/Casings/CasingAnnotations/CasingAnnotations.d.ts +9 -0
  90. package/dist/types/components/Wellbores/Casings/CasingAnnotations/CasingLabel.d.ts +9 -0
  91. package/dist/types/components/Wellbores/Casings/CasingAnnotations/casing-annotations-defs.d.ts +1 -0
  92. package/dist/types/components/Wellbores/Casings/Casings.d.ts +42 -0
  93. package/dist/types/components/Wellbores/Casings/casings-defs.d.ts +6 -0
  94. package/dist/types/components/Wellbores/Casings/index.d.ts +5 -0
  95. package/dist/types/components/Wellbores/CompletionTools/CompletionAnnotations/CompletionAnnotations.d.ts +9 -0
  96. package/dist/types/components/Wellbores/CompletionTools/CompletionAnnotations/completion-annotations-defs.d.ts +1 -0
  97. package/dist/types/components/Wellbores/CompletionTools/CompletionTools.d.ts +31 -0
  98. package/dist/types/components/Wellbores/CompletionTools/Screen/screen-material.d.ts +8 -0
  99. package/dist/types/components/Wellbores/CompletionTools/completion-tools-defs.d.ts +4 -0
  100. package/dist/types/components/Wellbores/CompletionTools/index.d.ts +5 -0
  101. package/dist/types/components/Wellbores/DepthMarkers/DepthMarkerLabel.d.ts +11 -0
  102. package/dist/types/components/Wellbores/DepthMarkers/DepthMarkers.d.ts +27 -0
  103. package/dist/types/components/Wellbores/DepthMarkers/depth-markers-defs.d.ts +1 -0
  104. package/dist/types/components/Wellbores/DepthMarkers/index.d.ts +3 -0
  105. package/dist/types/components/Wellbores/FormationMarkers/FormationMarkerLabel.d.ts +10 -0
  106. package/dist/types/components/Wellbores/FormationMarkers/FormationMarkers.d.ts +33 -0
  107. package/dist/types/components/Wellbores/FormationMarkers/formation-markers-defs.d.ts +3 -0
  108. package/dist/types/components/Wellbores/FormationMarkers/index.d.ts +3 -0
  109. package/dist/types/components/Wellbores/Perforations/Perforations.d.ts +32 -0
  110. package/dist/types/components/Wellbores/Perforations/index.d.ts +2 -0
  111. package/dist/types/components/Wellbores/Perforations/perforations-defs.d.ts +3 -0
  112. package/dist/types/components/Wellbores/Perimeter/Perimeter.d.ts +29 -0
  113. package/dist/types/components/Wellbores/Perimeter/index.d.ts +2 -0
  114. package/dist/types/components/Wellbores/Perimeter/perimeter-defs.d.ts +3 -0
  115. package/dist/types/components/Wellbores/PositionMarkers/PositionMarkers.d.ts +12 -0
  116. package/dist/types/components/Wellbores/PositionMarkers/position-markers-defs.d.ts +3 -0
  117. package/dist/types/components/Wellbores/Shoes/Shoes.d.ts +34 -0
  118. package/dist/types/components/Wellbores/Shoes/index.d.ts +2 -0
  119. package/dist/types/components/Wellbores/Shoes/shoes-defs.d.ts +3 -0
  120. package/dist/types/components/Wellbores/TubeTrajectory/TubeTrajectory.d.ts +25 -0
  121. package/dist/types/components/Wellbores/TubeTrajectory/index.d.ts +2 -0
  122. package/dist/types/components/Wellbores/TubeTrajectory/tube-geometry-defs.d.ts +3 -0
  123. package/dist/types/components/Wellbores/Wellbore/Wellbore.d.ts +45 -0
  124. package/dist/types/components/Wellbores/Wellbore/WellboreContext.d.ts +19 -0
  125. package/dist/types/components/Wellbores/Wellbore/index.d.ts +2 -0
  126. package/dist/types/components/Wellbores/WellboreBounds/WellboreBounds.d.ts +47 -0
  127. package/dist/types/components/Wellbores/WellboreBounds/index.d.ts +2 -0
  128. package/dist/types/components/Wellbores/WellboreBounds/wellbore-bounds-defs.d.ts +1 -0
  129. package/dist/types/components/Wellbores/WellboreFormationColumn/WellboreFormationColumn.d.ts +30 -0
  130. package/dist/types/components/Wellbores/WellboreFormationColumn/index.d.ts +2 -0
  131. package/dist/types/components/Wellbores/WellboreFormationColumn/wellbore-formation-column-defs.d.ts +3 -0
  132. package/dist/types/components/Wellbores/WellboreLabel/WellboreAnnotationLabel.d.ts +10 -0
  133. package/dist/types/components/Wellbores/WellboreLabel/WellboreLabel.d.ts +25 -0
  134. package/dist/types/components/Wellbores/WellboreLabel/index.d.ts +3 -0
  135. package/dist/types/components/Wellbores/WellboreLabel/wellbore-label-defs.d.ts +1 -0
  136. package/dist/types/components/Wellbores/WellboreRibbon/WellboreRibbon.d.ts +22 -0
  137. package/dist/types/components/Wellbores/WellboreRibbon/WellboreRibbonContext.d.ts +16 -0
  138. package/dist/types/components/Wellbores/WellboreRibbon/index.d.ts +4 -0
  139. package/dist/types/components/Wellbores/WellboreRibbon/stripes/FormationsStripe.d.ts +30 -0
  140. package/dist/types/components/Wellbores/WellboreRibbon/stripes/MeasuredDepthStripe.d.ts +28 -0
  141. package/dist/types/components/Wellbores/WellboreSeismicSection/WellboreSeismicSection.d.ts +34 -0
  142. package/dist/types/components/Wellbores/WellboreSeismicSection/index.d.ts +2 -0
  143. package/dist/types/components/Wellbores/WellboreSeismicSection/wellbore-seismic-section-defs.d.ts +12 -0
  144. package/dist/types/components/Wellbores/Wells/Wells.d.ts +43 -0
  145. package/dist/types/components/Wellbores/Wells/index.d.ts +1 -0
  146. package/dist/types/contexts/DataContext.d.ts +15 -0
  147. package/dist/types/contexts/DataContextProvider.d.ts +33 -0
  148. package/dist/types/contexts/GeneratorsContext.d.ts +13 -0
  149. package/dist/types/contexts/GeneratorsContextProvider.d.ts +34 -0
  150. package/dist/types/contexts/GlyphsContext.d.ts +19 -0
  151. package/dist/types/contexts/GlyphsContextProvider.d.ts +29 -0
  152. package/dist/types/events/camera-events.d.ts +34 -0
  153. package/dist/types/events/depth-events.d.ts +22 -0
  154. package/dist/types/events/interaction-events.d.ts +7 -0
  155. package/dist/types/events/wellbore-events.d.ts +46 -0
  156. package/dist/types/generators/basic-trajectory-generator.d.ts +2 -0
  157. package/dist/types/generators/casing-annotations-generator.d.ts +8 -0
  158. package/dist/types/generators/casings-generator.d.ts +4 -0
  159. package/dist/types/generators/completion-annotations-generator.d.ts +7 -0
  160. package/dist/types/generators/completion-tools-generator.d.ts +2 -0
  161. package/dist/types/generators/depth-markers-generator.d.ts +3 -0
  162. package/dist/types/generators/formation-markers-generator.d.ts +2 -0
  163. package/dist/types/generators/index.d.ts +20 -0
  164. package/dist/types/generators/perforations-generator.d.ts +2 -0
  165. package/dist/types/generators/perimieter-generator.d.ts +2 -0
  166. package/dist/types/generators/position-markers-generator.d.ts +2 -0
  167. package/dist/types/generators/shoes-generator.d.ts +2 -0
  168. package/dist/types/generators/surface-generator.d.ts +4 -0
  169. package/dist/types/generators/tube-trajectory-generator.d.ts +2 -0
  170. package/dist/types/generators/wellbore-bounds-generator.d.ts +2 -0
  171. package/dist/types/generators/wellbore-formation-column-generator.d.ts +2 -0
  172. package/dist/types/generators/wellbore-label-generator.d.ts +7 -0
  173. package/dist/types/generators/wellbore-seismic-section-generator.d.ts +3 -0
  174. package/dist/types/hooks/useData.d.ts +25 -0
  175. package/dist/types/hooks/useGenerator.d.ts +43 -0
  176. package/dist/types/hooks/useWellboreContext.d.ts +13 -0
  177. package/dist/types/layers/layers.d.ts +6 -0
  178. package/dist/types/main.d.ts +48 -0
  179. package/dist/types/rendering/fullscreen-renderer.d.ts +9 -0
  180. package/dist/types/rendering/index.d.ts +2 -0
  181. package/dist/types/rendering/render-passes.d.ts +16 -0
  182. package/dist/types/sdk/data/DataLoader.d.ts +54 -0
  183. package/dist/types/sdk/data/GeneratorRegistry.d.ts +15 -0
  184. package/dist/types/sdk/data/Store.d.ts +29 -0
  185. package/dist/types/sdk/data/helpers/formations-helpers.d.ts +24 -0
  186. package/dist/types/sdk/data/helpers/well-helpers.d.ts +9 -0
  187. package/dist/types/sdk/data/types/Casing.d.ts +8 -0
  188. package/dist/types/sdk/data/types/CompletionTool.d.ts +11 -0
  189. package/dist/types/sdk/data/types/DepthReferencePoint.d.ts +1 -0
  190. package/dist/types/sdk/data/types/Formation.d.ts +32 -0
  191. package/dist/types/sdk/data/types/PerforationInterval.d.ts +9 -0
  192. package/dist/types/sdk/data/types/Pick.d.ts +8 -0
  193. package/dist/types/sdk/data/types/PositionLog.d.ts +17 -0
  194. package/dist/types/sdk/data/types/StratColumn.d.ts +18 -0
  195. package/dist/types/sdk/data/types/SurfaceMeta.d.ts +23 -0
  196. package/dist/types/sdk/data/types/SurfaceValues.d.ts +1 -0
  197. package/dist/types/sdk/data/types/Symbol.d.ts +6 -0
  198. package/dist/types/sdk/data/types/VerticalSlice.d.ts +9 -0
  199. package/dist/types/sdk/data/types/WellboreHeader.d.ts +15 -0
  200. package/dist/types/sdk/data/types/index.d.ts +11 -0
  201. package/dist/types/sdk/geometries/curve/curve-3d.d.ts +46 -0
  202. package/dist/types/sdk/geometries/curve/tube-geometry.d.ts +34 -0
  203. package/dist/types/sdk/geometries/delatin.d.ts +44 -0
  204. package/dist/types/sdk/geometries/fence.d.ts +3 -0
  205. package/dist/types/sdk/geometries/packing.d.ts +46 -0
  206. package/dist/types/sdk/geometries/triangulate-grid-delaunay.d.ts +8 -0
  207. package/dist/types/sdk/geometries/triangulate-grid.d.ts +28 -0
  208. package/dist/types/sdk/index.d.ts +39 -0
  209. package/dist/types/sdk/managers/CameraManager.d.ts +11 -0
  210. package/dist/types/sdk/managers/WellboreManager.d.ts +18 -0
  211. package/dist/types/sdk/materials/depth-material.d.ts +4 -0
  212. package/dist/types/sdk/materials/ribbon-material.d.ts +24 -0
  213. package/dist/types/sdk/materials/tube-material.d.ts +7 -0
  214. package/dist/types/sdk/materials/uv-material.d.ts +2 -0
  215. package/dist/types/sdk/projection/crs.d.ts +37 -0
  216. package/dist/types/sdk/types/common.d.ts +4 -0
  217. package/dist/types/sdk/utils/array.d.ts +0 -0
  218. package/dist/types/sdk/utils/colors.d.ts +2 -0
  219. package/dist/types/sdk/utils/conversions.d.ts +5 -0
  220. package/dist/types/sdk/utils/depth-reader.d.ts +5 -0
  221. package/dist/types/sdk/utils/elevation-map.d.ts +15 -0
  222. package/dist/types/sdk/utils/glyphs.d.ts +50 -0
  223. package/dist/types/sdk/utils/irapbin-parser.d.ts +17 -0
  224. package/dist/types/sdk/utils/num-array.d.ts +2 -0
  225. package/dist/types/sdk/utils/numbers.d.ts +5 -0
  226. package/dist/types/sdk/utils/packing.d.ts +1 -0
  227. package/dist/types/sdk/utils/scene.d.ts +2 -0
  228. package/dist/types/sdk/utils/segments.d.ts +4 -0
  229. package/dist/types/sdk/utils/strings.d.ts +2 -0
  230. package/dist/types/sdk/utils/trajectory.d.ts +59 -0
  231. package/dist/types/sdk/utils/trigonometry.d.ts +12 -0
  232. package/dist/types/sdk/utils/typed-2d-array.d.ts +52 -0
  233. package/dist/types/sdk/utils/typed-array.d.ts +2 -0
  234. package/dist/types/sdk/utils/vector-operations.d.ts +29 -0
  235. package/package.json +127 -0
@@ -0,0 +1,47 @@
1
+ import { PropsWithChildren } from 'react';
2
+ import { WellboreHeader } from '../../../sdk/data/types/WellboreHeader';
3
+ import { WellMapStyles } from './themes';
4
+ /**
5
+ * WellMap props
6
+ * @expand
7
+ */
8
+ export type WellMapProps = {
9
+ wellIdentifier: string;
10
+ excluded?: string[];
11
+ selected?: string;
12
+ onSelect?: (wellbore: string, depth: number) => void;
13
+ depth?: number;
14
+ onDepthChanged?: (depth: number) => void;
15
+ onWellboreOver?: (wellbore: WellboreHeader | null, depth: number | undefined) => void;
16
+ color?: string;
17
+ colors?: Record<string, string> | ((wellbore: WellboreHeader, slot: number) => string);
18
+ interactive?: boolean;
19
+ headless?: boolean;
20
+ depthCursor?: boolean;
21
+ theme?: WellMapStyles;
22
+ };
23
+ /**
24
+ * This HTML component visualizes the trajectories of a well side-by-side according to the measured depth. It shows
25
+ * each wellbore from its kickoff depth to the terminal end point.
26
+ *
27
+ * The well map supports various interactions, which can be used to control selection and camera position/focus.
28
+ * You can customize colors by providing a color dictionary or color selection function via the `colors` prop.
29
+ *
30
+ * For other colors, use the `theme` prop.
31
+ *
32
+ * @example
33
+ * <WellMap wellIdentifier="NO 16/2-D-1" />
34
+ *
35
+ * @remarks
36
+ * The WellMap must be placed as a child of the `DataProvider` component, but outside of the R3F fiber `Canvas` component.
37
+ *
38
+ * @see [Storybook](/videx-3d/?path=/docs/components-html-wellmap--docs)
39
+ * @see {@link WellMapStyles}
40
+ * @see {@link WellMapCasingShoes}
41
+ * @see {@link WellMapCompletionIntervals}
42
+ * @see {@link WellMapFormations}
43
+ * @see {@link WellMapTvd}
44
+ * @see {@link WellMapContext}
45
+ * @group Components
46
+ */
47
+ export declare const WellMap: ({ wellIdentifier, excluded, selected, onSelect, depth, onDepthChanged, onWellboreOver, color, colors, interactive, headless, depthCursor, theme, children, }: PropsWithChildren<WellMapProps>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * WellMapCasingShoes props
3
+ * @expand
4
+ */
5
+ export type WellMapCasingShoesProps = {
6
+ color?: string;
7
+ };
8
+ /**
9
+ * Casing shoes display addon for `WellMap`
10
+ * @group Components
11
+ *
12
+ * @see {@link WellMap}
13
+ */
14
+ export declare const WellMapCasingShoes: ({ color, }: WellMapCasingShoesProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * WellMapCompletionIntervals props
3
+ * @expand
4
+ */
5
+ export type WellMapCompletionIntervalsProps = {
6
+ colorScreen?: string;
7
+ colorPerforation?: string;
8
+ };
9
+ /**
10
+ * Completion intervals display addon for `WellMap`
11
+ * @group Components
12
+ *
13
+ * @see {@link WellMap}
14
+ */
15
+ export declare const WellMapCompletionIntervals: ({ colorScreen, colorPerforation, }: WellMapCompletionIntervalsProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * WellMapFormations props
3
+ * @expand
4
+ */
5
+ export type WellMapFormationsProps = {
6
+ stratColumnId: string;
7
+ };
8
+ /**
9
+ * Formations addon for `WellMap`
10
+ * @group Components
11
+ *
12
+ * @see {@link WellMap}
13
+ */
14
+ export declare const WellMapFormations: ({ stratColumnId, }: WellMapFormationsProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * WellMapTvd props
3
+ * @expand
4
+ */
5
+ export type WellMapTvdProps = {
6
+ color?: string;
7
+ };
8
+ /**
9
+ * TVD depth display addon for `WellMap`
10
+ * @group Components
11
+ *
12
+ * @see {@link WellMap}
13
+ */
14
+ export declare const WellMapTvd: ({ color, }: WellMapTvdProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,4 @@
1
+ export * from './WellMapCasingShoes';
2
+ export * from './WellMapCompletionIntervals';
3
+ export * from './WellMapFormations';
4
+ export * from './WellMapTvd';
@@ -0,0 +1,4 @@
1
+ export * from './WellMap';
2
+ export * from './themes';
3
+ export * from './well-map-context';
4
+ export * from './addons';
@@ -0,0 +1,13 @@
1
+ export type WellMapStyles = {
2
+ depthAxisWidth: number;
3
+ depthAxisColor: string;
4
+ kickoffAxisColor: string;
5
+ cursorColor: string;
6
+ rulerColor: string;
7
+ activeTrackColor: string;
8
+ readoutColor: string;
9
+ textColor: string;
10
+ darkMode: boolean;
11
+ };
12
+ export declare const DarkTheme: WellMapStyles;
13
+ export declare const LightTheme: WellMapStyles;
@@ -0,0 +1,34 @@
1
+ import { StoreApi, UseBoundStore } from 'zustand';
2
+ import { WellMapState } from './well-map-state';
3
+ /**
4
+ * Context for providing `WellMap` state.
5
+ *
6
+ * @see {@link useWellMapState}
7
+ * @see {@link WellMap}
8
+ *
9
+ * @group Contexts
10
+ */
11
+ export declare const WellMapContext: import('react').Context<UseBoundStore<StoreApi<WellMapState>>>;
12
+ /**
13
+ * Allow child components of the `WellMap` component to get information from the well map state
14
+ *
15
+ * @example
16
+ * const wellMapState = useWellMapState()
17
+ *
18
+ * const wellboresById = wellMapState(state => state.wellboresById)
19
+ * const wellboresByName = wellMapState(state => state.wellboresByName)
20
+ * const ratio = wellMapState(state => state.measures.ratio)
21
+ * const domain = wellMapState(state => state.domain)
22
+ * const range = wellMapState(state => state.measures.range)
23
+ * const slotsById = wellMapState(state => state.slotsById)
24
+ * const styles = wellMapState(state => state.styles)
25
+ * const getSlotPosition = wellMapState(state => state.measures.getSlotPosition)
26
+ *
27
+ * @remarks
28
+ * This is meant to be used for WellMap addons
29
+ *
30
+ * @see {@link WellMap}
31
+ *
32
+ * @group Hooks
33
+ */
34
+ export declare const useWellMapState: () => UseBoundStore<StoreApi<WellMapState>>;
@@ -0,0 +1,38 @@
1
+ import { WellboreHeader } from '../../../sdk';
2
+ import { WellMapStyles } from './themes';
3
+ export type WellMapPadding = {
4
+ top: number;
5
+ bottom: number;
6
+ left: number;
7
+ right: number;
8
+ };
9
+ export type WellMapMeasures = {
10
+ svgWidth: number;
11
+ svgHeight: number;
12
+ tracksWidth: number;
13
+ trackWidth: number;
14
+ padding: WellMapPadding;
15
+ ratio: number;
16
+ range: [number, number];
17
+ getSlotPosition: (slot: number) => number;
18
+ };
19
+ export type WellMapState = {
20
+ _allWellbores: WellboreHeader[];
21
+ wellbores: WellboreHeader[];
22
+ wellboreIds: string[];
23
+ wellboresByName: Record<string, WellboreHeader>;
24
+ wellboresById: Record<string, WellboreHeader>;
25
+ segments: Record<string, [number, number]>;
26
+ tracksOrder: string[];
27
+ slotsById: Record<string, number>;
28
+ activeDepths: Record<string, number>;
29
+ depth?: number;
30
+ domain: [number, number];
31
+ measures: WellMapMeasures;
32
+ styles: WellMapStyles;
33
+ setStyles: (theme: WellMapStyles) => void;
34
+ setDepth: (depth: number | undefined) => void;
35
+ setMeasure: (width: number, height: number) => void;
36
+ setWellbores: (wellboreHeaders: WellboreHeader[]) => void;
37
+ };
38
+ export declare const createWellMapState: () => import('zustand').UseBoundStore<import('zustand').StoreApi<WellMapState>>;
@@ -0,0 +1,5 @@
1
+ export * from './Panel/Panel';
2
+ export * from './OutputPanel';
3
+ export * from './WellMap';
4
+ export * from './WellMap/well-map-context';
5
+ export * from './WellMap/well-map-state';
@@ -0,0 +1,38 @@
1
+ import { ThreeElements } from '@react-three/fiber';
2
+ import { PropsWithChildren } from 'react';
3
+ import { Vec3 } from '../../sdk';
4
+ /**
5
+ * ObservableGroup state
6
+ */
7
+ export type ObservableGroupState = {
8
+ center: Vec3;
9
+ size: Vec3;
10
+ };
11
+ export type BoxPadding = {
12
+ x0?: number;
13
+ x1?: number;
14
+ y0?: number;
15
+ y1?: number;
16
+ z0?: number;
17
+ z1?: number;
18
+ };
19
+ /**
20
+ * ObservableGroup props
21
+ * @expand
22
+ */
23
+ export type ObservableGroupProps = ThreeElements['group'] & {
24
+ padding?: number | Vec3 | BoxPadding;
25
+ snapTo?: number;
26
+ updateRate?: number;
27
+ enabled?: boolean;
28
+ onChange?: (state: ObservableGroupState) => void;
29
+ };
30
+ /**
31
+ * Monitors the bounds of its children and will invoke a callback when it
32
+ * changes.
33
+ *
34
+ * This feature is used by the `BoxGrid` component if `autoSize` is enabled.
35
+ *
36
+ * @group Components
37
+ */
38
+ export declare const ObservableGroup: (props: PropsWithChildren<ObservableGroupProps>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ type Props = {
2
+ text: string;
3
+ inBias?: number;
4
+ outBias?: number;
5
+ fontSize?: number;
6
+ rotation?: number;
7
+ spacing?: number;
8
+ verticalAlign?: number;
9
+ horizontalAlign?: number;
10
+ };
11
+ export declare const SDFTest: ({ text, inBias, outBias, fontSize, rotation, spacing, verticalAlign, horizontalAlign, }: Props) => import("react/jsx-runtime").JSX.Element | null;
12
+ export {};
@@ -0,0 +1,46 @@
1
+ import { Texture } from 'three';
2
+ import { CommonComponentProps } from '../../common/types';
3
+ import { PointerEvents } from '../../events/interaction-events';
4
+ import { SurfaceMeta, Vec2 } from '../../sdk';
5
+ import { ContourColorMode } from './SurfaceMaterial';
6
+ /**
7
+ * Surface props
8
+ * @expand
9
+ */
10
+ export type SurfaceProps = CommonComponentProps & PointerEvents & {
11
+ meta: SurfaceMeta;
12
+ color?: string;
13
+ colorRamp?: number;
14
+ rampMin?: number;
15
+ rampMax?: number;
16
+ reverseRamp?: boolean;
17
+ useColorRamp?: boolean;
18
+ showContours?: boolean;
19
+ contoursInterval?: number;
20
+ contoursColorMode?: ContourColorMode;
21
+ contoursColorModeFactor?: number;
22
+ contoursThickness?: number;
23
+ contoursColor?: string;
24
+ opacity?: number;
25
+ priority?: number;
26
+ maxError?: number;
27
+ doubleSide?: boolean;
28
+ wireframe?: boolean;
29
+ normalMap?: Texture;
30
+ normalScale?: Vec2;
31
+ debug?: boolean;
32
+ };
33
+ /**
34
+ * This component renderes a TIN model from an elevation map, according to the `SurfaceMeta` and `SurfaveValues` data types.
35
+ *
36
+ * It has several customization options for rendering the surfaces, including color ramps, contour lines and transparency.
37
+ *
38
+ * Surface values are expected to be in a regular grid. An optimized triangulation is used for the geometry, but color ramp
39
+ * values and contour lines are always using the full resolution of the data for accuracy.
40
+ *
41
+ * @example
42
+ * <Surface meta={meta} />
43
+ *
44
+ * @group Components
45
+ */
46
+ export declare const Surface: ({ meta, color, colorRamp, rampMin, rampMax, reverseRamp, useColorRamp, showContours, contoursInterval, contoursColorMode, contoursColorModeFactor, contoursThickness, contoursColor, opacity, priority, maxError, doubleSide, wireframe, normalMap, normalScale, name, userData, receiveShadow, castShadow, layers, position, renderOrder, visible, debug, onPointerClick, onPointerEnter, onPointerLeave, onPointerMove, }: SurfaceProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,53 @@
1
+ import { Color, MeshLambertMaterialParameters, ShaderMaterial, ShaderMaterialParameters, Texture, Vector2 } from 'three';
2
+ export declare enum ContourColorMode {
3
+ darken = 0,
4
+ lighten = 1,
5
+ mixed = 2
6
+ }
7
+ export type SurfaceMaterialParameters = ShaderMaterialParameters & MeshLambertMaterialParameters & {
8
+ useColorRamp?: boolean;
9
+ saturation?: number;
10
+ brightness?: number;
11
+ colorRampIndex?: number;
12
+ colorRampReverse?: boolean;
13
+ colorRampMin?: number;
14
+ colorRampMax?: number;
15
+ referenceDepth?: number;
16
+ showContours?: boolean;
17
+ contoursInterval?: number;
18
+ contoursColorMode?: ContourColorMode;
19
+ contoursColorModeFactor?: number;
20
+ contoursColor?: string | number | Color;
21
+ elevationTexture?: Texture;
22
+ normalTexture?: Texture;
23
+ debug?: boolean;
24
+ };
25
+ /**
26
+ * Shader material for `Surface` component.
27
+ *
28
+ * @see {@link Surface}
29
+ */
30
+ export declare class SurfaceMaterial extends ShaderMaterial {
31
+ isMeshSurfaceShader: boolean;
32
+ normalScale: Vector2;
33
+ map?: Texture;
34
+ normalMap?: Texture;
35
+ wireframeLinecap: string;
36
+ wireframeLinejoin: string;
37
+ flatShading: boolean;
38
+ combine: number;
39
+ normalMapType: number;
40
+ constructor(parameters: SurfaceMaterialParameters);
41
+ get color(): string;
42
+ set color(value: string);
43
+ get contoursColor(): string;
44
+ set contoursColor(value: string);
45
+ get useColorRamp(): any;
46
+ set useColorRamp(value: any);
47
+ get showContours(): any;
48
+ set showContours(value: any);
49
+ get debug(): any;
50
+ set debug(value: any);
51
+ dispose(): void;
52
+ onBeforeCompile(): void;
53
+ }
@@ -0,0 +1,4 @@
1
+ export * from '../../common/color-ramps';
2
+ export * from './Surface';
3
+ export * from './SurfaceMaterial';
4
+ export * from './surface-defs';
@@ -0,0 +1,7 @@
1
+ import { PackedBufferGeometry } from '../../sdk';
2
+ export declare const surfaceGeometry = "surfaceGeometry";
3
+ export declare const surfaceTextures = "surfaceTextures";
4
+ export type SurfaceGeometryResponse = PackedBufferGeometry;
5
+ export type SurfaceTexturesResponse = {
6
+ elevationImageBuffer: Float32Array;
7
+ };
@@ -0,0 +1,45 @@
1
+ import { BufferGeometry, Group, Material } from 'three';
2
+ import { CommonComponentProps } from '../../common/types';
3
+ import { PointerEvents } from '../../events/interaction-events';
4
+ import { SymbolsType } from '../../sdk/data/types/Symbol';
5
+ /**
6
+ * Symbol props
7
+ * @expand
8
+ */
9
+ export type SymbolProps = {
10
+ geometry: BufferGeometry;
11
+ material: Material | Material[];
12
+ data: SymbolsType;
13
+ customDepthMaterial?: Material;
14
+ customDistanceMaterial?: Material;
15
+ } & PointerEvents & CommonComponentProps;
16
+ /**
17
+ * A generic component used for simplifying mesh instancing. Use this component if you need a large number of
18
+ * meshes sharing the same base geometry and material, but that may be transformed or colored individually.
19
+ *
20
+ * Typical use case is for visualizations of data along a wellbore, such as in the `Shoes` and `FormationMarkers` component.
21
+ *
22
+ * @remarks
23
+ * Data, including colors, transformations and user defined data, must be mapped to the `SymbolsType` type.
24
+ *
25
+ * @example
26
+ * <Symbols
27
+ * position={position}
28
+ * data={data}
29
+ * geometry={geometry}
30
+ * material={material}
31
+ * layers={layers}
32
+ * />
33
+ *
34
+ * @see {@link SymbolsType}
35
+ * @see [InstancedMesh](https://threejs.org/docs/#api/en/objects/InstancedMesh)
36
+ *
37
+ * @group Components
38
+ */
39
+ export declare const Symbols: import('react').ForwardRefExoticComponent<{
40
+ geometry: BufferGeometry;
41
+ material: Material | Material[];
42
+ data: SymbolsType;
43
+ customDepthMaterial?: Material;
44
+ customDistanceMaterial?: Material;
45
+ } & PointerEvents & CommonComponentProps & import('react').RefAttributes<Group<import('three').Object3DEventMap>>>;
@@ -0,0 +1 @@
1
+ export * from './Symbol';
@@ -0,0 +1,37 @@
1
+ import { CRS } from '../../sdk/projection/crs';
2
+ import { Vec3 } from '../../sdk/types/common';
3
+ /**
4
+ * UtmArea props
5
+ * @expand
6
+ */
7
+ export type UtmAreaProps = {
8
+ crsInstance?: CRS;
9
+ utmZone?: string;
10
+ origin: [number, number];
11
+ originUnits?: 'utm' | 'lnglat';
12
+ offset?: Vec3;
13
+ utmProjectionDef?: string;
14
+ };
15
+ /**
16
+ * A container component that maps a UTM reference point to a 3d world space origin. This can be used by sub components to
17
+ * position themselves by using UTM or Wgs84 coordinates as well as converting between these and 3d space coordinates.
18
+ *
19
+ * @example
20
+ * <UtmArea utmZone={utmZone} origin={origin} originUnits={originUnits} offset={offset}>
21
+ * { children }
22
+ * </UtmArea>
23
+ *
24
+ * @remarks
25
+ * This component will return the internal CRS instance when passing a ref
26
+ *
27
+ * @see [Storybook](/videx-3d/?path=/docs/components-containers-utmarea--docs)
28
+ * @see {@link UtmPosition}
29
+ * @see {@link Wgs84Position}
30
+ * @see {@link UtmAreaContext}
31
+ * @see {@link CRS}
32
+ *
33
+ * @group Components
34
+ */
35
+ export declare const UtmArea: import('react').ForwardRefExoticComponent<UtmAreaProps & {
36
+ children?: import('react').ReactNode | undefined;
37
+ } & import('react').RefAttributes<CRS>>;
@@ -0,0 +1,32 @@
1
+ import { Vec2, Vec3 } from '../../sdk';
2
+ export type UtmCoords = {
3
+ easting: number;
4
+ northing: number;
5
+ altitude: number;
6
+ };
7
+ export type Wgs84Coords = {
8
+ lng: number;
9
+ lat: number;
10
+ alt: number;
11
+ };
12
+ /**
13
+ * UtmAreaContext props
14
+ * @expand
15
+ */
16
+ export type UtmAreaContextProps = {
17
+ originUtm: Vec2;
18
+ originWgs84: Vec2;
19
+ utmToArea: (easting: number, northing: number, altitude?: number) => Vec3;
20
+ wgs84ToArea: (longitude: number, latitude: number, altitude?: number) => Vec3;
21
+ areaToUtm: (x: number, y: number, z: number) => UtmCoords;
22
+ worldToUtm: (x: number, y: number, z: number) => UtmCoords;
23
+ areaToWgs84: (x: number, y: number, z: number) => Wgs84Coords;
24
+ worldToWgs84: (x: number, y: number, z: number) => Wgs84Coords;
25
+ getUtmOrigin: () => Vec3;
26
+ getWorldPosition: () => Vec3;
27
+ };
28
+ /**
29
+ * Utm Area context
30
+ * @group Contexts
31
+ */
32
+ export declare const UtmAreaContext: import('react').Context<UtmAreaContextProps>;
@@ -0,0 +1,26 @@
1
+ import { PropsWithChildren } from 'react';
2
+ /**
3
+ * UtmPosition props
4
+ * @expand
5
+ */
6
+ export type UtmPositionProps = {
7
+ easting: number;
8
+ northing: number;
9
+ altitude?: number;
10
+ };
11
+ /**
12
+ * Container component which allows sub components positioned relative to a UTM coordinate. Used with the `UtmArea`
13
+ * component.
14
+ *
15
+ * @example
16
+ * <UtmArea utmZone="31N" origin={[474000, 6522000]}>
17
+ * <UtmPosition easing={easting} northing={northing}>
18
+ * { children }
19
+ * </UtmPosition>
20
+ * </UtmArea>
21
+ *
22
+ * @see {@link UtmArea}
23
+ *
24
+ * @group Components
25
+ */
26
+ export declare const UtmPosition: ({ easting, northing, altitude, children, }: PropsWithChildren<UtmPositionProps>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,26 @@
1
+ import { PropsWithChildren } from 'react';
2
+ /**
3
+ * Wgs84Position props
4
+ * @expand
5
+ */
6
+ export type Wgs84PositionProps = {
7
+ long: number;
8
+ lat: number;
9
+ altitude?: number;
10
+ };
11
+ /**
12
+ * Container component which allows sub components positioned relative to a long lat coordinate. Used with the `UtmArea`
13
+ * component.
14
+ *
15
+ * @example
16
+ * <UtmArea utmZone="31N" origin={[474000, 6522000]}>
17
+ * <Wgs84Position long={long} lat={lat}>
18
+ * { children }
19
+ * </Wgs84Position>
20
+ * </UtmArea>
21
+ *
22
+ * @see {@link UtmArea}
23
+ *
24
+ * @group Components
25
+ */
26
+ export declare const Wgs84Position: ({ long, lat, altitude, children, }: PropsWithChildren<Wgs84PositionProps>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export * from './UtmArea';
2
+ export * from './UtmAreaContext';
3
+ export * from './UtmPosition';
4
+ export * from './Wgs84Position';
@@ -0,0 +1,27 @@
1
+ import { CommonComponentProps, CustomMaterialProps } from '../../../common/types';
2
+ /**
3
+ * BasicTrajectory props
4
+ * @expand
5
+ */
6
+ export type BasicTrajectoryProps = CommonComponentProps & CustomMaterialProps & {
7
+ color?: string;
8
+ priority?: number;
9
+ };
10
+ /**
11
+ * The BasicTrajectory renders a wellbore trajectory as a 1 pixel line.
12
+ * This component must be a child of the `Wellbore` component.
13
+ *
14
+ * @example
15
+ * <Wellbore id="abc">
16
+ * <BasicTrajectory />
17
+ * </Wellbore>
18
+ *
19
+ * @remarks
20
+ * This component depends on the {@link basicTrajectory} generator.
21
+ *
22
+ * @see [Storybook](/videx-3d/?path=/docs/components-wellbores-basictrajectory--docs)
23
+ * @see [Generators](/videx-3d/docs/documents/generators.html)
24
+ *
25
+ * @group Components
26
+ */
27
+ export declare const BasicTrajectory: ({ name, userData, position, castShadow, receiveShadow, layers, renderOrder, visible, customDepthMaterial, customDistanceMaterial, customMaterial, onMaterialPropertiesChange, color, priority, }: BasicTrajectoryProps) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,3 @@
1
+ import { PackedBufferGeometry } from '../../../sdk';
2
+ export declare const basicTrajectory = "basicTrajectory";
3
+ export type BasicTrajectoryGeneratorResponse = PackedBufferGeometry;
@@ -0,0 +1,2 @@
1
+ export * from './BasicTrajectory';
2
+ export * from './basic-trajectory-defs';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Adds annotations for casing data. This component needs to be a child of the `Wellbore` component.
3
+ *
4
+ * @see {@link Wellbore}
5
+ * @see {@link Annotations}
6
+ *
7
+ * @group Components
8
+ */
9
+ export declare const CasingAnnotations: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { AnnotationComponentProps } from '../../../Annotations/types';
2
+ /**
3
+ * Annotation label for `CasingAnnotations`
4
+ *
5
+ * @see {@link CasingAnnotations}
6
+ *
7
+ * @group Components
8
+ */
9
+ export declare const CasingLabel: ({ id, name, data }: AnnotationComponentProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const casingAnnotations = "casingToolAnnotations";