@openheart/tavio-renderer 2.2.10-without-wasm → 2.2.12-without-wasm
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/build/esm/index.js +4632 -2949
- package/build/esm/types/camera/orbitControls.d.ts +13 -0
- package/build/esm/types/editor/selector/boxSelector.d.ts +17 -2
- package/build/esm/types/utility/utility.d.ts +11 -0
- package/build/esm/types/viewer/canvas.d.ts +28 -2
- package/build/esm/types/viewer/tavioMesh.d.ts +8 -4
- package/build/esm/types/worker/tavioWorker.d.ts +2 -0
- package/build/esm/wasm/pkg/no-thread/tavio.d.ts +10 -7
- package/build/esm/wasm/pkg/no-thread/tavio.js +122 -111
- package/build/esm/wasm/pkg/no-thread/tavio_bg.wasm +0 -0
- package/build/esm/wasm/pkg/no-thread/tavio_bg.wasm.d.ts +10 -7
- package/build/esm/wasm/pkg/thread/tavio.d.ts +12 -8
- package/build/esm/wasm/pkg/thread/tavio.js +169 -131
- package/build/esm/wasm/pkg/thread/tavio_bg.wasm +0 -0
- package/build/esm/wasm/pkg/thread/tavio_bg.wasm.d.ts +12 -8
- package/package.json +9 -7
|
@@ -30,6 +30,7 @@ export declare class OrbitControls extends EventEmitter {
|
|
|
30
30
|
enableZoom: boolean;
|
|
31
31
|
enablePan: boolean;
|
|
32
32
|
enableLimit: boolean;
|
|
33
|
+
enableZoomLimit: boolean;
|
|
33
34
|
/**
|
|
34
35
|
* 範囲を制限する処理では、東西南北のそれぞれの方向に対して制限範囲を設定できる
|
|
35
36
|
* カメラが北極方向に近づく北緯方向を上、向かって左に流れていく方向を西経方向とする
|
|
@@ -49,6 +50,8 @@ export declare class OrbitControls extends EventEmitter {
|
|
|
49
50
|
private downLimit;
|
|
50
51
|
private leftLimit;
|
|
51
52
|
private rightLimit;
|
|
53
|
+
private zoomInLimit;
|
|
54
|
+
private zoomOutLimit;
|
|
52
55
|
private isDown;
|
|
53
56
|
private overflow;
|
|
54
57
|
private upOver;
|
|
@@ -172,6 +175,16 @@ export declare class OrbitControls extends EventEmitter {
|
|
|
172
175
|
* @param value - 設定する値
|
|
173
176
|
*/
|
|
174
177
|
setRightLimit(value: number): void;
|
|
178
|
+
/**
|
|
179
|
+
* ズームの最短距離
|
|
180
|
+
* @param value - 設定する値
|
|
181
|
+
*/
|
|
182
|
+
setZoomInLimit(value: number): void;
|
|
183
|
+
/**
|
|
184
|
+
* ズームの最長距離
|
|
185
|
+
* @param value - 設定する値
|
|
186
|
+
*/
|
|
187
|
+
setZoomOutLimit(value: number): void;
|
|
175
188
|
/**
|
|
176
189
|
* 状態を更新し、変更があったかどうかを真偽値で返す
|
|
177
190
|
*/
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import { PerspectiveCamera, Vector3, Ray } from 'three';
|
|
1
|
+
import { PerspectiveCamera, Vector3, Ray, Quaternion, Euler } from 'three';
|
|
2
2
|
import { Selector, iIntersection } from './selector';
|
|
3
3
|
export interface iBoxSelectorOption {
|
|
4
4
|
width?: number;
|
|
5
|
+
height?: number;
|
|
6
|
+
depth?: number;
|
|
5
7
|
segment?: number;
|
|
6
8
|
color?: number;
|
|
9
|
+
position?: Vector3 | [number, number, number];
|
|
10
|
+
rotation?: Euler | Quaternion | [number, number, number];
|
|
11
|
+
visible?: boolean;
|
|
7
12
|
}
|
|
8
13
|
/**
|
|
9
14
|
* 3D ガウシアンを選択するための box インターフェースを提供する
|
|
@@ -11,6 +16,8 @@ export interface iBoxSelectorOption {
|
|
|
11
16
|
*/
|
|
12
17
|
export declare class BoxSelector extends Selector {
|
|
13
18
|
private width;
|
|
19
|
+
private height;
|
|
20
|
+
private depth;
|
|
14
21
|
private geometry;
|
|
15
22
|
private material;
|
|
16
23
|
/**
|
|
@@ -20,9 +27,17 @@ export declare class BoxSelector extends Selector {
|
|
|
20
27
|
*/
|
|
21
28
|
constructor(camera: PerspectiveCamera, eventTarget: HTMLElement, option?: iBoxSelectorOption);
|
|
22
29
|
/**
|
|
23
|
-
*
|
|
30
|
+
* 設定されている幅を返す
|
|
24
31
|
*/
|
|
25
32
|
getWidth(): number;
|
|
33
|
+
/**
|
|
34
|
+
* 設定されている高さを返す
|
|
35
|
+
*/
|
|
36
|
+
getHeight(): number;
|
|
37
|
+
/**
|
|
38
|
+
* 設定されている奥行きを返す
|
|
39
|
+
*/
|
|
40
|
+
getDepth(): number;
|
|
26
41
|
/**
|
|
27
42
|
* セットアップを行う
|
|
28
43
|
* @param option - セットアップオプション
|
|
@@ -30,6 +30,17 @@ export declare function loadJson(path: string): Promise<any>;
|
|
|
30
30
|
* @param target - 対象となるビット数
|
|
31
31
|
*/
|
|
32
32
|
export declare function checkBit(value: number, target: number): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* 4bit 整数を2つ受け取り、1つの 8bit 整数として返す
|
|
35
|
+
* @param high - 上位ビットに収める値
|
|
36
|
+
* @param low - 下位ビットに収める値
|
|
37
|
+
*/
|
|
38
|
+
export declare function pack4to8(high: number, low: number): number;
|
|
39
|
+
/**
|
|
40
|
+
* 1つの 8bit 整数を受け取り、4bit 整数を2つ返す
|
|
41
|
+
* @param value - 下位ビットに収める値
|
|
42
|
+
*/
|
|
43
|
+
export declare function unpack8to4(value: number): number[];
|
|
33
44
|
/**
|
|
34
45
|
* quaternion を octahedral quaternion に変換して返す
|
|
35
46
|
* @param w - クォータニオンの w 成分
|
|
@@ -136,6 +136,14 @@ export interface iTransform {
|
|
|
136
136
|
rotation: Euler;
|
|
137
137
|
scale: number;
|
|
138
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* ピッキングして得られた情報
|
|
141
|
+
*/
|
|
142
|
+
export interface iPickingInfo {
|
|
143
|
+
name: string;
|
|
144
|
+
index: number;
|
|
145
|
+
target: iVectorLike;
|
|
146
|
+
}
|
|
139
147
|
/**
|
|
140
148
|
* ビューア実装本体
|
|
141
149
|
*/
|
|
@@ -436,8 +444,9 @@ export declare class Core extends EventEmitter {
|
|
|
436
444
|
* フレームバッファに 3DGS のワールド座標をレンダリングし指定されたスクリーン座標から取得する
|
|
437
445
|
* @param x - 取得する X 座標(スクリーン空間を -1.0 ~ 1.0 に正規化した座標)
|
|
438
446
|
* @param y - 取得する Y 座標(スクリーン空間を -1.0 ~ 1.0 に正規化した座標, Y-down)
|
|
447
|
+
* @param isDebug - デバッグモード(有効化するとピッキングバッファを可視化)
|
|
439
448
|
*/
|
|
440
|
-
getWorldPositionByScreen(x: number, y: number): Promise<
|
|
449
|
+
getWorldPositionByScreen(x: number, y: number, isDebug?: boolean): Promise<iPickingInfo>;
|
|
441
450
|
/**
|
|
442
451
|
* 各種リソースを解放する
|
|
443
452
|
* ※このメソッドを呼び出すと、それまで利用していた canvas は再利用できなくなる
|
|
@@ -521,6 +530,11 @@ export declare class Core extends EventEmitter {
|
|
|
521
530
|
* @param enable - 使用可否を意味する真偽値
|
|
522
531
|
*/
|
|
523
532
|
setOrbitEnableLimit(enable: boolean): void;
|
|
533
|
+
/**
|
|
534
|
+
* オービットコントロールのズーム範囲制限の可否を設定する
|
|
535
|
+
* @param enable - 使用可否を意味する真偽値
|
|
536
|
+
*/
|
|
537
|
+
setOrbitEnableZoomLimit(enable: boolean): void;
|
|
524
538
|
/**
|
|
525
539
|
* オービットコントロールの注視点と座標の距離を取得する
|
|
526
540
|
* @returns 注視点と座標の距離
|
|
@@ -592,6 +606,16 @@ export declare class Core extends EventEmitter {
|
|
|
592
606
|
* @param value - 設定する値
|
|
593
607
|
*/
|
|
594
608
|
setOrbitRightLimit(value: number): void;
|
|
609
|
+
/**
|
|
610
|
+
* オービットコントロールのズームの最短距離を設定する
|
|
611
|
+
* @param value - 設定する値
|
|
612
|
+
*/
|
|
613
|
+
setOrbitZoomInLimit(value: number): void;
|
|
614
|
+
/**
|
|
615
|
+
* オービットコントロールのズームの最長距離を設定する
|
|
616
|
+
* @param value - 設定する値
|
|
617
|
+
*/
|
|
618
|
+
setOrbitZoomOutLimit(value: number): void;
|
|
595
619
|
/**
|
|
596
620
|
* ==========================================================================
|
|
597
621
|
* camera path controls
|
|
@@ -1017,12 +1041,14 @@ export declare class Core extends EventEmitter {
|
|
|
1017
1041
|
/**
|
|
1018
1042
|
* 箱の衝突判定パラメータ(Worker に渡すフォーマット)を生成する
|
|
1019
1043
|
* @param width - 一辺の幅
|
|
1044
|
+
* @param height - 一辺の高さ
|
|
1045
|
+
* @param depth - 一辺の奥行き
|
|
1020
1046
|
* @param position - ワールド空間における位置
|
|
1021
1047
|
* @param scale - ワールド空間における拡大縮小(スケール)
|
|
1022
1048
|
* @param inverseMatrix - ワールド変換の逆行列
|
|
1023
1049
|
* @param reversed - 判定の反転(球に内包されている状態を規定とし、それを反転するかどうか)
|
|
1024
1050
|
*/
|
|
1025
|
-
createCollisionBox(width: number, position: iVectorLike, scale: iVectorLike, inverseMatrix: Matrix4, reversed?: boolean): iCollisionTarget;
|
|
1051
|
+
createCollisionBox(width: number, height: number, depth: number, position: iVectorLike, scale: iVectorLike, inverseMatrix: Matrix4, reversed?: boolean): iCollisionTarget;
|
|
1026
1052
|
/**
|
|
1027
1053
|
* ==========================================================================
|
|
1028
1054
|
* selector
|
|
@@ -6,6 +6,7 @@ import { InstancedMeshEX } from '../extension/InstancedMeshEX';
|
|
|
6
6
|
export declare class TavioMesh extends EventEmitter {
|
|
7
7
|
private perspectiveCamera;
|
|
8
8
|
private worker;
|
|
9
|
+
private meshIndex;
|
|
9
10
|
private featureBits;
|
|
10
11
|
private majorVersionNumber;
|
|
11
12
|
private minorVersionNumber;
|
|
@@ -41,6 +42,7 @@ export declare class TavioMesh extends EventEmitter {
|
|
|
41
42
|
initialized: boolean;
|
|
42
43
|
initializedPoints: boolean;
|
|
43
44
|
initializedBackground: boolean;
|
|
45
|
+
sorted: boolean;
|
|
44
46
|
private positionAttribute;
|
|
45
47
|
private indexAttribute;
|
|
46
48
|
private gaussianGeometry;
|
|
@@ -72,7 +74,9 @@ export declare class TavioMesh extends EventEmitter {
|
|
|
72
74
|
* R は選択されているかどうかを意味し、Uint8 の各ビットがどのセレクターによるものかを意味する
|
|
73
75
|
* G は削除されているかどうかを意味し、将来的に undo/redo に対応するため削除操作のたびにインクリメントする
|
|
74
76
|
* B は tavio 形式時の生アルファを保持し、min-max で復元する前の状態のままシェーダに送る
|
|
75
|
-
* A
|
|
77
|
+
* A は何番目のメッシュなのか、を意味する整数と……
|
|
78
|
+
* 1つのメッシュに対して複数のデータを統合する際に何番目のデータであるかの整数インデックスを保持する
|
|
79
|
+
* データは 8bit のアルファチャンネル1つに対して 4bit 整数を2つパックして詰め込む
|
|
76
80
|
*/
|
|
77
81
|
/**
|
|
78
82
|
* this.gaussianTransformData についての覚書
|
|
@@ -89,11 +93,12 @@ export declare class TavioMesh extends EventEmitter {
|
|
|
89
93
|
static EVENTS: string[];
|
|
90
94
|
/**
|
|
91
95
|
* @constructor
|
|
96
|
+
* @param index - プロジェクト全体として何番目のメッシュのインスタンスかを意味するインデックス
|
|
92
97
|
* @param camera - worker の更新のためにカメラのインスタンスが必要
|
|
93
98
|
* @param material - メッシュの生成に使うマテリアルは上の層から指定されたものを使う
|
|
94
99
|
* @param pickingMaterial - メッシュの生成に使うマテリアルは上の層から指定されたものを使う
|
|
95
100
|
*/
|
|
96
|
-
constructor(camera: PerspectiveCamera, material: RawShaderMaterial, pinckingMaterial: RawShaderMaterial, viewerOption: iViewerOption);
|
|
101
|
+
constructor(index: number, camera: PerspectiveCamera, material: RawShaderMaterial, pinckingMaterial: RawShaderMaterial, viewerOption: iViewerOption);
|
|
97
102
|
/**
|
|
98
103
|
* ==========================================================================
|
|
99
104
|
* loader
|
|
@@ -284,9 +289,8 @@ export declare class TavioMesh extends EventEmitter {
|
|
|
284
289
|
*/
|
|
285
290
|
/**
|
|
286
291
|
* picking 用マテリアルに uniform 変数を同期する
|
|
287
|
-
* @param div - ピッキング用フレームバッファの大きさに対する除数
|
|
288
292
|
*/
|
|
289
|
-
syncPinckingMaterial(
|
|
293
|
+
syncPinckingMaterial(): void;
|
|
290
294
|
/**
|
|
291
295
|
* ソートを実行する
|
|
292
296
|
*/
|
|
@@ -60,26 +60,29 @@ export interface InitOutput {
|
|
|
60
60
|
readonly main: () => void;
|
|
61
61
|
readonly registerEventHandler: (a: number) => number;
|
|
62
62
|
readonly sort: (a: number, b: number, c: number) => number;
|
|
63
|
+
readonly __wbg_intounderlyingsource_free: (a: number, b: number) => void;
|
|
64
|
+
readonly intounderlyingsource_cancel: (a: number) => void;
|
|
65
|
+
readonly intounderlyingsource_pull: (a: number, b: number) => number;
|
|
63
66
|
readonly __wbg_intounderlyingbytesource_free: (a: number, b: number) => void;
|
|
67
|
+
readonly __wbg_intounderlyingsink_free: (a: number, b: number) => void;
|
|
64
68
|
readonly intounderlyingbytesource_autoAllocateChunkSize: (a: number) => number;
|
|
65
69
|
readonly intounderlyingbytesource_cancel: (a: number) => void;
|
|
66
70
|
readonly intounderlyingbytesource_pull: (a: number, b: number) => number;
|
|
67
71
|
readonly intounderlyingbytesource_start: (a: number, b: number) => void;
|
|
68
72
|
readonly intounderlyingbytesource_type: (a: number) => number;
|
|
69
|
-
readonly __wbg_intounderlyingsink_free: (a: number, b: number) => void;
|
|
70
73
|
readonly intounderlyingsink_abort: (a: number, b: number) => number;
|
|
71
74
|
readonly intounderlyingsink_close: (a: number) => number;
|
|
72
75
|
readonly intounderlyingsink_write: (a: number, b: number) => number;
|
|
73
|
-
readonly
|
|
74
|
-
readonly
|
|
75
|
-
readonly
|
|
76
|
-
readonly
|
|
77
|
-
readonly
|
|
78
|
-
readonly __wasm_bindgen_func_elem_721: (a: number, b: number, c: number) => void;
|
|
76
|
+
readonly __wasm_bindgen_func_elem_388: (a: number, b: number) => void;
|
|
77
|
+
readonly __wasm_bindgen_func_elem_741: (a: number, b: number) => void;
|
|
78
|
+
readonly __wasm_bindgen_func_elem_730: (a: number, b: number, c: number, d: number) => void;
|
|
79
|
+
readonly __wasm_bindgen_func_elem_1624: (a: number, b: number, c: number, d: number) => void;
|
|
80
|
+
readonly __wasm_bindgen_func_elem_400: (a: number, b: number, c: number) => void;
|
|
79
81
|
readonly __wbindgen_export: (a: number, b: number) => number;
|
|
80
82
|
readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
|
|
81
83
|
readonly __wbindgen_export3: (a: number) => void;
|
|
82
84
|
readonly __wbindgen_export4: (a: number, b: number, c: number) => void;
|
|
85
|
+
readonly __wbindgen_add_to_stack_pointer: (a: number) => number;
|
|
83
86
|
readonly __wbindgen_start: () => void;
|
|
84
87
|
}
|
|
85
88
|
|