@shapediver/viewer.shared.node-tree 2.12.8 → 3.0.0
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/implementation/AbstractTreeNodeData.d.ts +13 -5
- package/dist/implementation/AbstractTreeNodeData.d.ts.map +1 -1
- package/dist/implementation/AbstractTreeNodeData.js +29 -19
- package/dist/implementation/AbstractTreeNodeData.js.map +1 -1
- package/dist/implementation/Tree.d.ts +15 -0
- package/dist/implementation/Tree.d.ts.map +1 -0
- package/dist/implementation/{AbstractTree.js → Tree.js} +26 -20
- package/dist/implementation/Tree.js.map +1 -0
- package/dist/implementation/{AbstractTreeNode.d.ts → TreeNode.d.ts} +35 -27
- package/dist/implementation/TreeNode.d.ts.map +1 -0
- package/dist/implementation/TreeNode.js +348 -0
- package/dist/implementation/TreeNode.js.map +1 -0
- package/dist/index.d.ts +9 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/interfaces/ITree.d.ts +8 -9
- package/dist/interfaces/ITree.d.ts.map +1 -1
- package/dist/interfaces/ITreeNode.d.ts +36 -23
- package/dist/interfaces/ITreeNode.d.ts.map +1 -1
- package/dist/interfaces/ITreeNode.js +1 -0
- package/dist/interfaces/ITreeNode.js.map +1 -1
- package/dist/interfaces/ITreeNodeData.d.ts +20 -10
- package/dist/interfaces/ITreeNodeData.d.ts.map +1 -1
- package/package.json +5 -7
- package/src/implementation/AbstractTreeNodeData.ts +38 -26
- package/src/implementation/{AbstractTree.ts → Tree.ts} +29 -19
- package/src/implementation/{AbstractTreeNode.ts → TreeNode.ts} +124 -96
- package/src/index.ts +12 -13
- package/src/interfaces/ITree.ts +8 -13
- package/src/interfaces/ITreeNode.ts +43 -28
- package/src/interfaces/ITreeNodeData.ts +20 -12
- package/dist/implementation/AbstractTree.d.ts +0 -14
- package/dist/implementation/AbstractTree.d.ts.map +0 -1
- package/dist/implementation/AbstractTree.js.map +0 -1
- package/dist/implementation/AbstractTreeNode.d.ts.map +0 -1
- package/dist/implementation/AbstractTreeNode.js +0 -321
- package/dist/implementation/AbstractTreeNode.js.map +0 -1
- package/dist/implementation/three/AbstractTreeNodeDataThreeJs.d.ts +0 -10
- package/dist/implementation/three/AbstractTreeNodeDataThreeJs.d.ts.map +0 -1
- package/dist/implementation/three/AbstractTreeNodeDataThreeJs.js +0 -23
- package/dist/implementation/three/AbstractTreeNodeDataThreeJs.js.map +0 -1
- package/dist/implementation/three/Tree.d.ts +0 -9
- package/dist/implementation/three/Tree.d.ts.map +0 -1
- package/dist/implementation/three/Tree.js +0 -19
- package/dist/implementation/three/Tree.js.map +0 -1
- package/dist/implementation/three/TreeNodeThreejs.d.ts +0 -13
- package/dist/implementation/three/TreeNodeThreejs.d.ts.map +0 -1
- package/dist/implementation/three/TreeNodeThreejs.js +0 -35
- package/dist/implementation/three/TreeNodeThreejs.js.map +0 -1
- package/dist/interfaces/three/ITreeNodeDataThreeJs.d.ts +0 -11
- package/dist/interfaces/three/ITreeNodeDataThreeJs.d.ts.map +0 -1
- package/dist/interfaces/three/ITreeNodeDataThreeJs.js +0 -3
- package/dist/interfaces/three/ITreeNodeDataThreeJs.js.map +0 -1
- package/dist/interfaces/three/ITreeNodeThreeJs.d.ts +0 -17
- package/dist/interfaces/three/ITreeNodeThreeJs.d.ts.map +0 -1
- package/dist/interfaces/three/ITreeNodeThreeJs.js +0 -3
- package/dist/interfaces/three/ITreeNodeThreeJs.js.map +0 -1
- package/dist/interfaces/three/ITreeThreeJs.d.ts +0 -5
- package/dist/interfaces/three/ITreeThreeJs.d.ts.map +0 -1
- package/dist/interfaces/three/ITreeThreeJs.js +0 -3
- package/dist/interfaces/three/ITreeThreeJs.js.map +0 -1
- package/src/implementation/three/AbstractTreeNodeDataThreeJs.ts +0 -12
- package/src/implementation/three/Tree.ts +0 -28
- package/src/implementation/three/TreeNodeThreeJs.ts +0 -21
- package/src/interfaces/three/ITreeNodeDataThreeJs.ts +0 -13
- package/src/interfaces/three/ITreeNodeThreeJs.ts +0 -19
- package/src/interfaces/three/ITreeThreeJs.ts +0 -4
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractTreeNodeDataThreeJs.js","sourceRoot":"","sources":["../../../src/implementation/three/AbstractTreeNodeDataThreeJs.ts"],"names":[],"mappings":";;;;;;;;;AACA,kEAA+D;AAG/D,MAAsB,2BAA4B,SAAQ,2CAA0C;IAApG;;QACI,qDAAwG,EAAE,EAAC;QAC3G,mEAA4N,IAAI,EAAC;IAKrO,CAAC;IAHG,IAAW,aAAa;QACpB,OAAO,uBAAA,IAAI,kDAAe,CAAC;IAC/B,CAAC;CACJ;AAPD,kEAOC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeThreeJs } from "../../interfaces/three/ITreeNodeThreeJs";
|
|
2
|
-
import { ITreeThreeJs } from "../../interfaces/three/ITreeThreeJs";
|
|
3
|
-
import { AbstractTree } from "../AbstractTree";
|
|
4
|
-
export declare class Tree extends AbstractTree<ITreeNodeThreeJs> implements ITreeThreeJs {
|
|
5
|
-
private static _instance;
|
|
6
|
-
private constructor();
|
|
7
|
-
static get instance(): Tree;
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=Tree.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../../../src/implementation/three/Tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,qBAAa,IAAK,SAAQ,YAAY,CAAC,gBAAgB,CAAE,YAAW,YAAY;IAG5E,OAAO,CAAC,MAAM,CAAC,SAAS,CAAO;IAM/B,OAAO;IAQP,WAAkB,QAAQ,SAEzB;CAGJ"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Tree = void 0;
|
|
4
|
-
const AbstractTree_1 = require("../AbstractTree");
|
|
5
|
-
const TreeNodeThreejs_1 = require("./TreeNodeThreejs");
|
|
6
|
-
class Tree extends AbstractTree_1.AbstractTree {
|
|
7
|
-
// #endregion Properties (1)
|
|
8
|
-
// #region Constructors (1)
|
|
9
|
-
constructor() {
|
|
10
|
-
super(new TreeNodeThreejs_1.TreeNodeThreeJs('root'));
|
|
11
|
-
}
|
|
12
|
-
// #endregion Constructors (1)
|
|
13
|
-
// #region Public Static Accessors (1)
|
|
14
|
-
static get instance() {
|
|
15
|
-
return this._instance || (this._instance = new this());
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
exports.Tree = Tree;
|
|
19
|
-
//# sourceMappingURL=Tree.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../../src/implementation/three/Tree.ts"],"names":[],"mappings":";;;AAEA,kDAA+C;AAC/C,uDAAoD;AAEpD,MAAa,IAAK,SAAQ,2BAA8B;IAKpD,4BAA4B;IAE5B,2BAA2B;IAE3B;QACI,KAAK,CAAC,IAAI,iCAAe,CAAC,MAAM,CAAC,CAAC,CAAA;IACtC,CAAC;IAED,8BAA8B;IAE9B,sCAAsC;IAE/B,MAAM,KAAK,QAAQ;QACtB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;CAGJ;AAtBD,oBAsBC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeDataThreeJs } from "../../interfaces/three/ITreeNodeDataThreeJs";
|
|
2
|
-
import { ITreeNodeThreeJs } from "../../interfaces/three/ITreeNodeThreeJs";
|
|
3
|
-
import { AbstractTreeNode } from "../AbstractTreeNode";
|
|
4
|
-
import * as THREE from "three";
|
|
5
|
-
export declare class TreeNodeThreeJs extends AbstractTreeNode<ITreeNodeThreeJs, ITreeNodeDataThreeJs> implements ITreeNodeThreeJs {
|
|
6
|
-
#private;
|
|
7
|
-
get threeJsObject(): {
|
|
8
|
-
[key: string]: THREE.Object3D;
|
|
9
|
-
};
|
|
10
|
-
get updateCallbackThreeJsObject(): ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null;
|
|
11
|
-
set updateCallbackThreeJsObject(value: ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null);
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=TreeNodeThreejs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TreeNodeThreejs.d.ts","sourceRoot":"","sources":["../../../src/implementation/three/TreeNodeThreejs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,gBAAgB,EAAE,oBAAoB,CAAE,YAAW,gBAAgB;;IAIrH,IAAW,aAAa,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAA;KAAE,CAE5D;IAED,IAAW,2BAA2B,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAE5H;IAED,IAAW,2BAA2B,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,EAEhI;CACJ"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
|
-
};
|
|
7
|
-
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
8
|
-
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
9
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
10
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
11
|
-
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
12
|
-
};
|
|
13
|
-
var _TreeNodeThreeJs_threeJsObject, _TreeNodeThreeJs_updateCallbackThreeJsObject;
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.TreeNodeThreeJs = void 0;
|
|
16
|
-
const AbstractTreeNode_1 = require("../AbstractTreeNode");
|
|
17
|
-
class TreeNodeThreeJs extends AbstractTreeNode_1.AbstractTreeNode {
|
|
18
|
-
constructor() {
|
|
19
|
-
super(...arguments);
|
|
20
|
-
_TreeNodeThreeJs_threeJsObject.set(this, {});
|
|
21
|
-
_TreeNodeThreeJs_updateCallbackThreeJsObject.set(this, null);
|
|
22
|
-
}
|
|
23
|
-
get threeJsObject() {
|
|
24
|
-
return __classPrivateFieldGet(this, _TreeNodeThreeJs_threeJsObject, "f");
|
|
25
|
-
}
|
|
26
|
-
get updateCallbackThreeJsObject() {
|
|
27
|
-
return __classPrivateFieldGet(this, _TreeNodeThreeJs_updateCallbackThreeJsObject, "f");
|
|
28
|
-
}
|
|
29
|
-
set updateCallbackThreeJsObject(value) {
|
|
30
|
-
__classPrivateFieldSet(this, _TreeNodeThreeJs_updateCallbackThreeJsObject, value, "f");
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.TreeNodeThreeJs = TreeNodeThreeJs;
|
|
34
|
-
_TreeNodeThreeJs_threeJsObject = new WeakMap(), _TreeNodeThreeJs_updateCallbackThreeJsObject = new WeakMap();
|
|
35
|
-
//# sourceMappingURL=TreeNodeThreejs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TreeNodeThreejs.js","sourceRoot":"","sources":["../../../src/implementation/three/TreeNodeThreejs.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,0DAAuD;AAGvD,MAAa,eAAgB,SAAQ,mCAAwD;IAA7F;;QACI,yCAAoD,EAAE,EAAC;QACvD,uDAAoH,IAAI,EAAC;IAa7H,CAAC;IAXG,IAAW,aAAa;QACpB,OAAO,uBAAA,IAAI,sCAAe,CAAC;IAC/B,CAAC;IAED,IAAW,2BAA2B;QAClC,OAAO,uBAAA,IAAI,oDAA6B,CAAC;IAC7C,CAAC;IAED,IAAW,2BAA2B,CAAC,KAA0F;QAC7H,uBAAA,IAAI,gDAAgC,KAAK,MAAA,CAAC;IAC9C,CAAC;CACJ;AAfD,0CAeC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeData } from "../ITreeNodeData";
|
|
2
|
-
import * as THREE from "three";
|
|
3
|
-
export interface ITreeNodeDataThreeJs extends ITreeNodeData<ITreeNodeDataThreeJs> {
|
|
4
|
-
/**
|
|
5
|
-
* The threeJs object that is created for each viewport as a representation of the tree node data item.
|
|
6
|
-
*/
|
|
7
|
-
threeJsObject: {
|
|
8
|
-
[key: string]: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined;
|
|
9
|
-
};
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=ITreeNodeDataThreeJs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeNodeDataThreeJs.d.ts","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeNodeDataThreeJs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,WAAW,oBAAqB,SAAQ,aAAa,CAAC,oBAAoB,CAAC;IAG7E;;OAEG;IACH,aAAa,EAAE;QAAE,CAAC,GAAG,EAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAA;KAAE,CAAC;CAGvG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeNodeDataThreeJs.js","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeNodeDataThreeJs.ts"],"names":[],"mappings":""}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ITreeNode } from "../ITreeNode";
|
|
2
|
-
import { ITreeNodeDataThreeJs } from "./ITreeNodeDataThreeJs";
|
|
3
|
-
import * as THREE from "three";
|
|
4
|
-
export interface ITreeNodeThreeJs extends ITreeNode<ITreeNodeThreeJs, ITreeNodeDataThreeJs> {
|
|
5
|
-
/**
|
|
6
|
-
* The threeJs object that is created for each viewport as a representation of the tree node item.
|
|
7
|
-
*/
|
|
8
|
-
threeJsObject: {
|
|
9
|
-
[key: string]: THREE.Object3D;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* The update callback that is called whenever the threeJs object is replaced internally.
|
|
13
|
-
* Changes that were done to the object can be reapplied here.
|
|
14
|
-
*/
|
|
15
|
-
updateCallbackThreeJsObject: ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=ITreeNodeThreeJs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeNodeThreeJs.d.ts","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeNodeThreeJs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,WAAW,gBAAiB,SAAQ,SAAS,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IAGvF;;OAEG;IACH,aAAa,EAAE;QAAE,CAAC,GAAG,EAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAA;KAAE,CAAC;IAChD;;;OAGG;IACH,2BAA2B,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CAGpH"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeNodeThreeJs.js","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeNodeThreeJs.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeThreeJs.d.ts","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeThreeJs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,gBAAgB,CAAC;CAAI"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ITreeThreeJs.js","sourceRoot":"","sources":["../../../src/interfaces/three/ITreeThreeJs.ts"],"names":[],"mappings":""}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeDataThreeJs } from "../../interfaces/three/ITreeNodeDataThreeJs";
|
|
2
|
-
import { AbstractTreeNodeData } from "../AbstractTreeNodeData";
|
|
3
|
-
import * as THREE from "three";
|
|
4
|
-
|
|
5
|
-
export abstract class AbstractTreeNodeDataThreeJs extends AbstractTreeNodeData<ITreeNodeDataThreeJs> implements ITreeNodeDataThreeJs {
|
|
6
|
-
#threeJsObject: { [key: string]: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined } = {};
|
|
7
|
-
#updateCallbackThreeJsObject: ((newObj: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined, oldObj: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined, viewport: string) => void) | null = null;
|
|
8
|
-
|
|
9
|
-
public get threeJsObject(): { [key: string]: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined } {
|
|
10
|
-
return this.#threeJsObject;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeThreeJs } from "../../interfaces/three/ITreeNodeThreeJs";
|
|
2
|
-
import { ITreeThreeJs } from "../../interfaces/three/ITreeThreeJs";
|
|
3
|
-
import { AbstractTree } from "../AbstractTree";
|
|
4
|
-
import { TreeNodeThreeJs } from "./TreeNodeThreejs";
|
|
5
|
-
|
|
6
|
-
export class Tree extends AbstractTree<ITreeNodeThreeJs> implements ITreeThreeJs {
|
|
7
|
-
// #region Properties (1)
|
|
8
|
-
|
|
9
|
-
private static _instance: Tree;
|
|
10
|
-
|
|
11
|
-
// #endregion Properties (1)
|
|
12
|
-
|
|
13
|
-
// #region Constructors (1)
|
|
14
|
-
|
|
15
|
-
private constructor() {
|
|
16
|
-
super(new TreeNodeThreeJs('root'))
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
// #endregion Constructors (1)
|
|
20
|
-
|
|
21
|
-
// #region Public Static Accessors (1)
|
|
22
|
-
|
|
23
|
-
public static get instance() {
|
|
24
|
-
return this._instance || (this._instance = new this());
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// #endregion Public Static Accessors (1)
|
|
28
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeDataThreeJs } from "../../interfaces/three/ITreeNodeDataThreeJs";
|
|
2
|
-
import { ITreeNodeThreeJs } from "../../interfaces/three/ITreeNodeThreeJs";
|
|
3
|
-
import { AbstractTreeNode } from "../AbstractTreeNode";
|
|
4
|
-
import * as THREE from "three";
|
|
5
|
-
|
|
6
|
-
export class TreeNodeThreeJs extends AbstractTreeNode<ITreeNodeThreeJs, ITreeNodeDataThreeJs> implements ITreeNodeThreeJs {
|
|
7
|
-
#threeJsObject: { [key: string]: THREE.Object3D } = {};
|
|
8
|
-
#updateCallbackThreeJsObject: ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null = null;
|
|
9
|
-
|
|
10
|
-
public get threeJsObject(): { [key: string]: THREE.Object3D } {
|
|
11
|
-
return this.#threeJsObject;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
public get updateCallbackThreeJsObject(): ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null {
|
|
15
|
-
return this.#updateCallbackThreeJsObject;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
public set updateCallbackThreeJsObject(value: ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null) {
|
|
19
|
-
this.#updateCallbackThreeJsObject = value;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ITreeNodeData } from "../ITreeNodeData";
|
|
2
|
-
import * as THREE from "three";
|
|
3
|
-
|
|
4
|
-
export interface ITreeNodeDataThreeJs extends ITreeNodeData<ITreeNodeDataThreeJs> {
|
|
5
|
-
// #region Properties (1)
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* The threeJs object that is created for each viewport as a representation of the tree node data item.
|
|
9
|
-
*/
|
|
10
|
-
threeJsObject: { [key:string]: THREE.Object3D | THREE.BufferGeometry | THREE.Material | undefined };
|
|
11
|
-
|
|
12
|
-
// #endregion Properties (1)
|
|
13
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { ITreeNode } from "../ITreeNode";
|
|
2
|
-
import { ITreeNodeDataThreeJs } from "./ITreeNodeDataThreeJs";
|
|
3
|
-
import * as THREE from "three";
|
|
4
|
-
|
|
5
|
-
export interface ITreeNodeThreeJs extends ITreeNode<ITreeNodeThreeJs, ITreeNodeDataThreeJs> {
|
|
6
|
-
// #region Properties (2)
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* The threeJs object that is created for each viewport as a representation of the tree node item.
|
|
10
|
-
*/
|
|
11
|
-
threeJsObject: { [key:string]: THREE.Object3D };
|
|
12
|
-
/**
|
|
13
|
-
* The update callback that is called whenever the threeJs object is replaced internally.
|
|
14
|
-
* Changes that were done to the object can be reapplied here.
|
|
15
|
-
*/
|
|
16
|
-
updateCallbackThreeJsObject: ((newObj: THREE.Object3D, oldObj: THREE.Object3D, viewport: string) => void) | null;
|
|
17
|
-
|
|
18
|
-
// #endregion Properties (2)
|
|
19
|
-
}
|