@equinor/videx-3d 1.0.0 → 1.0.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/chunk-BolRQZt9.js +687 -0
- package/dist/{chunk-BX-cez1_.js → chunk-DuRASjkF.js} +3 -9
- package/dist/generators.js +521 -495
- package/dist/main.js +3500 -3058
- package/dist/sdk.js +18 -17
- package/dist/types/components/Wellbores/Casings/CasingMaterial.d.ts +25 -0
- package/dist/types/components/Wellbores/Casings/CasingSection.d.ts +15 -0
- package/dist/types/components/Wellbores/Casings/Casings.d.ts +33 -4
- package/dist/types/components/Wellbores/Casings/casing-geometry.d.ts +6 -0
- package/dist/types/components/Wellbores/Casings/casings-defs.d.ts +15 -4
- package/dist/types/generators/casing-annotations-generator.d.ts +3 -1
- package/dist/types/generators/casings-generator.d.ts +2 -3
- package/dist/types/sdk/data/types/Casing.d.ts +1 -0
- package/dist/types/sdk/geometries/curve/tube-geometry.d.ts +9 -7
- package/dist/types/sdk/geometries/geometry.d.ts +18 -0
- package/dist/types/sdk/geometries/packing.d.ts +2 -2
- package/package.json +1 -1
- package/dist/chunk-MFzFdEWm.js +0 -591
package/dist/sdk.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { wrap as Z } from "comlink";
|
|
2
2
|
import $ from "p-limit";
|
|
3
|
-
import { x as ct, D as ft, P as ut, b as dt, a as gt, c as pt, T as wt, y as yt, z as mt, A as xt, B as bt, p as vt, d as _t, E as Mt, F as At, G as Ft, H as Lt, I as St, J as Vt, K as It, L as Bt, M as
|
|
4
|
-
import { C as _e, T as Me, c as Ae, b as Fe, a as Le, d as Se, e as Ve, g as Ie, f as Be, t as
|
|
5
|
-
import { D as ze, c as Ge, a as ke, b as Pe,
|
|
3
|
+
import { x as ct, D as ft, P as ut, b as dt, a as gt, c as pt, T as wt, y as yt, z as mt, A as xt, B as bt, p as vt, d as _t, E as Mt, F as At, G as Ft, H as Lt, I as St, J as Vt, K as It, L as Bt, M as Tt, e as Et, N as Dt, o as qt, O as zt, Q as Gt, R as kt, i as Pt, S as jt, U as Nt, V as Ct, X as Qt, g as Ut, Y as Wt, Z as Ht, _ as Zt, $ as $t, h as Jt, m as Kt, a0 as Ot, a1 as Xt, a2 as Yt, n as Rt, a3 as te, f as ee, a4 as se, a5 as ie, a6 as re, a7 as ne, a8 as ae, a9 as le, aa as oe, ab as he, ac as ce, ad as fe, ae as ue, af as de, ag as ge, s as pe, ah as we, ai as ye, aj as me, u as xe, ak as be } from "./chunk-iY0wQ9Z6.js";
|
|
4
|
+
import { C as _e, T as Me, c as Ae, b as Fe, a as Le, d as Se, e as Ve, g as Ie, f as Be, t as Te, h as Ee, w as De } from "./chunk-CnY6Tmof.js";
|
|
5
|
+
import { D as ze, c as Ge, a as ke, b as Pe, d as je, t as Ne, e as Ce } from "./chunk-BolRQZt9.js";
|
|
6
6
|
const J = 10, K = 25;
|
|
7
7
|
class Y {
|
|
8
8
|
store;
|
|
@@ -142,20 +142,20 @@ function tt(u, t, e = 1, i = 1, r = (n) => n) {
|
|
|
142
142
|
const n = [], s = [], a = [], c = [], h = u.length / t;
|
|
143
143
|
let l, o, d, g, v, y, m, _, A, S, b, V, M, F, L, k, f, C, D, q, z, p, x, Q, H = 0, U = 0, W = 0, B = new Array(t).fill(null), P = new Array(t).fill(null);
|
|
144
144
|
const w = new Array(t - 1).fill(null);
|
|
145
|
-
function j(I,
|
|
146
|
-
return n.push({ x: I * e, y: G, z:
|
|
145
|
+
function j(I, E, G) {
|
|
146
|
+
return n.push({ x: I * e, y: G, z: E * i, edge: null }), a.push(I / (t - 1), 1 - E / (h - 1)), H++;
|
|
147
147
|
}
|
|
148
|
-
function
|
|
148
|
+
function T(I, E, G) {
|
|
149
149
|
D = {
|
|
150
150
|
index: U++,
|
|
151
151
|
tail: I,
|
|
152
|
-
head:
|
|
152
|
+
head: E,
|
|
153
153
|
twin: null,
|
|
154
154
|
prev: null,
|
|
155
155
|
next: null
|
|
156
156
|
}, q = {
|
|
157
157
|
index: U++,
|
|
158
|
-
tail:
|
|
158
|
+
tail: E,
|
|
159
159
|
head: G,
|
|
160
160
|
twin: null,
|
|
161
161
|
prev: null,
|
|
@@ -167,13 +167,13 @@ function tt(u, t, e = 1, i = 1, r = (n) => n) {
|
|
|
167
167
|
twin: null,
|
|
168
168
|
prev: null,
|
|
169
169
|
next: null
|
|
170
|
-
}, D.next = q, q.next = z, z.next = D, D.prev = z, q.prev = D, z.prev = q, n[I].edge || (n[I].edge = D), n[
|
|
170
|
+
}, D.next = q, q.next = z, z.next = D, D.prev = z, q.prev = D, z.prev = q, n[I].edge || (n[I].edge = D), n[E].edge || (n[E].edge = q), n[G].edge || (n[G].edge = z), s.push(D, q, z), c.push(I, E, G);
|
|
171
171
|
}
|
|
172
172
|
for (k = 1; k < h - 1; k++) {
|
|
173
173
|
Q = !1;
|
|
174
174
|
const I = B;
|
|
175
175
|
for (B = P, P = I.fill(null), p = null, C = k - 1, W += t, L = 1; L < t - 1; L++)
|
|
176
|
-
f = L - 1, S = W + L, A = S - 1, _ = S - t, m = _ - 1, b = r(u[m]), V = r(u[_]), M = r(u[A]), F = r(u[S]), b !== null && V !== null && M !== null && F !== null ? x = 1 : b !== null && V !== null && M !== null ? x = 2 : b !== null && V !== null && F !== null ? x = 3 : b !== null && M !== null && F !== null ? x = 4 : V !== null && M !== null && F !== null ? x = 5 : x = 0, d = null, g = null, x !== 0 ? (Q ? (l = B[f], d = P[f]) : (x !== 5 && (B[f] === null ? (l = j(f, C, b), B[f] = l) : l = B[f]), x !== 3 && (d = j(f, k, M)), P[f] = d), x !== 4 && (B[L] === null ? (o = j(L, C, V), B[L] = o) : o = B[L]), x !== 2 && (g = j(L, k, F)), x === 1 ? (v = Math.abs(n[l].y - n[g].y), y = Math.abs(n[o].y - n[d].y), v < y ? (
|
|
176
|
+
f = L - 1, S = W + L, A = S - 1, _ = S - t, m = _ - 1, b = r(u[m]), V = r(u[_]), M = r(u[A]), F = r(u[S]), b !== null && V !== null && M !== null && F !== null ? x = 1 : b !== null && V !== null && M !== null ? x = 2 : b !== null && V !== null && F !== null ? x = 3 : b !== null && M !== null && F !== null ? x = 4 : V !== null && M !== null && F !== null ? x = 5 : x = 0, d = null, g = null, x !== 0 ? (Q ? (l = B[f], d = P[f]) : (x !== 5 && (B[f] === null ? (l = j(f, C, b), B[f] = l) : l = B[f]), x !== 3 && (d = j(f, k, M)), P[f] = d), x !== 4 && (B[L] === null ? (o = j(L, C, V), B[L] = o) : o = B[L]), x !== 2 && (g = j(L, k, F)), x === 1 ? (v = Math.abs(n[l].y - n[g].y), y = Math.abs(n[o].y - n[d].y), v < y ? (T(l, d, g), p !== null && (s[s.length - 3].twin = p, p.twin = s[s.length - 3]), T(g, o, l), w[f] !== null && (s[s.length - 2].twin = w[f], w[f].twin = s[s.length - 2]), s[s.length - 4].twin = s[s.length - 1], s[s.length - 1].twin = s[s.length - 4], w[f] = s[s.length - 5], p = s[s.length - 3]) : (T(l, d, o), w[f] !== null && (s[s.length - 1].twin = w[f], w[f].twin = s[s.length - 1]), p !== null && (s[s.length - 3].twin = p, p.twin = s[s.length - 3]), T(o, d, g), s[s.length - 5].twin = s[s.length - 3], s[s.length - 3].twin = s[s.length - 5], w[f] = s[s.length - 2], p = s[s.length - 1])) : x === 2 ? (T(l, d, o), w[f] !== null && (s[s.length - 1].twin = w[f], w[f].twin = s[s.length - 1]), p !== null && (s[s.length - 3].twin = p, p.twin = s[s.length - 3]), w[f] = null, p = null) : x === 5 ? (T(o, d, g), w[f] = s[s.length - 2], p = s[s.length - 1]) : x === 3 ? (T(o, l, g), w[f] !== null && (s[s.length - 3].twin = w[f], w[f].twin = s[s.length - 3]), w[f] = null, p = s[s.length - 1]) : (T(l, d, g), p !== null && (s[s.length - 3].twin = p, p.twin = s[s.length - 3]), w[f] = s[s.length - 2], p = null)) : (w[f] = null, p = null), P[L] = g, Q = !!x;
|
|
177
177
|
}
|
|
178
178
|
return console.timeEnd("triangulate"), console.log(c.length / 3), { vertices: n, indices: c, uvs: a, edges: s };
|
|
179
179
|
}
|
|
@@ -539,7 +539,8 @@ export {
|
|
|
539
539
|
Le as createElevationTexture,
|
|
540
540
|
ke as createFenceGeometry,
|
|
541
541
|
Se as createNormalTexture,
|
|
542
|
-
Pe as
|
|
542
|
+
Pe as createTubeGeometries,
|
|
543
|
+
je as createTubeGeometry,
|
|
543
544
|
At as crossVec3,
|
|
544
545
|
Ft as degreesToRadians,
|
|
545
546
|
Lt as directionVec2,
|
|
@@ -547,8 +548,8 @@ export {
|
|
|
547
548
|
Vt as distanceVec2,
|
|
548
549
|
It as distanceVec3,
|
|
549
550
|
Bt as dotVec2,
|
|
550
|
-
|
|
551
|
-
|
|
551
|
+
Tt as dotVec3,
|
|
552
|
+
Et as edgeOfRectangle,
|
|
552
553
|
Ve as elevationMapNormalsToRGBA,
|
|
553
554
|
Dt as feetToMeters,
|
|
554
555
|
qt as getCurvePositions,
|
|
@@ -596,13 +597,13 @@ export {
|
|
|
596
597
|
ge as simplifyCurve2D,
|
|
597
598
|
pe as subVec2,
|
|
598
599
|
we as subVec3,
|
|
599
|
-
|
|
600
|
+
Ne as titleCase,
|
|
600
601
|
lt as toFloat32Array,
|
|
601
602
|
ye as toRGB,
|
|
602
|
-
|
|
603
|
-
|
|
603
|
+
Te as toSegments,
|
|
604
|
+
Ee as triangleNormal,
|
|
604
605
|
tt as triangulateGrid,
|
|
605
|
-
|
|
606
|
+
Ce as triangulateGridDelaunay,
|
|
606
607
|
me as unpackBufferGeometries,
|
|
607
608
|
xe as unpackBufferGeometry,
|
|
608
609
|
be as uvMaterial,
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { MeshStandardMaterial, MeshStandardMaterialParameters, Uniform, WebGLProgramParametersWithUniforms } from 'three';
|
|
2
|
+
export declare class CasingMaterial extends MeshStandardMaterial {
|
|
3
|
+
uniforms: {
|
|
4
|
+
sizeMultiplier: Uniform<number>;
|
|
5
|
+
radius: Uniform<number>;
|
|
6
|
+
innerRadius: Uniform<number>;
|
|
7
|
+
sliceOffset: Uniform<number>;
|
|
8
|
+
sliceAngle: Uniform<number>;
|
|
9
|
+
autoSlicePosition: Uniform<boolean>;
|
|
10
|
+
};
|
|
11
|
+
constructor(params?: MeshStandardMaterialParameters);
|
|
12
|
+
get sizeMultiplier(): number;
|
|
13
|
+
set sizeMultiplier(v: number);
|
|
14
|
+
get radius(): number;
|
|
15
|
+
set radius(v: number);
|
|
16
|
+
get innerRadius(): number;
|
|
17
|
+
set innerRadius(v: number);
|
|
18
|
+
get sliceOffset(): number;
|
|
19
|
+
set sliceOffset(v: number);
|
|
20
|
+
get sliceAngle(): number;
|
|
21
|
+
set sliceAngle(v: number);
|
|
22
|
+
get autoSlicePosition(): boolean;
|
|
23
|
+
set autoSlicePosition(v: boolean);
|
|
24
|
+
onBeforeCompile(parameters: WebGLProgramParametersWithUniforms): void;
|
|
25
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CasingSectionMaterialOptions } from './Casings';
|
|
2
|
+
import { CasingSectionType } from './casings-defs';
|
|
3
|
+
type CasingSectionProps = {
|
|
4
|
+
materialOptions: CasingSectionMaterialOptions;
|
|
5
|
+
radialSegments?: number;
|
|
6
|
+
sizeMultiplier?: number;
|
|
7
|
+
section: CasingSectionType;
|
|
8
|
+
sliceOffset?: number;
|
|
9
|
+
sliceAngle?: number;
|
|
10
|
+
autoSlicePosition?: boolean;
|
|
11
|
+
opacity?: number;
|
|
12
|
+
renderOrder?: number;
|
|
13
|
+
};
|
|
14
|
+
export declare const CasingSection: ({ section, materialOptions, radialSegments, sizeMultiplier, sliceAngle, sliceOffset, autoSlicePosition, opacity, renderOrder, }: CasingSectionProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export {};
|
|
@@ -1,23 +1,48 @@
|
|
|
1
1
|
import { ReactElement } from 'react';
|
|
2
|
-
import { Group, Object3D } from 'three';
|
|
3
|
-
import { CommonComponentProps
|
|
2
|
+
import { Group, MeshStandardMaterialParameters, Object3D } from 'three';
|
|
3
|
+
import { CommonComponentProps } from '../../../common/types';
|
|
4
|
+
import { CasingSectionType } from './casings-defs';
|
|
5
|
+
/**
|
|
6
|
+
* CasingSectionMaterialOptions
|
|
7
|
+
* @expand
|
|
8
|
+
*/
|
|
9
|
+
export type CasingSectionMaterialOptions = {
|
|
10
|
+
primary: MeshStandardMaterialParameters;
|
|
11
|
+
inner?: MeshStandardMaterialParameters;
|
|
12
|
+
slice?: MeshStandardMaterialParameters;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* MaterialOptions
|
|
16
|
+
* @expand
|
|
17
|
+
*/
|
|
18
|
+
export type MaterialOptions = (section: CasingSectionType) => CasingSectionMaterialOptions;
|
|
4
19
|
/**
|
|
5
20
|
* Casing props
|
|
6
21
|
* @expand
|
|
7
22
|
*/
|
|
8
|
-
export type CasingProps = CommonComponentProps &
|
|
23
|
+
export type CasingProps = CommonComponentProps & {
|
|
9
24
|
fallback?: () => ReactElement<Object3D>;
|
|
10
25
|
radialSegments?: number;
|
|
26
|
+
sliceAngle?: number;
|
|
27
|
+
sliceOffset?: number;
|
|
28
|
+
autoSlicePosition?: boolean;
|
|
11
29
|
sizeMultiplier?: number;
|
|
12
30
|
shoeFactor?: number;
|
|
13
31
|
overrideSegmentsPerMeter?: number;
|
|
14
32
|
overrideSimplificationThreshold?: number;
|
|
33
|
+
materialOptions?: MaterialOptions;
|
|
15
34
|
opacity?: number;
|
|
16
35
|
priority?: number;
|
|
17
36
|
};
|
|
18
37
|
/**
|
|
19
38
|
* Generic render of casings based on depths, diameters and type. Must be a child of the `Wellbore` component.
|
|
20
39
|
*
|
|
40
|
+
* The casing may be "sliced" at an angle using the sliceAngle prop. The sliceOffset prop determines the offset
|
|
41
|
+
* from the z axis to the center of the slice. Setting autoSlicePosition to true will always show the center of the
|
|
42
|
+
* slice facing the camera. With this option set to true, the sliceOffset should be set to 0.
|
|
43
|
+
*
|
|
44
|
+
* An alternative to using the slice feature is to set opacity < 1 if you want to see the internals.
|
|
45
|
+
*
|
|
21
46
|
* @example
|
|
22
47
|
* <Wellbore id={wellbore.id}>
|
|
23
48
|
* <Casings sizeMultiplier={5} />
|
|
@@ -30,13 +55,17 @@ export type CasingProps = CommonComponentProps & CustomMaterialProps & {
|
|
|
30
55
|
*
|
|
31
56
|
* @group Components
|
|
32
57
|
*/
|
|
33
|
-
export declare const Casings: import('react').ForwardRefExoticComponent<CommonComponentProps &
|
|
58
|
+
export declare const Casings: import('react').ForwardRefExoticComponent<CommonComponentProps & {
|
|
34
59
|
fallback?: () => ReactElement<Object3D>;
|
|
35
60
|
radialSegments?: number;
|
|
61
|
+
sliceAngle?: number;
|
|
62
|
+
sliceOffset?: number;
|
|
63
|
+
autoSlicePosition?: boolean;
|
|
36
64
|
sizeMultiplier?: number;
|
|
37
65
|
shoeFactor?: number;
|
|
38
66
|
overrideSegmentsPerMeter?: number;
|
|
39
67
|
overrideSimplificationThreshold?: number;
|
|
68
|
+
materialOptions?: MaterialOptions;
|
|
40
69
|
opacity?: number;
|
|
41
70
|
priority?: number;
|
|
42
71
|
} & import('react').RefAttributes<Group<import('three').Object3DEventMap>>>;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { InstancedBufferGeometry } from 'three';
|
|
2
|
+
import { CasingSectionType } from './casings-defs';
|
|
3
|
+
export declare function createCasingSectionGeometries(section: CasingSectionType, radialSegments: number): {
|
|
4
|
+
tubeGeometry: InstancedBufferGeometry;
|
|
5
|
+
capsGeometry: InstancedBufferGeometry;
|
|
6
|
+
};
|
|
@@ -1,6 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Vec3 } from '../../../sdk';
|
|
2
2
|
export declare const casings = "casings";
|
|
3
|
-
export type
|
|
4
|
-
|
|
3
|
+
export type CasingSectionType = {
|
|
4
|
+
type: string;
|
|
5
|
+
radius: number;
|
|
6
|
+
innerRadius: number;
|
|
7
|
+
top: number;
|
|
8
|
+
bottom: number;
|
|
9
|
+
length: number;
|
|
10
|
+
attributesBuffer: Float32Array;
|
|
11
|
+
segments: number;
|
|
12
|
+
boundingSphere: {
|
|
13
|
+
center: Vec3;
|
|
14
|
+
radius: number;
|
|
15
|
+
};
|
|
5
16
|
};
|
|
6
|
-
export
|
|
17
|
+
export type CasingsGeneratorResponse = CasingSectionType[];
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { ReadonlyStore } from '../sdk';
|
|
2
2
|
export declare function generateCasingAnnotations(this: ReadonlyStore, id: string): Promise<{
|
|
3
3
|
name: string;
|
|
4
|
-
data:
|
|
4
|
+
data: {
|
|
5
|
+
isShoe: boolean | undefined;
|
|
6
|
+
};
|
|
5
7
|
position: import('../sdk').Vec3;
|
|
6
8
|
direction: import('../sdk').Vec3;
|
|
7
9
|
priority: number;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
+
import { CasingSectionType } from '../components/Wellbores/Casings';
|
|
1
2
|
import { ReadonlyStore } from '../sdk';
|
|
2
|
-
export declare function generateCasings(this: ReadonlyStore, id: string, fromMsl?: number,
|
|
3
|
-
geometry: import('../sdk').PackedBufferGeometry;
|
|
4
|
-
} | null>;
|
|
3
|
+
export declare function generateCasings(this: ReadonlyStore, id: string, fromMsl?: number, shoeFactor?: number, segmentsPerMeter?: number, simplificationThreshold?: number): Promise<CasingSectionType[] | null>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BufferGeometry } from 'three';
|
|
2
1
|
import { Tuplet } from '../../types/common';
|
|
2
|
+
import { GeometryData } from '../geometry';
|
|
3
3
|
import { Curve3D } from './curve-3d';
|
|
4
4
|
export type RadiusModifier = {
|
|
5
5
|
type: 'linear' | 'stepped';
|
|
@@ -8,6 +8,12 @@ export type RadiusModifier = {
|
|
|
8
8
|
export type AttributeOptions = {
|
|
9
9
|
computeNormals?: boolean;
|
|
10
10
|
computeUvs?: boolean;
|
|
11
|
+
computeLengths?: boolean;
|
|
12
|
+
computeRelativeLengths?: boolean;
|
|
13
|
+
computeCenterPoints?: boolean;
|
|
14
|
+
computeCurveNormals?: boolean;
|
|
15
|
+
computeCurveTangents?: boolean;
|
|
16
|
+
computeCurveBinormals?: boolean;
|
|
11
17
|
};
|
|
12
18
|
export type TubeGeometryOptions = AttributeOptions & {
|
|
13
19
|
radialSegments?: number;
|
|
@@ -19,11 +25,6 @@ export type TubeGeometryOptions = AttributeOptions & {
|
|
|
19
25
|
segmentsPerMeter?: number;
|
|
20
26
|
radiusModifier?: RadiusModifier;
|
|
21
27
|
simplificationThreshold?: number;
|
|
22
|
-
computeLengths?: boolean;
|
|
23
|
-
computeRelativeLengths?: boolean;
|
|
24
|
-
computeCurveNormals?: boolean;
|
|
25
|
-
computeCurveTangents?: boolean;
|
|
26
|
-
computeCurveBinormals?: boolean;
|
|
27
28
|
innerRadius?: number;
|
|
28
29
|
thickness?: number;
|
|
29
30
|
addGroups?: boolean;
|
|
@@ -31,4 +32,5 @@ export type TubeGeometryOptions = AttributeOptions & {
|
|
|
31
32
|
/**
|
|
32
33
|
* Generates a fully customized tube geometry extruded from a curve.
|
|
33
34
|
*/
|
|
34
|
-
export declare function
|
|
35
|
+
export declare function createTubeGeometries(curve: Curve3D, options?: TubeGeometryOptions): GeometryData[];
|
|
36
|
+
export declare function createTubeGeometry(curve: Curve3D, options?: TubeGeometryOptions): import('three').BufferGeometry<import('three').NormalBufferAttributes, import('three').BufferGeometryEventMap> | null;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BufferGeometry } from 'three';
|
|
2
|
+
export type GeometryAttribute = {
|
|
3
|
+
array: number[];
|
|
4
|
+
itemSize: number;
|
|
5
|
+
type: string;
|
|
6
|
+
};
|
|
7
|
+
export type GeometryData = {
|
|
8
|
+
positions: number[];
|
|
9
|
+
indices: number[];
|
|
10
|
+
vertexCount: number;
|
|
11
|
+
indexCount: number;
|
|
12
|
+
attributes: Record<string, GeometryAttribute>;
|
|
13
|
+
};
|
|
14
|
+
export declare function mergeGeometries(geometries: GeometryData[], useGroups?: boolean): {
|
|
15
|
+
geometry: GeometryData;
|
|
16
|
+
groups: number[][] | null;
|
|
17
|
+
} | null;
|
|
18
|
+
export declare function toBufferGeometry(geometries: GeometryData[], useGroups?: boolean): BufferGeometry<import('three').NormalBufferAttributes, import('three').BufferGeometryEventMap> | null;
|
|
@@ -33,12 +33,12 @@ export type PackedBufferGeometry = {
|
|
|
33
33
|
userData?: any;
|
|
34
34
|
};
|
|
35
35
|
export type PackedBufferGeometryCollection = Record<string, PackedBufferGeometry>;
|
|
36
|
-
export declare function getTypedArrayType(array: ArrayBufferLike | TypedArray): "
|
|
36
|
+
export declare function getTypedArrayType(array: ArrayBufferLike | TypedArray): "Uint8Array" | "Float64Array" | "Uint16Array" | "Uint32Array" | "Int8Array" | "Int16Array" | "Int32Array" | "Float32Array";
|
|
37
37
|
export declare function getTypedArrayFromBuffer(buffer: ArrayBufferLike, type: string): Float32Array<ArrayBufferLike> | Int8Array<ArrayBufferLike> | Uint8Array<ArrayBufferLike> | Int16Array<ArrayBufferLike> | Uint16Array<ArrayBufferLike> | Int32Array<ArrayBufferLike> | Uint32Array<ArrayBufferLike> | Float64Array<ArrayBufferLike>;
|
|
38
38
|
export declare function packAttribute(typedArray: TypedArray, itemSize?: number): PackedBufferAttribute;
|
|
39
39
|
export declare function packBufferGeometryLike(geometry: BufferGeometryLike): [PackedBufferGeometry, ArrayBufferLike[]];
|
|
40
40
|
export declare function packBufferGeometry(bufferGeometry: BufferGeometry): [PackedBufferGeometry, ArrayBufferLike[]];
|
|
41
|
-
export declare function packBufferGeometries(bufferGeometries: BufferGeometry
|
|
41
|
+
export declare function packBufferGeometries(bufferGeometries: Record<string, BufferGeometry>): {
|
|
42
42
|
data: PackedBufferGeometryCollection;
|
|
43
43
|
transferrables: ArrayBufferLike[];
|
|
44
44
|
};
|