@combeenation/3d-viewer 12.4.1 → 13.0.1
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/lib-cjs/buildinfo.json +1 -1
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
- package/dist/lib-cjs/index.d.ts +63 -63
- package/dist/lib-cjs/index.js +81 -114
- package/dist/lib-cjs/index.js.map +1 -1
- package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.d.ts +10 -0
- package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js +132 -0
- package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js.map +1 -0
- package/dist/lib-cjs/internal/cloning-helper.d.ts +19 -0
- package/dist/lib-cjs/internal/cloning-helper.js +164 -0
- package/dist/lib-cjs/internal/cloning-helper.js.map +1 -0
- package/dist/lib-cjs/internal/device-helper.d.ts +9 -0
- package/dist/lib-cjs/{api/util/deviceHelper.js → internal/device-helper.js} +7 -11
- package/dist/lib-cjs/internal/device-helper.js.map +1 -0
- package/dist/lib-cjs/internal/geometry-helper.d.ts +21 -0
- package/dist/lib-cjs/{api/util/geometryHelper.js → internal/geometry-helper.js} +58 -25
- package/dist/lib-cjs/internal/geometry-helper.js.map +1 -0
- package/dist/lib-cjs/internal/metadata-helper.d.ts +26 -0
- package/dist/lib-cjs/internal/metadata-helper.js +51 -0
- package/dist/lib-cjs/internal/metadata-helper.js.map +1 -0
- package/dist/lib-cjs/internal/paintable-helper.d.ts +40 -0
- package/dist/lib-cjs/internal/paintable-helper.js +287 -0
- package/dist/lib-cjs/internal/paintable-helper.js.map +1 -0
- package/dist/lib-cjs/internal/tags-helper.d.ts +12 -0
- package/dist/lib-cjs/internal/tags-helper.js +38 -0
- package/dist/lib-cjs/internal/tags-helper.js.map +1 -0
- package/dist/lib-cjs/manager/camera-manager.d.ts +51 -0
- package/dist/lib-cjs/manager/camera-manager.js +154 -0
- package/dist/lib-cjs/manager/camera-manager.js.map +1 -0
- package/dist/lib-cjs/manager/debug-manager.d.ts +60 -0
- package/dist/lib-cjs/manager/debug-manager.js +218 -0
- package/dist/lib-cjs/manager/debug-manager.js.map +1 -0
- package/dist/lib-cjs/manager/event-manager.d.ts +52 -0
- package/dist/lib-cjs/manager/event-manager.js +72 -0
- package/dist/lib-cjs/manager/event-manager.js.map +1 -0
- package/dist/lib-cjs/{api/manager/gltfExportManager.d.ts → manager/gltf-export-manager.d.ts} +29 -34
- package/dist/lib-cjs/{api/manager/gltfExportManager.js → manager/gltf-export-manager.js} +103 -124
- package/dist/lib-cjs/manager/gltf-export-manager.js.map +1 -0
- package/dist/lib-cjs/manager/material-manager.d.ts +35 -0
- package/dist/lib-cjs/manager/material-manager.js +126 -0
- package/dist/lib-cjs/manager/material-manager.js.map +1 -0
- package/dist/lib-cjs/manager/model-manager.d.ts +145 -0
- package/dist/lib-cjs/manager/model-manager.js +383 -0
- package/dist/lib-cjs/manager/model-manager.js.map +1 -0
- package/dist/lib-cjs/manager/parameter-manager.d.ts +210 -0
- package/dist/lib-cjs/manager/parameter-manager.js +515 -0
- package/dist/lib-cjs/manager/parameter-manager.js.map +1 -0
- package/dist/lib-cjs/manager/scene-manager.d.ts +45 -0
- package/dist/lib-cjs/manager/scene-manager.js +65 -0
- package/dist/lib-cjs/manager/scene-manager.js.map +1 -0
- package/dist/lib-cjs/manager/screenshot-manager.d.ts +36 -0
- package/dist/lib-cjs/manager/screenshot-manager.js +40 -0
- package/dist/lib-cjs/manager/screenshot-manager.js.map +1 -0
- package/dist/lib-cjs/manager/texture-manager.d.ts +12 -0
- package/dist/lib-cjs/manager/texture-manager.js +44 -0
- package/dist/lib-cjs/manager/texture-manager.js.map +1 -0
- package/dist/lib-cjs/{api/classes/viewerError.d.ts → viewer-error.d.ts} +6 -1
- package/dist/lib-cjs/{api/classes/viewerError.js → viewer-error.js} +7 -2
- package/dist/lib-cjs/viewer-error.js.map +1 -0
- package/dist/lib-cjs/viewer.d.ts +117 -0
- package/dist/lib-cjs/viewer.js +222 -0
- package/dist/lib-cjs/viewer.js.map +1 -0
- package/package.json +10 -11
- package/src/dev.ts +14 -37
- package/src/{types.d.ts → global-types.d.ts} +8 -18
- package/src/index.ts +79 -113
- package/src/internal/cbn-custom-babylon-loader-plugin.ts +159 -0
- package/src/internal/cloning-helper.ts +225 -0
- package/src/internal/device-helper.ts +25 -0
- package/src/{api/util/geometryHelper.ts → internal/geometry-helper.ts} +63 -24
- package/src/internal/metadata-helper.ts +63 -0
- package/src/internal/paintable-helper.ts +310 -0
- package/src/internal/tags-helper.ts +41 -0
- package/src/manager/camera-manager.ts +236 -0
- package/src/manager/debug-manager.ts +245 -0
- package/src/manager/event-manager.ts +72 -0
- package/src/{api/manager/gltfExportManager.ts → manager/gltf-export-manager.ts} +132 -125
- package/src/manager/material-manager.ts +135 -0
- package/src/manager/model-manager.ts +458 -0
- package/src/manager/parameter-manager.ts +652 -0
- package/src/manager/scene-manager.ts +101 -0
- package/src/manager/screenshot-manager.ts +59 -0
- package/src/manager/texture-manager.ts +32 -0
- package/src/{api/classes/viewerError.ts → viewer-error.ts} +6 -1
- package/src/viewer.ts +296 -0
- package/dist/lib-cjs/api/classes/animationInterface.d.ts +0 -8
- package/dist/lib-cjs/api/classes/animationInterface.js +0 -3
- package/dist/lib-cjs/api/classes/animationInterface.js.map +0 -1
- package/dist/lib-cjs/api/classes/dottedPath.d.ts +0 -79
- package/dist/lib-cjs/api/classes/dottedPath.js +0 -167
- package/dist/lib-cjs/api/classes/dottedPath.js.map +0 -1
- package/dist/lib-cjs/api/classes/element.d.ts +0 -153
- package/dist/lib-cjs/api/classes/element.js +0 -703
- package/dist/lib-cjs/api/classes/element.js.map +0 -1
- package/dist/lib-cjs/api/classes/event.d.ts +0 -401
- package/dist/lib-cjs/api/classes/event.js +0 -425
- package/dist/lib-cjs/api/classes/event.js.map +0 -1
- package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +0 -26
- package/dist/lib-cjs/api/classes/eventBroadcaster.js +0 -50
- package/dist/lib-cjs/api/classes/eventBroadcaster.js.map +0 -1
- package/dist/lib-cjs/api/classes/fuzzyMap.d.ts +0 -7
- package/dist/lib-cjs/api/classes/fuzzyMap.js +0 -22
- package/dist/lib-cjs/api/classes/fuzzyMap.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameter.d.ts +0 -410
- package/dist/lib-cjs/api/classes/parameter.js +0 -643
- package/dist/lib-cjs/api/classes/parameter.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameterObservable.d.ts +0 -36
- package/dist/lib-cjs/api/classes/parameterObservable.js +0 -73
- package/dist/lib-cjs/api/classes/parameterObservable.js.map +0 -1
- package/dist/lib-cjs/api/classes/parameterizable.d.ts +0 -15
- package/dist/lib-cjs/api/classes/parameterizable.js +0 -103
- package/dist/lib-cjs/api/classes/parameterizable.js.map +0 -1
- package/dist/lib-cjs/api/classes/placementAnimation.d.ts +0 -45
- package/dist/lib-cjs/api/classes/placementAnimation.js +0 -177
- package/dist/lib-cjs/api/classes/placementAnimation.js.map +0 -1
- package/dist/lib-cjs/api/classes/variant.d.ts +0 -261
- package/dist/lib-cjs/api/classes/variant.js +0 -873
- package/dist/lib-cjs/api/classes/variant.js.map +0 -1
- package/dist/lib-cjs/api/classes/variantInstance.d.ts +0 -53
- package/dist/lib-cjs/api/classes/variantInstance.js +0 -126
- package/dist/lib-cjs/api/classes/variantInstance.js.map +0 -1
- package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +0 -17
- package/dist/lib-cjs/api/classes/variantParameterizable.js +0 -87
- package/dist/lib-cjs/api/classes/variantParameterizable.js.map +0 -1
- package/dist/lib-cjs/api/classes/viewer.d.ts +0 -215
- package/dist/lib-cjs/api/classes/viewer.js +0 -709
- package/dist/lib-cjs/api/classes/viewer.js.map +0 -1
- package/dist/lib-cjs/api/classes/viewerError.js.map +0 -1
- package/dist/lib-cjs/api/classes/viewerLight.d.ts +0 -66
- package/dist/lib-cjs/api/classes/viewerLight.js +0 -345
- package/dist/lib-cjs/api/classes/viewerLight.js.map +0 -1
- package/dist/lib-cjs/api/internal/lensRendering.d.ts +0 -8
- package/dist/lib-cjs/api/internal/lensRendering.js +0 -12
- package/dist/lib-cjs/api/internal/lensRendering.js.map +0 -1
- package/dist/lib-cjs/api/internal/sceneSetup.d.ts +0 -13
- package/dist/lib-cjs/api/internal/sceneSetup.js +0 -228
- package/dist/lib-cjs/api/internal/sceneSetup.js.map +0 -1
- package/dist/lib-cjs/api/manager/animationManager.d.ts +0 -30
- package/dist/lib-cjs/api/manager/animationManager.js +0 -127
- package/dist/lib-cjs/api/manager/animationManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/gltfExportManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/sceneManager.d.ts +0 -33
- package/dist/lib-cjs/api/manager/sceneManager.js +0 -129
- package/dist/lib-cjs/api/manager/sceneManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/tagManager.d.ts +0 -118
- package/dist/lib-cjs/api/manager/tagManager.js +0 -531
- package/dist/lib-cjs/api/manager/tagManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/textureLoadManager.d.ts +0 -22
- package/dist/lib-cjs/api/manager/textureLoadManager.js +0 -108
- package/dist/lib-cjs/api/manager/textureLoadManager.js.map +0 -1
- package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +0 -106
- package/dist/lib-cjs/api/manager/variantInstanceManager.js +0 -291
- package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +0 -1
- package/dist/lib-cjs/api/store/specStorage.d.ts +0 -32
- package/dist/lib-cjs/api/store/specStorage.js +0 -66
- package/dist/lib-cjs/api/store/specStorage.js.map +0 -1
- package/dist/lib-cjs/api/util/babylonHelper.d.ts +0 -238
- package/dist/lib-cjs/api/util/babylonHelper.js +0 -826
- package/dist/lib-cjs/api/util/babylonHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/debugHelper.d.ts +0 -9
- package/dist/lib-cjs/api/util/debugHelper.js +0 -94
- package/dist/lib-cjs/api/util/debugHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/deviceHelper.d.ts +0 -9
- package/dist/lib-cjs/api/util/deviceHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/geometryHelper.d.ts +0 -17
- package/dist/lib-cjs/api/util/geometryHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/globalTypes.d.ts +0 -490
- package/dist/lib-cjs/api/util/globalTypes.js +0 -2
- package/dist/lib-cjs/api/util/globalTypes.js.map +0 -1
- package/dist/lib-cjs/api/util/resourceHelper.d.ts +0 -58
- package/dist/lib-cjs/api/util/resourceHelper.js +0 -215
- package/dist/lib-cjs/api/util/resourceHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +0 -58
- package/dist/lib-cjs/api/util/sceneLoaderHelper.js +0 -229
- package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/stringHelper.d.ts +0 -13
- package/dist/lib-cjs/api/util/stringHelper.js +0 -33
- package/dist/lib-cjs/api/util/stringHelper.js.map +0 -1
- package/dist/lib-cjs/api/util/structureHelper.d.ts +0 -9
- package/dist/lib-cjs/api/util/structureHelper.js +0 -58
- package/dist/lib-cjs/api/util/structureHelper.js.map +0 -1
- package/src/api/classes/animationInterface.ts +0 -10
- package/src/api/classes/dottedPath.ts +0 -181
- package/src/api/classes/element.ts +0 -766
- package/src/api/classes/event.ts +0 -457
- package/src/api/classes/eventBroadcaster.ts +0 -52
- package/src/api/classes/fuzzyMap.ts +0 -21
- package/src/api/classes/parameter.ts +0 -686
- package/src/api/classes/parameterObservable.ts +0 -73
- package/src/api/classes/parameterizable.ts +0 -87
- package/src/api/classes/placementAnimation.ts +0 -162
- package/src/api/classes/variant.ts +0 -965
- package/src/api/classes/variantInstance.ts +0 -123
- package/src/api/classes/variantParameterizable.ts +0 -83
- package/src/api/classes/viewer.ts +0 -751
- package/src/api/classes/viewerLight.ts +0 -335
- package/src/api/internal/debugViewer.ts +0 -90
- package/src/api/internal/lensRendering.ts +0 -9
- package/src/api/internal/sceneSetup.ts +0 -208
- package/src/api/manager/animationManager.ts +0 -143
- package/src/api/manager/sceneManager.ts +0 -134
- package/src/api/manager/tagManager.ts +0 -572
- package/src/api/manager/textureLoadManager.ts +0 -107
- package/src/api/manager/variantInstanceManager.ts +0 -306
- package/src/api/store/specStorage.ts +0 -68
- package/src/api/util/babylonHelper.ts +0 -915
- package/src/api/util/debugHelper.ts +0 -121
- package/src/api/util/deviceHelper.ts +0 -31
- package/src/api/util/globalTypes.ts +0 -566
- package/src/api/util/resourceHelper.ts +0 -201
- package/src/api/util/sceneLoaderHelper.ts +0 -247
- package/src/api/util/stringHelper.ts +0 -30
- package/src/api/util/structureHelper.ts +0 -62
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
import { AbstractScene, Color3, Material, TransformNode, Vector3, Viewer } from '../index';
|
|
2
|
+
/**
|
|
3
|
+
* Parameters with a built in observer implementation
|
|
4
|
+
*/
|
|
5
|
+
export declare const BuiltInParameter: {
|
|
6
|
+
Visible: string;
|
|
7
|
+
Material: string;
|
|
8
|
+
Position: string;
|
|
9
|
+
Rotation: string;
|
|
10
|
+
Scaling: string;
|
|
11
|
+
Color: string;
|
|
12
|
+
Roughness: string;
|
|
13
|
+
Metallic: string;
|
|
14
|
+
Paintable: string;
|
|
15
|
+
};
|
|
16
|
+
export declare type ParameterName = string;
|
|
17
|
+
export declare type ParameterValue = string | number | boolean;
|
|
18
|
+
export declare type TagParameterSubject = {
|
|
19
|
+
tagName: string;
|
|
20
|
+
nodeName?: never;
|
|
21
|
+
materialName?: never;
|
|
22
|
+
};
|
|
23
|
+
export declare type NodeParameterSubject = {
|
|
24
|
+
tagName?: never;
|
|
25
|
+
nodeName: string;
|
|
26
|
+
materialName?: never;
|
|
27
|
+
};
|
|
28
|
+
export declare type MaterialParameterSubject = {
|
|
29
|
+
tagName?: never;
|
|
30
|
+
nodeName?: never;
|
|
31
|
+
materialName: string;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* Defines which objects are affected by the parameter.\
|
|
35
|
+
* This can be single nodes and materials or tags, which can be used to apply a parameter to a group of nodes or
|
|
36
|
+
* materials.
|
|
37
|
+
*/
|
|
38
|
+
export declare type ParameterSubject = TagParameterSubject | NodeParameterSubject | MaterialParameterSubject;
|
|
39
|
+
/**
|
|
40
|
+
* Bulk of targeted parameter values, mainly used as input for {@link ParameterManager.setParameterValues} function.\
|
|
41
|
+
* E.g.
|
|
42
|
+
* ```
|
|
43
|
+
* [
|
|
44
|
+
* { nodeName: 'someMesh', parameterName: BuiltInParameter.Visible, value: false },
|
|
45
|
+
* { materialName: 'someMaterial', parameterName: BuiltInParameter.Color, value: '#DD0060' }
|
|
46
|
+
* ]
|
|
47
|
+
* ```
|
|
48
|
+
* Each parameter value entry has to set exactly one of the subject keys (`nodeName`, `materialName` or `tagName`)
|
|
49
|
+
*/
|
|
50
|
+
export declare type ParameterValues = (ParameterSubject & {
|
|
51
|
+
parameterName: ParameterName;
|
|
52
|
+
value: ParameterValue;
|
|
53
|
+
})[];
|
|
54
|
+
/**
|
|
55
|
+
* Definition of callback function for parameter change
|
|
56
|
+
*/
|
|
57
|
+
export declare type ParameterObserver = (payload: ParameterObserverPayload) => Promise<void>;
|
|
58
|
+
/**
|
|
59
|
+
* Payload of parameter observer.\
|
|
60
|
+
* Contains current data of parameter entry, which can be usefull for implementing the dedicated observer
|
|
61
|
+
*/
|
|
62
|
+
export declare type ParameterObserverPayload = {
|
|
63
|
+
subject: ParameterSubject;
|
|
64
|
+
nodes: TransformNode[];
|
|
65
|
+
materials: Material[];
|
|
66
|
+
newValue: ParameterValue;
|
|
67
|
+
oldValue: ParameterValue | undefined;
|
|
68
|
+
};
|
|
69
|
+
declare type ParameterEntry = {
|
|
70
|
+
subject: ParameterSubject;
|
|
71
|
+
parameterName: ParameterName;
|
|
72
|
+
value: ParameterValue;
|
|
73
|
+
oldValue: ParameterValue | undefined;
|
|
74
|
+
};
|
|
75
|
+
export declare class ParameterManager {
|
|
76
|
+
protected viewer: Viewer;
|
|
77
|
+
/**
|
|
78
|
+
* Parses and converts input to a boolean value, valid values are:
|
|
79
|
+
* - true / false
|
|
80
|
+
* - 1 / 0
|
|
81
|
+
*/
|
|
82
|
+
static parseBoolean(value: ParameterValue): boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Parses and converts input to a number value
|
|
85
|
+
*/
|
|
86
|
+
static parseNumber(value: ParameterValue): number;
|
|
87
|
+
/**
|
|
88
|
+
* Parses and converts input to a string value
|
|
89
|
+
*/
|
|
90
|
+
static parseString(value: ParameterValue): string;
|
|
91
|
+
/**
|
|
92
|
+
* Parses a string of format "(x,y,z)"" to a "Vector3".
|
|
93
|
+
*/
|
|
94
|
+
static parseVector(value: ParameterValue): Vector3;
|
|
95
|
+
/**
|
|
96
|
+
* Parses a string of format `'(x,y,z)'` with angular degrees to a `Vector3` with rotation information in radians.
|
|
97
|
+
*/
|
|
98
|
+
static parseRotation(value: ParameterValue): Vector3;
|
|
99
|
+
/**
|
|
100
|
+
* Parses a string of format `'#rrggbb'` or `'(r,g,b)'` to a `Color3`.
|
|
101
|
+
*/
|
|
102
|
+
static parseColor(value: ParameterValue): Color3;
|
|
103
|
+
protected _parameterEntries: ParameterEntry[];
|
|
104
|
+
protected _parameterObserver: {
|
|
105
|
+
[parameterName: ParameterName]: ParameterObserver;
|
|
106
|
+
};
|
|
107
|
+
constructor(viewer: Viewer);
|
|
108
|
+
/**
|
|
109
|
+
* Set parameter value for a certain node and calls the corresponding observer if the value has changed
|
|
110
|
+
*
|
|
111
|
+
* @returns "true" if parameter value has changed
|
|
112
|
+
*/
|
|
113
|
+
setNodeParameterValue(nodeName: string, parameterName: ParameterName, value: ParameterValue): Promise<boolean>;
|
|
114
|
+
/**
|
|
115
|
+
* Set parameter value for a certain material and calls the corresponding observer if the value has changed
|
|
116
|
+
*
|
|
117
|
+
* @returns "true" if parameter value has changed
|
|
118
|
+
*/
|
|
119
|
+
setMaterialParameterValue(materialName: string, parameterName: ParameterName, value: ParameterValue): Promise<boolean>;
|
|
120
|
+
/**
|
|
121
|
+
* Set parameter value for a certain tag and calls the corresponding observer if the value has changed.\
|
|
122
|
+
* Setting a parameter value on a tag can affect multiple nodes and tags, depending which of these objects contains
|
|
123
|
+
* the desired tag.
|
|
124
|
+
*
|
|
125
|
+
* @returns "true" if parameter value has changed
|
|
126
|
+
*/
|
|
127
|
+
setTagParameterValue(tagName: string, parameterName: ParameterName, value: ParameterValue): Promise<boolean>;
|
|
128
|
+
/**
|
|
129
|
+
* Set multiple parameter values simultaniously.\
|
|
130
|
+
* Tag parameters are applied before node and material parameters, node and materials are more specific and should
|
|
131
|
+
* have priority.
|
|
132
|
+
*
|
|
133
|
+
* @returns Array of parameters, which have changed values
|
|
134
|
+
*/
|
|
135
|
+
setParameterValues(values: ParameterValues): Promise<ParameterValues>;
|
|
136
|
+
/**
|
|
137
|
+
* @returns desired parameter value or "undefined" if parameter entry is not available.
|
|
138
|
+
*/
|
|
139
|
+
getParameterValue(subject: ParameterSubject, parameterName: ParameterName): ParameterValue | undefined;
|
|
140
|
+
/**
|
|
141
|
+
* Define observer callback for certain parameter.\
|
|
142
|
+
* There can only be one observer for a certain parameter name.\
|
|
143
|
+
* Parameter observers can not be overwritten once they are defined, this also includes system observers for
|
|
144
|
+
* {@link BuiltInParameter}.
|
|
145
|
+
*/
|
|
146
|
+
setParameterObserver(parameterName: ParameterName, observer: ParameterObserver): void;
|
|
147
|
+
/**
|
|
148
|
+
* Print all parameter entries in table format into the console
|
|
149
|
+
*/
|
|
150
|
+
printAllParameters(): void;
|
|
151
|
+
/**
|
|
152
|
+
* Applies all existing parameter entries to a certain "model", as defined in the {@link ModelManager}.\
|
|
153
|
+
* This can be usefull when updating the model before showing it in the scene.
|
|
154
|
+
*
|
|
155
|
+
* @internal
|
|
156
|
+
*/
|
|
157
|
+
applyAllParameterValuesToModel(model: AbstractScene): Promise<void>;
|
|
158
|
+
/**
|
|
159
|
+
* Applies all parameter values which are targeting a material.\
|
|
160
|
+
* This can be usefull when updating a material definition before creating it.
|
|
161
|
+
*
|
|
162
|
+
* @internal
|
|
163
|
+
*/
|
|
164
|
+
applyParameterValuesToMaterial(material: Material): Promise<void>;
|
|
165
|
+
/**
|
|
166
|
+
* @returns Desired parameter value of a certain node.
|
|
167
|
+
* Tags are considered as well but have lower priority than node parameters, as these are more specific.
|
|
168
|
+
*
|
|
169
|
+
* @internal
|
|
170
|
+
*/
|
|
171
|
+
getParameterValueOfNode(node: TransformNode, parameterName: string): ParameterValue | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* @returns Desired parameter value of a certain material.
|
|
174
|
+
* Tags are considered as well but have lower priority than material parameters, as these are more specific.
|
|
175
|
+
* Unused ATM, but added for consistency as counter part for {@link getParameterValueOfNode}
|
|
176
|
+
*
|
|
177
|
+
* @internal
|
|
178
|
+
*/
|
|
179
|
+
getParameterValueOfMaterial(material: Material, parameterName: string): ParameterValue | undefined;
|
|
180
|
+
/**
|
|
181
|
+
* Parameter observer implementation of default parameters
|
|
182
|
+
*/
|
|
183
|
+
protected _addBuiltInParameterObservers(): void;
|
|
184
|
+
/**
|
|
185
|
+
* Change parameter value in array of existing parameter entries or create a new entry
|
|
186
|
+
*
|
|
187
|
+
* @returns "true" if parameter has changed or wasn't available before
|
|
188
|
+
*/
|
|
189
|
+
protected _addParameterValue(subject: ParameterSubject, parameterName: ParameterName, value: ParameterValue): boolean;
|
|
190
|
+
/**
|
|
191
|
+
* Call parameter observer of desired parameter which usually apply the new values to the scene.
|
|
192
|
+
*
|
|
193
|
+
* @param assetContainer Asset container in which to look for the paramter entries subjects (e.g. the nodes and
|
|
194
|
+
* materials to which the parameter values should be applied to).\
|
|
195
|
+
* Defaults to `viewer.scene`.
|
|
196
|
+
*/
|
|
197
|
+
protected _applyParameterValues(parameterEntries: ParameterEntry[], assetContainer?: AbstractScene): Promise<void>;
|
|
198
|
+
/**
|
|
199
|
+
* Call parameter observer of desired parameter
|
|
200
|
+
*
|
|
201
|
+
* @param assetContainer Optionally add an "asset container", which actually represents a model in the
|
|
202
|
+
* {@link ModelManager}. Viewer scene is used if left empty.
|
|
203
|
+
*/
|
|
204
|
+
protected _applyParameterValue(subject: ParameterSubject, parameterName: ParameterName, assetContainer?: AbstractScene): Promise<void>;
|
|
205
|
+
protected _getAffectedMaterials(subject: ParameterSubject, assetContainer?: AbstractScene): Material[];
|
|
206
|
+
protected _getAffectedNodes(subject: ParameterSubject, assetContainer?: AbstractScene): TransformNode[];
|
|
207
|
+
protected _getEntry(subject: ParameterSubject, parameterName: ParameterName): ParameterEntry | undefined;
|
|
208
|
+
protected _getEntriesOfSubject(subject: ParameterSubject): ParameterEntry[];
|
|
209
|
+
}
|
|
210
|
+
export {};
|