babylonjs-node-editor 5.0.0-beta.6 → 5.0.0-beta.8-snapshot
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/babylon.nodeEditor.js +71173 -0
- package/dist/babylon.nodeEditor.js.map +1 -0
- package/dist/babylon.nodeEditor.min.js +3 -0
- package/dist/babylon.nodeEditor.min.js.LICENSE.txt +47 -0
- package/dist/babylon.nodeEditor.min.js.map +1 -0
- package/dist/babylon.nodeEditor.module.d.ts +2339 -0
- package/package.json +34 -22
- package/babylon.nodeEditor.js +0 -53
- package/babylon.nodeEditor.max.js +0 -67348
- package/babylon.nodeEditor.max.js.map +0 -1
- package/babylon.nodeEditor.module.d.ts +0 -5693
- package/readme.md +0 -1
|
@@ -0,0 +1,2339 @@
|
|
|
1
|
+
|
|
2
|
+
declare module "babylonjs-node-editor/blockTools" {
|
|
3
|
+
import { DiscardBlock } from "babylonjs/Materials/Node/Blocks/Fragment/discardBlock";
|
|
4
|
+
import { BonesBlock } from "babylonjs/Materials/Node/Blocks/Vertex/bonesBlock";
|
|
5
|
+
import { InstancesBlock } from "babylonjs/Materials/Node/Blocks/Vertex/instancesBlock";
|
|
6
|
+
import { MorphTargetsBlock } from "babylonjs/Materials/Node/Blocks/Vertex/morphTargetsBlock";
|
|
7
|
+
import { ImageProcessingBlock } from "babylonjs/Materials/Node/Blocks/Fragment/imageProcessingBlock";
|
|
8
|
+
import { ColorMergerBlock } from "babylonjs/Materials/Node/Blocks/colorMergerBlock";
|
|
9
|
+
import { VectorMergerBlock } from "babylonjs/Materials/Node/Blocks/vectorMergerBlock";
|
|
10
|
+
import { ColorSplitterBlock } from "babylonjs/Materials/Node/Blocks/colorSplitterBlock";
|
|
11
|
+
import { VectorSplitterBlock } from "babylonjs/Materials/Node/Blocks/vectorSplitterBlock";
|
|
12
|
+
import { RemapBlock } from "babylonjs/Materials/Node/Blocks/remapBlock";
|
|
13
|
+
import { TextureBlock } from "babylonjs/Materials/Node/Blocks/Dual/textureBlock";
|
|
14
|
+
import { ReflectionTextureBlock } from "babylonjs/Materials/Node/Blocks/Dual/reflectionTextureBlock";
|
|
15
|
+
import { LightBlock } from "babylonjs/Materials/Node/Blocks/Dual/lightBlock";
|
|
16
|
+
import { FogBlock } from "babylonjs/Materials/Node/Blocks/Dual/fogBlock";
|
|
17
|
+
import { VertexOutputBlock } from "babylonjs/Materials/Node/Blocks/Vertex/vertexOutputBlock";
|
|
18
|
+
import { FragmentOutputBlock } from "babylonjs/Materials/Node/Blocks/Fragment/fragmentOutputBlock";
|
|
19
|
+
import { NormalizeBlock } from "babylonjs/Materials/Node/Blocks/normalizeBlock";
|
|
20
|
+
import { AddBlock } from "babylonjs/Materials/Node/Blocks/addBlock";
|
|
21
|
+
import { ModBlock } from "babylonjs/Materials/Node/Blocks/modBlock";
|
|
22
|
+
import { ScaleBlock } from "babylonjs/Materials/Node/Blocks/scaleBlock";
|
|
23
|
+
import { TrigonometryBlock } from "babylonjs/Materials/Node/Blocks/trigonometryBlock";
|
|
24
|
+
import { ConditionalBlock } from "babylonjs/Materials/Node/Blocks/conditionalBlock";
|
|
25
|
+
import { ClampBlock } from "babylonjs/Materials/Node/Blocks/clampBlock";
|
|
26
|
+
import { CrossBlock } from "babylonjs/Materials/Node/Blocks/crossBlock";
|
|
27
|
+
import { DotBlock } from "babylonjs/Materials/Node/Blocks/dotBlock";
|
|
28
|
+
import { MultiplyBlock } from "babylonjs/Materials/Node/Blocks/multiplyBlock";
|
|
29
|
+
import { TransformBlock } from "babylonjs/Materials/Node/Blocks/transformBlock";
|
|
30
|
+
import { NodeMaterialBlockConnectionPointTypes } from "babylonjs/Materials/Node/Enums/nodeMaterialBlockConnectionPointTypes";
|
|
31
|
+
import { FresnelBlock } from "babylonjs/Materials/Node/Blocks/fresnelBlock";
|
|
32
|
+
import { LerpBlock } from "babylonjs/Materials/Node/Blocks/lerpBlock";
|
|
33
|
+
import { NLerpBlock } from "babylonjs/Materials/Node/Blocks/nLerpBlock";
|
|
34
|
+
import { DivideBlock } from "babylonjs/Materials/Node/Blocks/divideBlock";
|
|
35
|
+
import { SubtractBlock } from "babylonjs/Materials/Node/Blocks/subtractBlock";
|
|
36
|
+
import { StepBlock } from "babylonjs/Materials/Node/Blocks/stepBlock";
|
|
37
|
+
import { SmoothStepBlock } from "babylonjs/Materials/Node/Blocks/smoothStepBlock";
|
|
38
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
39
|
+
import { OneMinusBlock } from "babylonjs/Materials/Node/Blocks/oneMinusBlock";
|
|
40
|
+
import { ViewDirectionBlock } from "babylonjs/Materials/Node/Blocks/viewDirectionBlock";
|
|
41
|
+
import { LightInformationBlock } from "babylonjs/Materials/Node/Blocks/Vertex/lightInformationBlock";
|
|
42
|
+
import { MaxBlock } from "babylonjs/Materials/Node/Blocks/maxBlock";
|
|
43
|
+
import { MinBlock } from "babylonjs/Materials/Node/Blocks/minBlock";
|
|
44
|
+
import { PerturbNormalBlock } from "babylonjs/Materials/Node/Blocks/Fragment/perturbNormalBlock";
|
|
45
|
+
import { LengthBlock } from "babylonjs/Materials/Node/Blocks/lengthBlock";
|
|
46
|
+
import { DistanceBlock } from "babylonjs/Materials/Node/Blocks/distanceBlock";
|
|
47
|
+
import { FrontFacingBlock } from "babylonjs/Materials/Node/Blocks/Fragment/frontFacingBlock";
|
|
48
|
+
import { NegateBlock } from "babylonjs/Materials/Node/Blocks/negateBlock";
|
|
49
|
+
import { PowBlock } from "babylonjs/Materials/Node/Blocks/powBlock";
|
|
50
|
+
import { Scene } from "babylonjs/scene";
|
|
51
|
+
import { RandomNumberBlock } from "babylonjs/Materials/Node/Blocks/randomNumberBlock";
|
|
52
|
+
import { ReplaceColorBlock } from "babylonjs/Materials/Node/Blocks/replaceColorBlock";
|
|
53
|
+
import { PosterizeBlock } from "babylonjs/Materials/Node/Blocks/posterizeBlock";
|
|
54
|
+
import { ArcTan2Block } from "babylonjs/Materials/Node/Blocks/arcTan2Block";
|
|
55
|
+
import { ReciprocalBlock } from "babylonjs/Materials/Node/Blocks/reciprocalBlock";
|
|
56
|
+
import { GradientBlock } from "babylonjs/Materials/Node/Blocks/gradientBlock";
|
|
57
|
+
import { WaveBlock } from "babylonjs/Materials/Node/Blocks/waveBlock";
|
|
58
|
+
import { NodeMaterial } from "babylonjs/Materials/Node/nodeMaterial";
|
|
59
|
+
import { WorleyNoise3DBlock } from "babylonjs/Materials/Node/Blocks/worleyNoise3DBlock";
|
|
60
|
+
import { SimplexPerlin3DBlock } from "babylonjs/Materials/Node/Blocks/simplexPerlin3DBlock";
|
|
61
|
+
import { NormalBlendBlock } from "babylonjs/Materials/Node/Blocks/normalBlendBlock";
|
|
62
|
+
import { Rotate2dBlock } from "babylonjs/Materials/Node/Blocks/rotate2dBlock";
|
|
63
|
+
import { DerivativeBlock } from "babylonjs/Materials/Node/Blocks/Fragment/derivativeBlock";
|
|
64
|
+
import { RefractBlock } from "babylonjs/Materials/Node/Blocks/refractBlock";
|
|
65
|
+
import { ReflectBlock } from "babylonjs/Materials/Node/Blocks/reflectBlock";
|
|
66
|
+
import { DesaturateBlock } from "babylonjs/Materials/Node/Blocks/desaturateBlock";
|
|
67
|
+
import { PBRMetallicRoughnessBlock } from "babylonjs/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock";
|
|
68
|
+
import { SheenBlock } from "babylonjs/Materials/Node/Blocks/PBR/sheenBlock";
|
|
69
|
+
import { AnisotropyBlock } from "babylonjs/Materials/Node/Blocks/PBR/anisotropyBlock";
|
|
70
|
+
import { ReflectionBlock } from "babylonjs/Materials/Node/Blocks/PBR/reflectionBlock";
|
|
71
|
+
import { ClearCoatBlock } from "babylonjs/Materials/Node/Blocks/PBR/clearCoatBlock";
|
|
72
|
+
import { RefractionBlock } from "babylonjs/Materials/Node/Blocks/PBR/refractionBlock";
|
|
73
|
+
import { SubSurfaceBlock } from "babylonjs/Materials/Node/Blocks/PBR/subSurfaceBlock";
|
|
74
|
+
import { CurrentScreenBlock } from "babylonjs/Materials/Node/Blocks/Dual/currentScreenBlock";
|
|
75
|
+
import { ParticleTextureBlock } from "babylonjs/Materials/Node/Blocks/Particle/particleTextureBlock";
|
|
76
|
+
import { ParticleRampGradientBlock } from "babylonjs/Materials/Node/Blocks/Particle/particleRampGradientBlock";
|
|
77
|
+
import { ParticleBlendMultiplyBlock } from "babylonjs/Materials/Node/Blocks/Particle/particleBlendMultiplyBlock";
|
|
78
|
+
import { FragCoordBlock } from "babylonjs/Materials/Node/Blocks/Fragment/fragCoordBlock";
|
|
79
|
+
import { ScreenSizeBlock } from "babylonjs/Materials/Node/Blocks/Fragment/screenSizeBlock";
|
|
80
|
+
import { MatrixBuilderBlock } from "babylonjs/Materials/Node/Blocks/matrixBuilderBlock";
|
|
81
|
+
import { SceneDepthBlock } from "babylonjs/Materials/Node/Blocks/Dual/sceneDepthBlock";
|
|
82
|
+
import { ImageSourceBlock } from "babylonjs/Materials/Node/Blocks/Dual/imageSourceBlock";
|
|
83
|
+
import { CloudBlock } from "babylonjs/Materials/Node/Blocks/cloudBlock";
|
|
84
|
+
import { VoronoiNoiseBlock } from "babylonjs/Materials/Node/Blocks/voronoiNoiseBlock";
|
|
85
|
+
import { ScreenSpaceBlock } from "babylonjs/Materials/Node/Blocks/Fragment/screenSpaceBlock";
|
|
86
|
+
import { TwirlBlock } from "babylonjs/Materials/Node/Blocks/Fragment/twirlBlock";
|
|
87
|
+
import { ElbowBlock } from "babylonjs/Materials/Node/Blocks/elbowBlock";
|
|
88
|
+
import { ClipPlanesBlock } from "babylonjs/Materials/Node/Blocks/Dual/clipPlanesBlock";
|
|
89
|
+
export declare class BlockTools {
|
|
90
|
+
static GetBlockFromString(data: string, scene: Scene, nodeMaterial: NodeMaterial): ElbowBlock | TwirlBlock | VoronoiNoiseBlock | ScreenSpaceBlock | CloudBlock | MatrixBuilderBlock | DesaturateBlock | RefractBlock | ReflectBlock | DerivativeBlock | Rotate2dBlock | NormalBlendBlock | WorleyNoise3DBlock | SimplexPerlin3DBlock | BonesBlock | InstancesBlock | MorphTargetsBlock | DiscardBlock | ImageProcessingBlock | ColorMergerBlock | VectorMergerBlock | ColorSplitterBlock | VectorSplitterBlock | TextureBlock | ReflectionTextureBlock | LightBlock | FogBlock | VertexOutputBlock | FragmentOutputBlock | AddBlock | ClampBlock | ScaleBlock | CrossBlock | DotBlock | PowBlock | MultiplyBlock | TransformBlock | TrigonometryBlock | RemapBlock | NormalizeBlock | FresnelBlock | LerpBlock | NLerpBlock | DivideBlock | SubtractBlock | ModBlock | StepBlock | SmoothStepBlock | OneMinusBlock | ReciprocalBlock | ViewDirectionBlock | LightInformationBlock | MaxBlock | MinBlock | LengthBlock | DistanceBlock | NegateBlock | PerturbNormalBlock | RandomNumberBlock | ReplaceColorBlock | PosterizeBlock | ArcTan2Block | GradientBlock | FrontFacingBlock | WaveBlock | InputBlock | PBRMetallicRoughnessBlock | SheenBlock | AnisotropyBlock | ReflectionBlock | ClearCoatBlock | RefractionBlock | SubSurfaceBlock | CurrentScreenBlock | ParticleTextureBlock | ParticleRampGradientBlock | ParticleBlendMultiplyBlock | FragCoordBlock | ScreenSizeBlock | SceneDepthBlock | ConditionalBlock | ImageSourceBlock | ClipPlanesBlock | null;
|
|
91
|
+
static GetColorFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): string;
|
|
92
|
+
static GetConnectionNodeTypeFromString(type: string): NodeMaterialBlockConnectionPointTypes.Float | NodeMaterialBlockConnectionPointTypes.Vector2 | NodeMaterialBlockConnectionPointTypes.Vector3 | NodeMaterialBlockConnectionPointTypes.Vector4 | NodeMaterialBlockConnectionPointTypes.Color3 | NodeMaterialBlockConnectionPointTypes.Color4 | NodeMaterialBlockConnectionPointTypes.Matrix | NodeMaterialBlockConnectionPointTypes.AutoDetect;
|
|
93
|
+
static GetStringFromConnectionNodeType(type: NodeMaterialBlockConnectionPointTypes): "" | "Float" | "Vector2" | "Vector3" | "Vector4" | "Matrix" | "Color3" | "Color4";
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
}
|
|
97
|
+
declare module "babylonjs-node-editor/components/log/logComponent" {
|
|
98
|
+
import * as React from "react";
|
|
99
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
100
|
+
interface ILogComponentProps {
|
|
101
|
+
globalState: GlobalState;
|
|
102
|
+
}
|
|
103
|
+
export declare class LogEntry {
|
|
104
|
+
message: string;
|
|
105
|
+
isError: boolean;
|
|
106
|
+
constructor(message: string, isError: boolean);
|
|
107
|
+
}
|
|
108
|
+
export declare class LogComponent extends React.Component<ILogComponentProps, {
|
|
109
|
+
logs: LogEntry[];
|
|
110
|
+
}> {
|
|
111
|
+
constructor(props: ILogComponentProps);
|
|
112
|
+
componentDidMount(): void;
|
|
113
|
+
componentDidUpdate(): void;
|
|
114
|
+
render(): JSX.Element;
|
|
115
|
+
}
|
|
116
|
+
export {};
|
|
117
|
+
|
|
118
|
+
}
|
|
119
|
+
declare module "babylonjs-node-editor/components/nodeList/nodeListComponent" {
|
|
120
|
+
import * as React from "react";
|
|
121
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
122
|
+
interface INodeListComponentProps {
|
|
123
|
+
globalState: GlobalState;
|
|
124
|
+
}
|
|
125
|
+
export declare class NodeListComponent extends React.Component<INodeListComponentProps, {
|
|
126
|
+
filter: string;
|
|
127
|
+
}> {
|
|
128
|
+
private _onResetRequiredObserver;
|
|
129
|
+
private static _Tooltips;
|
|
130
|
+
private _customFrameList;
|
|
131
|
+
private _customBlockList;
|
|
132
|
+
constructor(props: INodeListComponentProps);
|
|
133
|
+
componentWillUnmount(): void;
|
|
134
|
+
filterContent(filter: string): void;
|
|
135
|
+
loadCustomFrame(file: File): void;
|
|
136
|
+
removeItem(value: string): void;
|
|
137
|
+
loadCustomBlock(file: File): void;
|
|
138
|
+
removeCustomBlock(value: string): void;
|
|
139
|
+
render(): JSX.Element;
|
|
140
|
+
}
|
|
141
|
+
export {};
|
|
142
|
+
|
|
143
|
+
}
|
|
144
|
+
declare module "babylonjs-node-editor/components/preview/previewAreaComponent" {
|
|
145
|
+
import * as React from "react";
|
|
146
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
147
|
+
interface IPreviewAreaComponentProps {
|
|
148
|
+
globalState: GlobalState;
|
|
149
|
+
width: number;
|
|
150
|
+
}
|
|
151
|
+
export declare class PreviewAreaComponent extends React.Component<IPreviewAreaComponentProps, {
|
|
152
|
+
isLoading: boolean;
|
|
153
|
+
}> {
|
|
154
|
+
private _onIsLoadingChangedObserver;
|
|
155
|
+
private _onResetRequiredObserver;
|
|
156
|
+
constructor(props: IPreviewAreaComponentProps);
|
|
157
|
+
componentWillUnmount(): void;
|
|
158
|
+
changeBackFaceCulling(value: boolean): void;
|
|
159
|
+
changeDepthPrePass(value: boolean): void;
|
|
160
|
+
changeParticleSystemBlendMode(newOne: number): void;
|
|
161
|
+
render(): JSX.Element;
|
|
162
|
+
}
|
|
163
|
+
export {};
|
|
164
|
+
|
|
165
|
+
}
|
|
166
|
+
declare module "babylonjs-node-editor/components/preview/previewManager" {
|
|
167
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
168
|
+
import "babylonjs/Rendering/depthRendererSceneComponent";
|
|
169
|
+
export declare class PreviewManager {
|
|
170
|
+
private _nodeMaterial;
|
|
171
|
+
private _onBuildObserver;
|
|
172
|
+
private _onPreviewCommandActivatedObserver;
|
|
173
|
+
private _onAnimationCommandActivatedObserver;
|
|
174
|
+
private _onUpdateRequiredObserver;
|
|
175
|
+
private _onPreviewBackgroundChangedObserver;
|
|
176
|
+
private _onBackFaceCullingChangedObserver;
|
|
177
|
+
private _onDepthPrePassChangedObserver;
|
|
178
|
+
private _onLightUpdatedObserver;
|
|
179
|
+
private _engine;
|
|
180
|
+
private _scene;
|
|
181
|
+
private _meshes;
|
|
182
|
+
private _camera;
|
|
183
|
+
private _material;
|
|
184
|
+
private _globalState;
|
|
185
|
+
private _currentType;
|
|
186
|
+
private _lightParent;
|
|
187
|
+
private _postprocess;
|
|
188
|
+
private _proceduralTexture;
|
|
189
|
+
private _particleSystem;
|
|
190
|
+
private _layer;
|
|
191
|
+
constructor(targetCanvas: HTMLCanvasElement, globalState: GlobalState);
|
|
192
|
+
private _handleAnimations;
|
|
193
|
+
private _prepareLights;
|
|
194
|
+
private _prepareScene;
|
|
195
|
+
private _refreshPreviewMesh;
|
|
196
|
+
private _loadParticleSystem;
|
|
197
|
+
private _forceCompilationAsync;
|
|
198
|
+
private _updatePreview;
|
|
199
|
+
dispose(): void;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
}
|
|
203
|
+
declare module "babylonjs-node-editor/components/preview/previewMeshControlComponent" {
|
|
204
|
+
import * as React from "react";
|
|
205
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
206
|
+
import { PreviewType } from "babylonjs-node-editor/components/preview/previewType";
|
|
207
|
+
interface IPreviewMeshControlComponent {
|
|
208
|
+
globalState: GlobalState;
|
|
209
|
+
togglePreviewAreaComponent: () => void;
|
|
210
|
+
}
|
|
211
|
+
export declare class PreviewMeshControlComponent extends React.Component<IPreviewMeshControlComponent> {
|
|
212
|
+
private colorInputRef;
|
|
213
|
+
private filePickerRef;
|
|
214
|
+
private _onResetRequiredObserver;
|
|
215
|
+
constructor(props: IPreviewMeshControlComponent);
|
|
216
|
+
componentWillUnmount(): void;
|
|
217
|
+
changeMeshType(newOne: PreviewType): void;
|
|
218
|
+
useCustomMesh(evt: any): void;
|
|
219
|
+
onPopUp(): void;
|
|
220
|
+
changeAnimation(): void;
|
|
221
|
+
changeBackground(value: string): void;
|
|
222
|
+
changeBackgroundClick(): void;
|
|
223
|
+
render(): JSX.Element;
|
|
224
|
+
}
|
|
225
|
+
export {};
|
|
226
|
+
|
|
227
|
+
}
|
|
228
|
+
declare module "babylonjs-node-editor/components/preview/previewType" {
|
|
229
|
+
export declare enum PreviewType {
|
|
230
|
+
Sphere = 0,
|
|
231
|
+
Box = 1,
|
|
232
|
+
Torus = 2,
|
|
233
|
+
Cylinder = 3,
|
|
234
|
+
Plane = 4,
|
|
235
|
+
ShaderBall = 5,
|
|
236
|
+
DefaultParticleSystem = 6,
|
|
237
|
+
Bubbles = 7,
|
|
238
|
+
Smoke = 8,
|
|
239
|
+
Rain = 9,
|
|
240
|
+
Explosion = 10,
|
|
241
|
+
Fire = 11,
|
|
242
|
+
Custom = 12
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
}
|
|
246
|
+
declare module "babylonjs-node-editor/components/propertyTab/inputsPropertyTabComponent" {
|
|
247
|
+
import * as React from "react";
|
|
248
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
249
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
250
|
+
interface IInputsPropertyTabComponentProps {
|
|
251
|
+
globalState: GlobalState;
|
|
252
|
+
inputs: InputBlock[];
|
|
253
|
+
}
|
|
254
|
+
export declare class InputsPropertyTabComponent extends React.Component<IInputsPropertyTabComponentProps> {
|
|
255
|
+
constructor(props: IInputsPropertyTabComponentProps);
|
|
256
|
+
processInputBlockUpdate(ib: InputBlock): void;
|
|
257
|
+
renderInputBlock(block: InputBlock): JSX.Element | null;
|
|
258
|
+
render(): JSX.Element;
|
|
259
|
+
}
|
|
260
|
+
export {};
|
|
261
|
+
|
|
262
|
+
}
|
|
263
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/color3PropertyTabComponent" {
|
|
264
|
+
import * as React from "react";
|
|
265
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
266
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
267
|
+
interface IColor3PropertyTabComponentProps {
|
|
268
|
+
globalState: GlobalState;
|
|
269
|
+
inputBlock: InputBlock;
|
|
270
|
+
}
|
|
271
|
+
export declare class Color3PropertyTabComponent extends React.Component<IColor3PropertyTabComponentProps> {
|
|
272
|
+
render(): JSX.Element;
|
|
273
|
+
}
|
|
274
|
+
export {};
|
|
275
|
+
|
|
276
|
+
}
|
|
277
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/color4PropertyTabComponent" {
|
|
278
|
+
import * as React from "react";
|
|
279
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
280
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
281
|
+
interface IColor4PropertyTabComponentProps {
|
|
282
|
+
globalState: GlobalState;
|
|
283
|
+
inputBlock: InputBlock;
|
|
284
|
+
}
|
|
285
|
+
export declare class Color4PropertyTabComponent extends React.Component<IColor4PropertyTabComponentProps> {
|
|
286
|
+
render(): JSX.Element;
|
|
287
|
+
}
|
|
288
|
+
export {};
|
|
289
|
+
|
|
290
|
+
}
|
|
291
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/floatPropertyTabComponent" {
|
|
292
|
+
import * as React from "react";
|
|
293
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
294
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
295
|
+
interface IFloatPropertyTabComponentProps {
|
|
296
|
+
globalState: GlobalState;
|
|
297
|
+
inputBlock: InputBlock;
|
|
298
|
+
}
|
|
299
|
+
export declare class FloatPropertyTabComponent extends React.Component<IFloatPropertyTabComponentProps> {
|
|
300
|
+
render(): JSX.Element;
|
|
301
|
+
}
|
|
302
|
+
export {};
|
|
303
|
+
|
|
304
|
+
}
|
|
305
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/matrixPropertyTabComponent" {
|
|
306
|
+
import * as React from "react";
|
|
307
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
308
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
309
|
+
interface IMatrixPropertyTabComponentProps {
|
|
310
|
+
globalState: GlobalState;
|
|
311
|
+
inputBlock: InputBlock;
|
|
312
|
+
}
|
|
313
|
+
export declare class MatrixPropertyTabComponent extends React.Component<IMatrixPropertyTabComponentProps> {
|
|
314
|
+
render(): JSX.Element;
|
|
315
|
+
}
|
|
316
|
+
export {};
|
|
317
|
+
|
|
318
|
+
}
|
|
319
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/vector2PropertyTabComponent" {
|
|
320
|
+
import * as React from "react";
|
|
321
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
322
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
323
|
+
interface IVector2PropertyTabComponentProps {
|
|
324
|
+
globalState: GlobalState;
|
|
325
|
+
inputBlock: InputBlock;
|
|
326
|
+
}
|
|
327
|
+
export declare class Vector2PropertyTabComponent extends React.Component<IVector2PropertyTabComponentProps> {
|
|
328
|
+
render(): JSX.Element;
|
|
329
|
+
}
|
|
330
|
+
export {};
|
|
331
|
+
|
|
332
|
+
}
|
|
333
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/vector3PropertyTabComponent" {
|
|
334
|
+
import * as React from "react";
|
|
335
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
336
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
337
|
+
interface IVector3PropertyTabComponentProps {
|
|
338
|
+
globalState: GlobalState;
|
|
339
|
+
inputBlock: InputBlock;
|
|
340
|
+
}
|
|
341
|
+
export declare class Vector3PropertyTabComponent extends React.Component<IVector3PropertyTabComponentProps> {
|
|
342
|
+
render(): JSX.Element;
|
|
343
|
+
}
|
|
344
|
+
export {};
|
|
345
|
+
|
|
346
|
+
}
|
|
347
|
+
declare module "babylonjs-node-editor/components/propertyTab/properties/vector4PropertyTabComponent" {
|
|
348
|
+
import * as React from "react";
|
|
349
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
350
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
351
|
+
interface IVector4PropertyTabComponentProps {
|
|
352
|
+
globalState: GlobalState;
|
|
353
|
+
inputBlock: InputBlock;
|
|
354
|
+
}
|
|
355
|
+
export declare class Vector4PropertyTabComponent extends React.Component<IVector4PropertyTabComponentProps> {
|
|
356
|
+
render(): JSX.Element;
|
|
357
|
+
}
|
|
358
|
+
export {};
|
|
359
|
+
|
|
360
|
+
}
|
|
361
|
+
declare module "babylonjs-node-editor/components/propertyTab/propertyTabComponent" {
|
|
362
|
+
import * as React from "react";
|
|
363
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
364
|
+
import { Nullable } from "babylonjs/types";
|
|
365
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
366
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
367
|
+
import { InputBlock } from "babylonjs/Materials/Node/Blocks/Input/inputBlock";
|
|
368
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
369
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
370
|
+
interface IPropertyTabComponentProps {
|
|
371
|
+
globalState: GlobalState;
|
|
372
|
+
}
|
|
373
|
+
interface IPropertyTabComponentState {
|
|
374
|
+
currentNode: Nullable<GraphNode>;
|
|
375
|
+
currentFrame: Nullable<GraphFrame>;
|
|
376
|
+
currentFrameNodePort: Nullable<FrameNodePort>;
|
|
377
|
+
currentNodePort: Nullable<NodePort>;
|
|
378
|
+
uploadInProgress: boolean;
|
|
379
|
+
}
|
|
380
|
+
export declare class PropertyTabComponent extends React.Component<IPropertyTabComponentProps, IPropertyTabComponentState> {
|
|
381
|
+
private _onBuiltObserver;
|
|
382
|
+
private _modeSelect;
|
|
383
|
+
constructor(props: IPropertyTabComponentProps);
|
|
384
|
+
componentDidMount(): void;
|
|
385
|
+
componentWillUnmount(): void;
|
|
386
|
+
processInputBlockUpdate(ib: InputBlock): void;
|
|
387
|
+
renderInputBlock(block: InputBlock): JSX.Element | null;
|
|
388
|
+
load(file: File): void;
|
|
389
|
+
loadFrame(file: File): void;
|
|
390
|
+
save(): void;
|
|
391
|
+
customSave(): void;
|
|
392
|
+
saveToSnippetServer(): void;
|
|
393
|
+
loadFromSnippet(): void;
|
|
394
|
+
changeMode(value: any, force?: boolean, loadDefault?: boolean): boolean;
|
|
395
|
+
render(): JSX.Element;
|
|
396
|
+
}
|
|
397
|
+
export {};
|
|
398
|
+
|
|
399
|
+
}
|
|
400
|
+
declare module "babylonjs-node-editor/diagram/display/clampDisplayManager" {
|
|
401
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
402
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
403
|
+
export declare class ClampDisplayManager implements IDisplayManager {
|
|
404
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
405
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
406
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
407
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
408
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
}
|
|
412
|
+
declare module "babylonjs-node-editor/diagram/display/conditionalDisplayManager" {
|
|
413
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
414
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
415
|
+
export declare class ConditionalDisplayManager implements IDisplayManager {
|
|
416
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
417
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
418
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
419
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
420
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
}
|
|
424
|
+
declare module "babylonjs-node-editor/diagram/display/discardDisplayManager" {
|
|
425
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
426
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
427
|
+
export declare class DiscardDisplayManager implements IDisplayManager {
|
|
428
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
429
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
430
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
431
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
432
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
}
|
|
436
|
+
declare module "babylonjs-node-editor/diagram/display/displayManager" {
|
|
437
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
438
|
+
export interface IDisplayManager {
|
|
439
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
440
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
441
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
442
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
443
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
}
|
|
447
|
+
declare module "babylonjs-node-editor/diagram/display/elbowDisplayManager" {
|
|
448
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
449
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
450
|
+
export declare class ElbowDisplayManager implements IDisplayManager {
|
|
451
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
452
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
453
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
454
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
455
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
}
|
|
459
|
+
declare module "babylonjs-node-editor/diagram/display/gradientDisplayManager" {
|
|
460
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
461
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
462
|
+
export declare class GradientDisplayManager implements IDisplayManager {
|
|
463
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
464
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
465
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
466
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
467
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
}
|
|
471
|
+
declare module "babylonjs-node-editor/diagram/display/imageSourceDisplayManager" {
|
|
472
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
473
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
474
|
+
export declare class imageSourceDisplayManager implements IDisplayManager {
|
|
475
|
+
private _previewCanvas;
|
|
476
|
+
private _previewImage;
|
|
477
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
478
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
479
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
480
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
481
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
}
|
|
485
|
+
declare module "babylonjs-node-editor/diagram/display/inputDisplayManager" {
|
|
486
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
487
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
488
|
+
import { NodeMaterialBlockConnectionPointTypes } from "babylonjs/Materials/Node/Enums/nodeMaterialBlockConnectionPointTypes";
|
|
489
|
+
export declare class InputDisplayManager implements IDisplayManager {
|
|
490
|
+
getHeaderClass(block: NodeMaterialBlock): "" | "constant" | "inspector";
|
|
491
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
492
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
493
|
+
static GetBaseType(type: NodeMaterialBlockConnectionPointTypes): string;
|
|
494
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
495
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
}
|
|
499
|
+
declare module "babylonjs-node-editor/diagram/display/outputDisplayManager" {
|
|
500
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
501
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
502
|
+
export declare class OutputDisplayManager implements IDisplayManager {
|
|
503
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
504
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
505
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
506
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
507
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
508
|
+
}
|
|
509
|
+
|
|
510
|
+
}
|
|
511
|
+
declare module "babylonjs-node-editor/diagram/display/pbrDisplayManager" {
|
|
512
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
513
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
514
|
+
export declare class PBRDisplayManager implements IDisplayManager {
|
|
515
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
516
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
517
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
518
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
519
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
520
|
+
}
|
|
521
|
+
|
|
522
|
+
}
|
|
523
|
+
declare module "babylonjs-node-editor/diagram/display/remapDisplayManager" {
|
|
524
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
525
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
526
|
+
export declare class RemapDisplayManager implements IDisplayManager {
|
|
527
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
528
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
529
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
530
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
531
|
+
private _extractInputValue;
|
|
532
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
}
|
|
536
|
+
declare module "babylonjs-node-editor/diagram/display/textureDisplayManager" {
|
|
537
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
538
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
539
|
+
export declare class TextureDisplayManager implements IDisplayManager {
|
|
540
|
+
private _previewCanvas;
|
|
541
|
+
private _previewImage;
|
|
542
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
543
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
544
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
545
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
546
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
}
|
|
550
|
+
declare module "babylonjs-node-editor/diagram/display/trigonometryDisplayManager" {
|
|
551
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
552
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
553
|
+
export declare class TrigonometryDisplayManager implements IDisplayManager {
|
|
554
|
+
getHeaderClass(block: NodeMaterialBlock): string;
|
|
555
|
+
shouldDisplayPortLabels(block: NodeMaterialBlock): boolean;
|
|
556
|
+
getHeaderText(block: NodeMaterialBlock): string;
|
|
557
|
+
getBackgroundColor(block: NodeMaterialBlock): string;
|
|
558
|
+
updatePreviewContent(block: NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
}
|
|
562
|
+
declare module "babylonjs-node-editor/diagram/displayLedger" {
|
|
563
|
+
export declare class DisplayLedger {
|
|
564
|
+
static RegisteredControls: {
|
|
565
|
+
[key: string]: any;
|
|
566
|
+
};
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
}
|
|
570
|
+
declare module "babylonjs-node-editor/diagram/frameNodePort" {
|
|
571
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
572
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
573
|
+
import { FramePortPosition } from "babylonjs-node-editor/diagram/graphFrame";
|
|
574
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
575
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
576
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
577
|
+
import { Nullable } from "babylonjs/types";
|
|
578
|
+
import { NodeMaterialConnectionPoint } from "babylonjs/Materials/Node/nodeMaterialBlockConnectionPoint";
|
|
579
|
+
export declare class FrameNodePort extends NodePort {
|
|
580
|
+
connectionPoint: NodeMaterialConnectionPoint;
|
|
581
|
+
node: GraphNode;
|
|
582
|
+
private _parentFrameId;
|
|
583
|
+
private _isInput;
|
|
584
|
+
private _framePortPosition;
|
|
585
|
+
private _framePortId;
|
|
586
|
+
private _onFramePortPositionChangedObservable;
|
|
587
|
+
get parentFrameId(): number;
|
|
588
|
+
get onFramePortPositionChangedObservable(): Observable<FrameNodePort>;
|
|
589
|
+
get isInput(): boolean;
|
|
590
|
+
get framePortId(): number;
|
|
591
|
+
get framePortPosition(): FramePortPosition;
|
|
592
|
+
set framePortPosition(position: FramePortPosition);
|
|
593
|
+
constructor(portContainer: HTMLElement, connectionPoint: NodeMaterialConnectionPoint, node: GraphNode, globalState: GlobalState, isInput: boolean, framePortId: number, parentFrameId: number);
|
|
594
|
+
static CreateFrameNodePortElement(connectionPoint: NodeMaterialConnectionPoint, node: GraphNode, root: HTMLElement, displayManager: Nullable<IDisplayManager>, globalState: GlobalState, isInput: boolean, framePortId: number, parentFrameId: number): FrameNodePort;
|
|
595
|
+
}
|
|
596
|
+
|
|
597
|
+
}
|
|
598
|
+
declare module "babylonjs-node-editor/diagram/graphCanvas" {
|
|
599
|
+
import * as React from "react";
|
|
600
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
601
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
602
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
603
|
+
import { Nullable } from "babylonjs/types";
|
|
604
|
+
import { NodeLink } from "babylonjs-node-editor/diagram/nodeLink";
|
|
605
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
606
|
+
import { NodeMaterialConnectionPoint } from "babylonjs/Materials/Node/nodeMaterialBlockConnectionPoint";
|
|
607
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
608
|
+
import { IEditorData, IFrameData } from "babylonjs-node-editor/nodeLocationInfo";
|
|
609
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
610
|
+
import "babylonjs-node-editor/diagram/graphCanvas.scss";
|
|
611
|
+
export interface IGraphCanvasComponentProps {
|
|
612
|
+
globalState: GlobalState;
|
|
613
|
+
onEmitNewBlock: (block: NodeMaterialBlock) => GraphNode;
|
|
614
|
+
}
|
|
615
|
+
export declare type FramePortData = {
|
|
616
|
+
frame: GraphFrame;
|
|
617
|
+
port: FrameNodePort;
|
|
618
|
+
};
|
|
619
|
+
export declare const isFramePortData: (variableToCheck: any) => variableToCheck is FramePortData;
|
|
620
|
+
export declare class GraphCanvasComponent extends React.Component<IGraphCanvasComponentProps> {
|
|
621
|
+
private readonly MinZoom;
|
|
622
|
+
private readonly MaxZoom;
|
|
623
|
+
private _hostCanvas;
|
|
624
|
+
private _graphCanvas;
|
|
625
|
+
private _selectionContainer;
|
|
626
|
+
private _frameContainer;
|
|
627
|
+
private _svgCanvas;
|
|
628
|
+
private _rootContainer;
|
|
629
|
+
private _nodes;
|
|
630
|
+
private _links;
|
|
631
|
+
private _mouseStartPointX;
|
|
632
|
+
private _mouseStartPointY;
|
|
633
|
+
private _dropPointX;
|
|
634
|
+
private _dropPointY;
|
|
635
|
+
private _selectionStartX;
|
|
636
|
+
private _selectionStartY;
|
|
637
|
+
private _candidateLinkedHasMoved;
|
|
638
|
+
private _x;
|
|
639
|
+
private _y;
|
|
640
|
+
private _zoom;
|
|
641
|
+
private _selectedNodes;
|
|
642
|
+
private _selectedLink;
|
|
643
|
+
private _selectedPort;
|
|
644
|
+
private _candidateLink;
|
|
645
|
+
private _candidatePort;
|
|
646
|
+
private _gridSize;
|
|
647
|
+
private _selectionBox;
|
|
648
|
+
private _selectedFrame;
|
|
649
|
+
private _frameCandidate;
|
|
650
|
+
private _frames;
|
|
651
|
+
private _altKeyIsPressed;
|
|
652
|
+
private _ctrlKeyIsPressed;
|
|
653
|
+
private _oldY;
|
|
654
|
+
_frameIsMoving: boolean;
|
|
655
|
+
_isLoading: boolean;
|
|
656
|
+
get gridSize(): number;
|
|
657
|
+
set gridSize(value: number);
|
|
658
|
+
get globalState(): GlobalState;
|
|
659
|
+
get nodes(): GraphNode[];
|
|
660
|
+
get links(): NodeLink[];
|
|
661
|
+
get frames(): GraphFrame[];
|
|
662
|
+
get zoom(): number;
|
|
663
|
+
set zoom(value: number);
|
|
664
|
+
get x(): number;
|
|
665
|
+
set x(value: number);
|
|
666
|
+
get y(): number;
|
|
667
|
+
set y(value: number);
|
|
668
|
+
get selectedNodes(): GraphNode[];
|
|
669
|
+
get selectedLink(): Nullable<NodeLink>;
|
|
670
|
+
get selectedFrame(): Nullable<GraphFrame>;
|
|
671
|
+
get selectedPort(): Nullable<NodePort>;
|
|
672
|
+
get canvasContainer(): HTMLDivElement;
|
|
673
|
+
get hostCanvas(): HTMLDivElement;
|
|
674
|
+
get svgCanvas(): HTMLElement;
|
|
675
|
+
get selectionContainer(): HTMLDivElement;
|
|
676
|
+
get frameContainer(): HTMLDivElement;
|
|
677
|
+
constructor(props: IGraphCanvasComponentProps);
|
|
678
|
+
static _RefreshNode: (node: GraphNode, visitedNodes?: Set<GraphNode> | undefined, visitedLinks?: Set<NodeLink> | undefined) => void;
|
|
679
|
+
getGridPosition(position: number, useCeil?: boolean): number;
|
|
680
|
+
getGridPositionCeil(position: number): number;
|
|
681
|
+
updateTransform(): void;
|
|
682
|
+
onKeyUp(): void;
|
|
683
|
+
findNodeFromBlock(block: NodeMaterialBlock): GraphNode;
|
|
684
|
+
reset(): void;
|
|
685
|
+
connectPorts(pointA: NodeMaterialConnectionPoint, pointB: NodeMaterialConnectionPoint): void;
|
|
686
|
+
removeLink(link: NodeLink): void;
|
|
687
|
+
appendBlock(block: NodeMaterialBlock): GraphNode;
|
|
688
|
+
distributeGraph(): void;
|
|
689
|
+
componentDidMount(): void;
|
|
690
|
+
onMove(evt: React.PointerEvent): void;
|
|
691
|
+
onDown(evt: React.PointerEvent<HTMLElement>): void;
|
|
692
|
+
onUp(evt: React.PointerEvent): void;
|
|
693
|
+
onWheel(evt: React.WheelEvent): void;
|
|
694
|
+
zoomToFit(): void;
|
|
695
|
+
processCandidatePort(): void;
|
|
696
|
+
processEditorData(editorData: IEditorData): void;
|
|
697
|
+
addFrame(frameData: IFrameData): void;
|
|
698
|
+
render(): JSX.Element;
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
}
|
|
702
|
+
declare module "babylonjs-node-editor/diagram/graphFrame" {
|
|
703
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
704
|
+
import { GraphCanvasComponent } from "babylonjs-node-editor/diagram/graphCanvas";
|
|
705
|
+
import { Nullable } from "babylonjs/types";
|
|
706
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
707
|
+
import { IFrameData } from "babylonjs-node-editor/nodeLocationInfo";
|
|
708
|
+
import { Color3 } from "babylonjs/Maths/math.color";
|
|
709
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
710
|
+
export declare enum FramePortPosition {
|
|
711
|
+
Top = 0,
|
|
712
|
+
Middle = 1,
|
|
713
|
+
Bottom = 2
|
|
714
|
+
}
|
|
715
|
+
export declare class GraphFrame {
|
|
716
|
+
private readonly CollapsedWidth;
|
|
717
|
+
private static _FrameCounter;
|
|
718
|
+
private static _FramePortCounter;
|
|
719
|
+
private _name;
|
|
720
|
+
private _color;
|
|
721
|
+
private _x;
|
|
722
|
+
private _y;
|
|
723
|
+
private _gridAlignedX;
|
|
724
|
+
private _gridAlignedY;
|
|
725
|
+
private _width;
|
|
726
|
+
private _height;
|
|
727
|
+
element: HTMLDivElement;
|
|
728
|
+
private _borderElement;
|
|
729
|
+
private _headerElement;
|
|
730
|
+
private _headerTextElement;
|
|
731
|
+
private _headerCollapseElement;
|
|
732
|
+
private _headerCloseElement;
|
|
733
|
+
private _commentsElement;
|
|
734
|
+
private _portContainer;
|
|
735
|
+
private _outputPortContainer;
|
|
736
|
+
private _inputPortContainer;
|
|
737
|
+
private _nodes;
|
|
738
|
+
private _ownerCanvas;
|
|
739
|
+
private _mouseStartPointX;
|
|
740
|
+
private _mouseStartPointY;
|
|
741
|
+
private _onSelectionChangedObserver;
|
|
742
|
+
private _onGraphNodeRemovalObserver;
|
|
743
|
+
private _onExposePortOnFrameObserver;
|
|
744
|
+
private _onNodeLinkDisposedObservers;
|
|
745
|
+
private _isCollapsed;
|
|
746
|
+
private _frameInPorts;
|
|
747
|
+
private _frameOutPorts;
|
|
748
|
+
private _controlledPorts;
|
|
749
|
+
private _exposedInPorts;
|
|
750
|
+
private _exposedOutPorts;
|
|
751
|
+
private _id;
|
|
752
|
+
private _comments;
|
|
753
|
+
private _frameIsResizing;
|
|
754
|
+
private _resizingDirection;
|
|
755
|
+
private _minFrameHeight;
|
|
756
|
+
private _minFrameWidth;
|
|
757
|
+
private mouseXLimit;
|
|
758
|
+
onExpandStateChanged: Observable<GraphFrame>;
|
|
759
|
+
private readonly CloseSVG;
|
|
760
|
+
private readonly ExpandSVG;
|
|
761
|
+
private readonly CollapseSVG;
|
|
762
|
+
get id(): number;
|
|
763
|
+
get isCollapsed(): boolean;
|
|
764
|
+
private _createInputPort;
|
|
765
|
+
private _markFramePortPositions;
|
|
766
|
+
private _createFramePorts;
|
|
767
|
+
private removePortFromExposedWithNode;
|
|
768
|
+
private removePortFromExposedWithLink;
|
|
769
|
+
private createInputPorts;
|
|
770
|
+
private createOutputPorts;
|
|
771
|
+
redrawFramePorts(): void;
|
|
772
|
+
set isCollapsed(value: boolean);
|
|
773
|
+
get nodes(): GraphNode[];
|
|
774
|
+
get ports(): FrameNodePort[];
|
|
775
|
+
get name(): string;
|
|
776
|
+
set name(value: string);
|
|
777
|
+
get color(): Color3;
|
|
778
|
+
set color(value: Color3);
|
|
779
|
+
get x(): number;
|
|
780
|
+
set x(value: number);
|
|
781
|
+
get y(): number;
|
|
782
|
+
set y(value: number);
|
|
783
|
+
get width(): number;
|
|
784
|
+
set width(value: number);
|
|
785
|
+
get height(): number;
|
|
786
|
+
set height(value: number);
|
|
787
|
+
get comments(): string;
|
|
788
|
+
set comments(comments: string);
|
|
789
|
+
constructor(candidate: Nullable<HTMLDivElement>, canvas: GraphCanvasComponent, doNotCaptureNodes?: boolean);
|
|
790
|
+
refresh(): void;
|
|
791
|
+
addNode(node: GraphNode): void;
|
|
792
|
+
removeNode(node: GraphNode): void;
|
|
793
|
+
syncNode(node: GraphNode): void;
|
|
794
|
+
cleanAccumulation(): void;
|
|
795
|
+
private _onDown;
|
|
796
|
+
move(newX: number, newY: number, align?: boolean): void;
|
|
797
|
+
private _onUp;
|
|
798
|
+
private _moveFrame;
|
|
799
|
+
private _onMove;
|
|
800
|
+
moveFramePortUp(nodePort: FrameNodePort): void;
|
|
801
|
+
private _movePortUp;
|
|
802
|
+
moveFramePortDown(nodePort: FrameNodePort): void;
|
|
803
|
+
private _movePortDown;
|
|
804
|
+
private initResizing;
|
|
805
|
+
private cleanUpResizing;
|
|
806
|
+
private updateMinHeightWithComments;
|
|
807
|
+
private _isResizingTop;
|
|
808
|
+
private _isResizingRight;
|
|
809
|
+
private _isResizingBottom;
|
|
810
|
+
private _isResizingLeft;
|
|
811
|
+
private _onRightHandlePointerDown;
|
|
812
|
+
private _onRightHandlePointerMove;
|
|
813
|
+
private _moveRightHandle;
|
|
814
|
+
private _onRightHandlePointerUp;
|
|
815
|
+
private _onBottomHandlePointerDown;
|
|
816
|
+
private _onBottomHandlePointerMove;
|
|
817
|
+
private _moveBottomHandle;
|
|
818
|
+
private _onBottomHandlePointerUp;
|
|
819
|
+
private _onLeftHandlePointerDown;
|
|
820
|
+
private _onLeftHandlePointerMove;
|
|
821
|
+
private _moveLeftHandle;
|
|
822
|
+
private _onLeftHandlePointerUp;
|
|
823
|
+
private _onTopHandlePointerDown;
|
|
824
|
+
private _onTopHandlePointerMove;
|
|
825
|
+
private _moveTopHandle;
|
|
826
|
+
private _onTopHandlePointerUp;
|
|
827
|
+
private _onTopRightHandlePointerDown;
|
|
828
|
+
private _onTopRightHandlePointerMove;
|
|
829
|
+
private _moveTopRightHandle;
|
|
830
|
+
private _onTopRightHandlePointerUp;
|
|
831
|
+
private _onBottomRightHandlePointerDown;
|
|
832
|
+
private _onBottomRightHandlePointerMove;
|
|
833
|
+
private _moveBottomRightHandle;
|
|
834
|
+
private _onBottomRightHandlePointerUp;
|
|
835
|
+
private _onBottomLeftHandlePointerDown;
|
|
836
|
+
private _onBottomLeftHandlePointerMove;
|
|
837
|
+
private _moveBottomLeftHandle;
|
|
838
|
+
private _onBottomLeftHandlePointerUp;
|
|
839
|
+
private _onTopLeftHandlePointerDown;
|
|
840
|
+
private _onTopLeftHandlePointerMove;
|
|
841
|
+
private _moveTopLeftHandle;
|
|
842
|
+
private _onTopLeftHandlePointerUp;
|
|
843
|
+
private _expandLeft;
|
|
844
|
+
private _expandTop;
|
|
845
|
+
private _expandRight;
|
|
846
|
+
private _expandBottom;
|
|
847
|
+
dispose(): void;
|
|
848
|
+
private serializePortData;
|
|
849
|
+
serialize(saveCollapsedState: boolean): IFrameData;
|
|
850
|
+
export(): void;
|
|
851
|
+
adjustPorts(): void;
|
|
852
|
+
static Parse(serializationData: IFrameData, canvas: GraphCanvasComponent, map?: {
|
|
853
|
+
[key: number]: number;
|
|
854
|
+
}): GraphFrame;
|
|
855
|
+
}
|
|
856
|
+
|
|
857
|
+
}
|
|
858
|
+
declare module "babylonjs-node-editor/diagram/graphNode" {
|
|
859
|
+
/// <reference types="react" />
|
|
860
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
861
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
862
|
+
import { Nullable } from "babylonjs/types";
|
|
863
|
+
import { NodeMaterialConnectionPoint } from "babylonjs/Materials/Node/nodeMaterialBlockConnectionPoint";
|
|
864
|
+
import { GraphCanvasComponent } from "babylonjs-node-editor/diagram/graphCanvas";
|
|
865
|
+
import { NodeLink } from "babylonjs-node-editor/diagram/nodeLink";
|
|
866
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
867
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
868
|
+
export declare class GraphNode {
|
|
869
|
+
block: NodeMaterialBlock;
|
|
870
|
+
private _visual;
|
|
871
|
+
private _headerContainer;
|
|
872
|
+
private _promotionWarning;
|
|
873
|
+
private _header;
|
|
874
|
+
private _connections;
|
|
875
|
+
private _inputsContainer;
|
|
876
|
+
private _outputsContainer;
|
|
877
|
+
private _content;
|
|
878
|
+
private _comments;
|
|
879
|
+
private _inputPorts;
|
|
880
|
+
private _outputPorts;
|
|
881
|
+
private _links;
|
|
882
|
+
private _x;
|
|
883
|
+
private _y;
|
|
884
|
+
private _gridAlignedX;
|
|
885
|
+
private _gridAlignedY;
|
|
886
|
+
private _mouseStartPointX;
|
|
887
|
+
private _mouseStartPointY;
|
|
888
|
+
private _globalState;
|
|
889
|
+
private _onSelectionChangedObserver;
|
|
890
|
+
private _onSelectionBoxMovedObserver;
|
|
891
|
+
private _onFrameCreatedObserver;
|
|
892
|
+
private _onUpdateRequiredObserver;
|
|
893
|
+
private _ownerCanvas;
|
|
894
|
+
private _isSelected;
|
|
895
|
+
private _displayManager;
|
|
896
|
+
private _isVisible;
|
|
897
|
+
private _enclosingFrameId;
|
|
898
|
+
get isVisible(): boolean;
|
|
899
|
+
set isVisible(value: boolean);
|
|
900
|
+
private _upateNodePortNames;
|
|
901
|
+
get outputPorts(): NodePort[];
|
|
902
|
+
get inputPorts(): NodePort[];
|
|
903
|
+
get links(): NodeLink[];
|
|
904
|
+
get gridAlignedX(): number;
|
|
905
|
+
get gridAlignedY(): number;
|
|
906
|
+
get x(): number;
|
|
907
|
+
set x(value: number);
|
|
908
|
+
get y(): number;
|
|
909
|
+
set y(value: number);
|
|
910
|
+
get width(): number;
|
|
911
|
+
get height(): number;
|
|
912
|
+
get id(): number;
|
|
913
|
+
get name(): string;
|
|
914
|
+
get isSelected(): boolean;
|
|
915
|
+
get enclosingFrameId(): number;
|
|
916
|
+
set enclosingFrameId(value: number);
|
|
917
|
+
set isSelected(value: boolean);
|
|
918
|
+
constructor(block: NodeMaterialBlock, globalState: GlobalState);
|
|
919
|
+
isOverlappingFrame(frame: GraphFrame): boolean;
|
|
920
|
+
getPortForConnectionPoint(point: NodeMaterialConnectionPoint): NodePort | null;
|
|
921
|
+
getLinksForConnectionPoint(point: NodeMaterialConnectionPoint): NodeLink[];
|
|
922
|
+
private _refreshFrames;
|
|
923
|
+
_refreshLinks(): void;
|
|
924
|
+
refresh(): void;
|
|
925
|
+
private _onDown;
|
|
926
|
+
cleanAccumulation(useCeil?: boolean): void;
|
|
927
|
+
private _onUp;
|
|
928
|
+
private _onMove;
|
|
929
|
+
renderProperties(): Nullable<JSX.Element>;
|
|
930
|
+
appendVisual(root: HTMLDivElement, owner: GraphCanvasComponent): void;
|
|
931
|
+
dispose(): void;
|
|
932
|
+
}
|
|
933
|
+
|
|
934
|
+
}
|
|
935
|
+
declare module "babylonjs-node-editor/diagram/nodeLink" {
|
|
936
|
+
import { GraphCanvasComponent } from "babylonjs-node-editor/diagram/graphCanvas";
|
|
937
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
938
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
939
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
940
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
941
|
+
export declare class NodeLink {
|
|
942
|
+
private _graphCanvas;
|
|
943
|
+
private _portA;
|
|
944
|
+
private _portB?;
|
|
945
|
+
private _nodeA;
|
|
946
|
+
private _nodeB?;
|
|
947
|
+
private _path;
|
|
948
|
+
private _selectionPath;
|
|
949
|
+
private _onSelectionChangedObserver;
|
|
950
|
+
private _isVisible;
|
|
951
|
+
onDisposedObservable: Observable<NodeLink>;
|
|
952
|
+
get isVisible(): boolean;
|
|
953
|
+
set isVisible(value: boolean);
|
|
954
|
+
get portA(): NodePort | FrameNodePort;
|
|
955
|
+
get portB(): NodePort | FrameNodePort | undefined;
|
|
956
|
+
get nodeA(): GraphNode;
|
|
957
|
+
get nodeB(): GraphNode | undefined;
|
|
958
|
+
update(endX?: number, endY?: number, straight?: boolean): void;
|
|
959
|
+
constructor(graphCanvas: GraphCanvasComponent, portA: NodePort, nodeA: GraphNode, portB?: NodePort, nodeB?: GraphNode);
|
|
960
|
+
onClick(): void;
|
|
961
|
+
dispose(notify?: boolean): void;
|
|
962
|
+
}
|
|
963
|
+
|
|
964
|
+
}
|
|
965
|
+
declare module "babylonjs-node-editor/diagram/nodePort" {
|
|
966
|
+
import { NodeMaterialConnectionPoint } from "babylonjs/Materials/Node/nodeMaterialBlockConnectionPoint";
|
|
967
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
968
|
+
import { Nullable } from "babylonjs/types";
|
|
969
|
+
import { Observer } from "babylonjs/Misc/observable";
|
|
970
|
+
import { Vector2 } from "babylonjs/Maths/math.vector";
|
|
971
|
+
import { IDisplayManager } from "babylonjs-node-editor/diagram/display/displayManager";
|
|
972
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
973
|
+
import { NodeLink } from "babylonjs-node-editor/diagram/nodeLink";
|
|
974
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
975
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
976
|
+
import { FramePortData } from "babylonjs-node-editor/diagram/graphCanvas";
|
|
977
|
+
export declare class NodePort {
|
|
978
|
+
connectionPoint: NodeMaterialConnectionPoint;
|
|
979
|
+
node: GraphNode;
|
|
980
|
+
protected _element: HTMLDivElement;
|
|
981
|
+
protected _img: HTMLImageElement;
|
|
982
|
+
protected _globalState: GlobalState;
|
|
983
|
+
protected _portLabelElement: Element;
|
|
984
|
+
protected _onCandidateLinkMovedObserver: Nullable<Observer<Nullable<Vector2>>>;
|
|
985
|
+
protected _onSelectionChangedObserver: Nullable<Observer<Nullable<GraphFrame | GraphNode | NodeLink | NodePort | FramePortData>>>;
|
|
986
|
+
protected _exposedOnFrame: boolean;
|
|
987
|
+
delegatedPort: Nullable<FrameNodePort>;
|
|
988
|
+
get element(): HTMLDivElement;
|
|
989
|
+
get portName(): string;
|
|
990
|
+
set portName(newName: string);
|
|
991
|
+
get disabled(): boolean;
|
|
992
|
+
hasLabel(): boolean;
|
|
993
|
+
get exposedOnFrame(): boolean;
|
|
994
|
+
set exposedOnFrame(value: boolean);
|
|
995
|
+
get exposedPortPosition(): number;
|
|
996
|
+
set exposedPortPosition(value: number);
|
|
997
|
+
private _isConnectedToNodeOutsideOfFrame;
|
|
998
|
+
refresh(): void;
|
|
999
|
+
constructor(portContainer: HTMLElement, connectionPoint: NodeMaterialConnectionPoint, node: GraphNode, globalState: GlobalState);
|
|
1000
|
+
dispose(): void;
|
|
1001
|
+
static CreatePortElement(connectionPoint: NodeMaterialConnectionPoint, node: GraphNode, root: HTMLElement, displayManager: Nullable<IDisplayManager>, globalState: GlobalState): NodePort;
|
|
1002
|
+
}
|
|
1003
|
+
|
|
1004
|
+
}
|
|
1005
|
+
declare module "babylonjs-node-editor/diagram/properties/colorMergerPropertyComponent" {
|
|
1006
|
+
import * as React from "react";
|
|
1007
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1008
|
+
export declare class ColorMergerPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1009
|
+
constructor(props: IPropertyComponentProps);
|
|
1010
|
+
render(): JSX.Element;
|
|
1011
|
+
}
|
|
1012
|
+
|
|
1013
|
+
}
|
|
1014
|
+
declare module "babylonjs-node-editor/diagram/properties/conditionalNodePropertyComponent" {
|
|
1015
|
+
import * as React from "react";
|
|
1016
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1017
|
+
export declare class ConditionalPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1018
|
+
constructor(props: IPropertyComponentProps);
|
|
1019
|
+
render(): JSX.Element;
|
|
1020
|
+
}
|
|
1021
|
+
|
|
1022
|
+
}
|
|
1023
|
+
declare module "babylonjs-node-editor/diagram/properties/frameNodePortPropertyComponent" {
|
|
1024
|
+
import * as React from "react";
|
|
1025
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1026
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
1027
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
1028
|
+
export interface IFrameNodePortPropertyTabComponentProps {
|
|
1029
|
+
globalState: GlobalState;
|
|
1030
|
+
frameNodePort: FrameNodePort;
|
|
1031
|
+
frame: GraphFrame;
|
|
1032
|
+
}
|
|
1033
|
+
export declare class FrameNodePortPropertyTabComponent extends React.Component<IFrameNodePortPropertyTabComponentProps, {
|
|
1034
|
+
port: FrameNodePort;
|
|
1035
|
+
}> {
|
|
1036
|
+
private _onFramePortPositionChangedObserver;
|
|
1037
|
+
private _onSelectionChangedObserver;
|
|
1038
|
+
constructor(props: IFrameNodePortPropertyTabComponentProps);
|
|
1039
|
+
componentWillUnmount(): void;
|
|
1040
|
+
render(): JSX.Element;
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
}
|
|
1044
|
+
declare module "babylonjs-node-editor/diagram/properties/framePropertyComponent" {
|
|
1045
|
+
import * as React from "react";
|
|
1046
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
1047
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1048
|
+
export interface IFramePropertyTabComponentProps {
|
|
1049
|
+
globalState: GlobalState;
|
|
1050
|
+
frame: GraphFrame;
|
|
1051
|
+
}
|
|
1052
|
+
export declare class FramePropertyTabComponent extends React.Component<IFramePropertyTabComponentProps> {
|
|
1053
|
+
private onFrameExpandStateChangedObserver;
|
|
1054
|
+
constructor(props: IFramePropertyTabComponentProps);
|
|
1055
|
+
componentDidMount(): void;
|
|
1056
|
+
componentWillUnmount(): void;
|
|
1057
|
+
render(): JSX.Element;
|
|
1058
|
+
}
|
|
1059
|
+
|
|
1060
|
+
}
|
|
1061
|
+
declare module "babylonjs-node-editor/diagram/properties/genericNodePropertyComponent" {
|
|
1062
|
+
import * as React from "react";
|
|
1063
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1064
|
+
import { Scene } from "babylonjs/scene";
|
|
1065
|
+
export declare class GenericPropertyComponent extends React.Component<IPropertyComponentProps> {
|
|
1066
|
+
constructor(props: IPropertyComponentProps);
|
|
1067
|
+
render(): JSX.Element;
|
|
1068
|
+
}
|
|
1069
|
+
export declare class GeneralPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1070
|
+
constructor(props: IPropertyComponentProps);
|
|
1071
|
+
render(): JSX.Element;
|
|
1072
|
+
}
|
|
1073
|
+
export declare class GenericPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1074
|
+
constructor(props: IPropertyComponentProps);
|
|
1075
|
+
forceRebuild(notifiers?: {
|
|
1076
|
+
rebuild?: boolean;
|
|
1077
|
+
update?: boolean;
|
|
1078
|
+
activatePreviewCommand?: boolean;
|
|
1079
|
+
callback?: (scene: Scene) => void;
|
|
1080
|
+
}): void;
|
|
1081
|
+
render(): JSX.Element;
|
|
1082
|
+
}
|
|
1083
|
+
|
|
1084
|
+
}
|
|
1085
|
+
declare module "babylonjs-node-editor/diagram/properties/gradientNodePropertyComponent" {
|
|
1086
|
+
import * as React from "react";
|
|
1087
|
+
import { GradientBlockColorStep } from "babylonjs/Materials/Node/Blocks/gradientBlock";
|
|
1088
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1089
|
+
export declare class GradientPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1090
|
+
private onValueChangedObserver;
|
|
1091
|
+
constructor(props: IPropertyComponentProps);
|
|
1092
|
+
componentDidMount(): void;
|
|
1093
|
+
componentWillUnmount(): void;
|
|
1094
|
+
forceRebuild(): void;
|
|
1095
|
+
deleteStep(step: GradientBlockColorStep): void;
|
|
1096
|
+
copyStep(step: GradientBlockColorStep): void;
|
|
1097
|
+
addNewStep(): void;
|
|
1098
|
+
checkForReOrder(): void;
|
|
1099
|
+
render(): JSX.Element;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
}
|
|
1103
|
+
declare module "babylonjs-node-editor/diagram/properties/gradientStepComponent" {
|
|
1104
|
+
import * as React from "react";
|
|
1105
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1106
|
+
import { GradientBlockColorStep } from "babylonjs/Materials/Node/Blocks/gradientBlock";
|
|
1107
|
+
interface IGradientStepComponentProps {
|
|
1108
|
+
globalState: GlobalState;
|
|
1109
|
+
step: GradientBlockColorStep;
|
|
1110
|
+
lineIndex: number;
|
|
1111
|
+
onDelete: () => void;
|
|
1112
|
+
onUpdateStep: () => void;
|
|
1113
|
+
onCheckForReOrder: () => void;
|
|
1114
|
+
onCopy?: () => void;
|
|
1115
|
+
}
|
|
1116
|
+
export declare class GradientStepComponent extends React.Component<IGradientStepComponentProps, {
|
|
1117
|
+
gradient: number;
|
|
1118
|
+
}> {
|
|
1119
|
+
constructor(props: IGradientStepComponentProps);
|
|
1120
|
+
updateColor(color: string): void;
|
|
1121
|
+
updateStep(gradient: number): void;
|
|
1122
|
+
onPointerUp(): void;
|
|
1123
|
+
render(): JSX.Element;
|
|
1124
|
+
}
|
|
1125
|
+
export {};
|
|
1126
|
+
|
|
1127
|
+
}
|
|
1128
|
+
declare module "babylonjs-node-editor/diagram/properties/imageSourcePropertyTabComponent" {
|
|
1129
|
+
import * as React from "react";
|
|
1130
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1131
|
+
import { ImageSourceBlock } from "babylonjs/Materials/Node/Blocks/Dual/imageSourceBlock";
|
|
1132
|
+
export declare class ImageSourcePropertyTabComponent extends React.Component<IPropertyComponentProps, {
|
|
1133
|
+
isEmbedded: boolean;
|
|
1134
|
+
}> {
|
|
1135
|
+
get imageSourceBlock(): ImageSourceBlock;
|
|
1136
|
+
constructor(props: IPropertyComponentProps);
|
|
1137
|
+
UNSAFE_componentWillUpdate(nextProps: IPropertyComponentProps, nextState: {
|
|
1138
|
+
isEmbedded: boolean;
|
|
1139
|
+
loadAsCubeTexture: boolean;
|
|
1140
|
+
}): void;
|
|
1141
|
+
private _generateRandomForCache;
|
|
1142
|
+
updateAfterTextureLoad(): void;
|
|
1143
|
+
removeTexture(): void;
|
|
1144
|
+
_prepareTexture(): void;
|
|
1145
|
+
/**
|
|
1146
|
+
* Replaces the texture of the node
|
|
1147
|
+
* @param file the file of the texture to use
|
|
1148
|
+
*/
|
|
1149
|
+
replaceTexture(file: File): void;
|
|
1150
|
+
replaceTextureWithUrl(url: string): void;
|
|
1151
|
+
render(): JSX.Element;
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1154
|
+
}
|
|
1155
|
+
declare module "babylonjs-node-editor/diagram/properties/inputNodePropertyComponent" {
|
|
1156
|
+
import * as React from "react";
|
|
1157
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1158
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1159
|
+
export declare class InputPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1160
|
+
private onValueChangedObserver;
|
|
1161
|
+
constructor(props: IPropertyComponentProps);
|
|
1162
|
+
componentDidMount(): void;
|
|
1163
|
+
componentWillUnmount(): void;
|
|
1164
|
+
renderValue(globalState: GlobalState): JSX.Element | null;
|
|
1165
|
+
setDefaultValue(): void;
|
|
1166
|
+
render(): JSX.Element;
|
|
1167
|
+
}
|
|
1168
|
+
|
|
1169
|
+
}
|
|
1170
|
+
declare module "babylonjs-node-editor/diagram/properties/lightInformationPropertyTabComponent" {
|
|
1171
|
+
import * as React from "react";
|
|
1172
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1173
|
+
export declare class LightInformationPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1174
|
+
render(): JSX.Element;
|
|
1175
|
+
}
|
|
1176
|
+
|
|
1177
|
+
}
|
|
1178
|
+
declare module "babylonjs-node-editor/diagram/properties/lightPropertyTabComponent" {
|
|
1179
|
+
import * as React from "react";
|
|
1180
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1181
|
+
export declare class LightPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1182
|
+
render(): JSX.Element;
|
|
1183
|
+
}
|
|
1184
|
+
|
|
1185
|
+
}
|
|
1186
|
+
declare module "babylonjs-node-editor/diagram/properties/nodePortPropertyComponent" {
|
|
1187
|
+
import * as React from "react";
|
|
1188
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1189
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
1190
|
+
export interface IFrameNodePortPropertyTabComponentProps {
|
|
1191
|
+
globalState: GlobalState;
|
|
1192
|
+
nodePort: NodePort;
|
|
1193
|
+
}
|
|
1194
|
+
export declare class NodePortPropertyTabComponent extends React.Component<IFrameNodePortPropertyTabComponentProps> {
|
|
1195
|
+
private _onSelectionChangedObserver;
|
|
1196
|
+
constructor(props: IFrameNodePortPropertyTabComponentProps);
|
|
1197
|
+
componentWillUnmount(): void;
|
|
1198
|
+
toggleExposeOnFrame(value: boolean): void;
|
|
1199
|
+
render(): JSX.Element;
|
|
1200
|
+
}
|
|
1201
|
+
|
|
1202
|
+
}
|
|
1203
|
+
declare module "babylonjs-node-editor/diagram/properties/propertyComponentProps" {
|
|
1204
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1205
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
1206
|
+
export interface IPropertyComponentProps {
|
|
1207
|
+
globalState: GlobalState;
|
|
1208
|
+
block: NodeMaterialBlock;
|
|
1209
|
+
}
|
|
1210
|
+
|
|
1211
|
+
}
|
|
1212
|
+
declare module "babylonjs-node-editor/diagram/properties/texturePropertyTabComponent" {
|
|
1213
|
+
import * as React from "react";
|
|
1214
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1215
|
+
import { ReflectionTextureBlock } from "babylonjs/Materials/Node/Blocks/Dual/reflectionTextureBlock";
|
|
1216
|
+
import { ReflectionBlock } from "babylonjs/Materials/Node/Blocks/PBR/reflectionBlock";
|
|
1217
|
+
import { RefractionBlock } from "babylonjs/Materials/Node/Blocks/PBR/refractionBlock";
|
|
1218
|
+
import { TextureBlock } from "babylonjs/Materials/Node/Blocks/Dual/textureBlock";
|
|
1219
|
+
import { CurrentScreenBlock } from "babylonjs/Materials/Node/Blocks/Dual/currentScreenBlock";
|
|
1220
|
+
import { ParticleTextureBlock } from "babylonjs/Materials/Node/Blocks/Particle/particleTextureBlock";
|
|
1221
|
+
declare type ReflectionTexture = ReflectionTextureBlock | ReflectionBlock | RefractionBlock;
|
|
1222
|
+
declare type AnyTexture = TextureBlock | ReflectionTexture | CurrentScreenBlock | ParticleTextureBlock;
|
|
1223
|
+
export declare class TexturePropertyTabComponent extends React.Component<IPropertyComponentProps, {
|
|
1224
|
+
isEmbedded: boolean;
|
|
1225
|
+
loadAsCubeTexture: boolean;
|
|
1226
|
+
textureIsPrefiltered: boolean;
|
|
1227
|
+
}> {
|
|
1228
|
+
get textureBlock(): AnyTexture;
|
|
1229
|
+
constructor(props: IPropertyComponentProps);
|
|
1230
|
+
UNSAFE_componentWillUpdate(nextProps: IPropertyComponentProps, nextState: {
|
|
1231
|
+
isEmbedded: boolean;
|
|
1232
|
+
loadAsCubeTexture: boolean;
|
|
1233
|
+
}): void;
|
|
1234
|
+
private _generateRandomForCache;
|
|
1235
|
+
updateAfterTextureLoad(): void;
|
|
1236
|
+
removeTexture(): void;
|
|
1237
|
+
_prepareTexture(): void;
|
|
1238
|
+
/**
|
|
1239
|
+
* Replaces the texture of the node
|
|
1240
|
+
* @param file the file of the texture to use
|
|
1241
|
+
*/
|
|
1242
|
+
replaceTexture(file: File): void;
|
|
1243
|
+
replaceTextureWithUrl(url: string): void;
|
|
1244
|
+
render(): JSX.Element;
|
|
1245
|
+
}
|
|
1246
|
+
export {};
|
|
1247
|
+
|
|
1248
|
+
}
|
|
1249
|
+
declare module "babylonjs-node-editor/diagram/properties/transformNodePropertyComponent" {
|
|
1250
|
+
import * as React from "react";
|
|
1251
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1252
|
+
export declare class TransformPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1253
|
+
constructor(props: IPropertyComponentProps);
|
|
1254
|
+
render(): JSX.Element;
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1257
|
+
}
|
|
1258
|
+
declare module "babylonjs-node-editor/diagram/properties/trigonometryNodePropertyComponent" {
|
|
1259
|
+
import * as React from "react";
|
|
1260
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1261
|
+
export declare class TrigonometryPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1262
|
+
constructor(props: IPropertyComponentProps);
|
|
1263
|
+
render(): JSX.Element;
|
|
1264
|
+
}
|
|
1265
|
+
|
|
1266
|
+
}
|
|
1267
|
+
declare module "babylonjs-node-editor/diagram/properties/vectorMergerPropertyComponent" {
|
|
1268
|
+
import * as React from "react";
|
|
1269
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1270
|
+
export declare class VectorMergerPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
1271
|
+
constructor(props: IPropertyComponentProps);
|
|
1272
|
+
render(): JSX.Element;
|
|
1273
|
+
}
|
|
1274
|
+
|
|
1275
|
+
}
|
|
1276
|
+
declare module "babylonjs-node-editor/diagram/propertyLedger" {
|
|
1277
|
+
import { ComponentClass } from "react";
|
|
1278
|
+
import { IPropertyComponentProps } from "babylonjs-node-editor/diagram/properties/propertyComponentProps";
|
|
1279
|
+
export declare class PropertyLedger {
|
|
1280
|
+
static RegisteredControls: {
|
|
1281
|
+
[key: string]: ComponentClass<IPropertyComponentProps>;
|
|
1282
|
+
};
|
|
1283
|
+
}
|
|
1284
|
+
|
|
1285
|
+
}
|
|
1286
|
+
declare module "babylonjs-node-editor/globalState" {
|
|
1287
|
+
import { NodeMaterial } from "babylonjs/Materials/Node/nodeMaterial";
|
|
1288
|
+
import { Nullable } from "babylonjs/types";
|
|
1289
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1290
|
+
import { LogEntry } from "babylonjs-node-editor/components/log/logComponent";
|
|
1291
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
1292
|
+
import { PreviewType } from "babylonjs-node-editor/components/preview/previewType";
|
|
1293
|
+
import { Color4 } from "babylonjs/Maths/math.color";
|
|
1294
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
1295
|
+
import { Vector2 } from "babylonjs/Maths/math.vector";
|
|
1296
|
+
import { NodePort } from "babylonjs-node-editor/diagram/nodePort";
|
|
1297
|
+
import { NodeLink } from "babylonjs-node-editor/diagram/nodeLink";
|
|
1298
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
1299
|
+
import { FrameNodePort } from "babylonjs-node-editor/diagram/frameNodePort";
|
|
1300
|
+
import { FramePortData } from "babylonjs-node-editor/diagram/graphCanvas";
|
|
1301
|
+
import { NodeMaterialModes } from "babylonjs/Materials/Node/Enums/nodeMaterialModes";
|
|
1302
|
+
export declare class GlobalState {
|
|
1303
|
+
nodeMaterial: NodeMaterial;
|
|
1304
|
+
hostElement: HTMLElement;
|
|
1305
|
+
hostDocument: HTMLDocument;
|
|
1306
|
+
hostWindow: Window;
|
|
1307
|
+
onSelectionChangedObservable: Observable<Nullable<GraphFrame | GraphNode | NodePort | NodeLink | FramePortData>>;
|
|
1308
|
+
onRebuildRequiredObservable: Observable<boolean>;
|
|
1309
|
+
onBuiltObservable: Observable<void>;
|
|
1310
|
+
onResetRequiredObservable: Observable<void>;
|
|
1311
|
+
onUpdateRequiredObservable: Observable<Nullable<NodeMaterialBlock>>;
|
|
1312
|
+
onZoomToFitRequiredObservable: Observable<void>;
|
|
1313
|
+
onReOrganizedRequiredObservable: Observable<void>;
|
|
1314
|
+
onLogRequiredObservable: Observable<LogEntry>;
|
|
1315
|
+
onErrorMessageDialogRequiredObservable: Observable<string>;
|
|
1316
|
+
onIsLoadingChanged: Observable<boolean>;
|
|
1317
|
+
onPreviewCommandActivated: Observable<boolean>;
|
|
1318
|
+
onLightUpdated: Observable<void>;
|
|
1319
|
+
onPreviewBackgroundChanged: Observable<void>;
|
|
1320
|
+
onBackFaceCullingChanged: Observable<void>;
|
|
1321
|
+
onDepthPrePassChanged: Observable<void>;
|
|
1322
|
+
onAnimationCommandActivated: Observable<void>;
|
|
1323
|
+
onCandidateLinkMoved: Observable<Nullable<Vector2>>;
|
|
1324
|
+
onSelectionBoxMoved: Observable<ClientRect | DOMRect>;
|
|
1325
|
+
onFrameCreatedObservable: Observable<GraphFrame>;
|
|
1326
|
+
onCandidatePortSelectedObservable: Observable<Nullable<NodePort | FrameNodePort>>;
|
|
1327
|
+
onImportFrameObservable: Observable<any>;
|
|
1328
|
+
onGraphNodeRemovalObservable: Observable<GraphNode>;
|
|
1329
|
+
onPopupClosedObservable: Observable<void>;
|
|
1330
|
+
onGetNodeFromBlock: (block: NodeMaterialBlock) => GraphNode;
|
|
1331
|
+
onGridSizeChanged: Observable<void>;
|
|
1332
|
+
onExposePortOnFrameObservable: Observable<GraphNode>;
|
|
1333
|
+
previewType: PreviewType;
|
|
1334
|
+
previewFile: File;
|
|
1335
|
+
particleSystemBlendMode: number;
|
|
1336
|
+
listOfCustomPreviewFiles: File[];
|
|
1337
|
+
rotatePreview: boolean;
|
|
1338
|
+
backgroundColor: Color4;
|
|
1339
|
+
backFaceCulling: boolean;
|
|
1340
|
+
depthPrePass: boolean;
|
|
1341
|
+
blockKeyboardEvents: boolean;
|
|
1342
|
+
hemisphericLight: boolean;
|
|
1343
|
+
directionalLight0: boolean;
|
|
1344
|
+
directionalLight1: boolean;
|
|
1345
|
+
controlCamera: boolean;
|
|
1346
|
+
storeEditorData: (serializationObject: any, frame?: Nullable<GraphFrame>) => void;
|
|
1347
|
+
_mode: NodeMaterialModes;
|
|
1348
|
+
/** Gets the mode */
|
|
1349
|
+
get mode(): NodeMaterialModes;
|
|
1350
|
+
/** Sets the mode */
|
|
1351
|
+
set mode(m: NodeMaterialModes);
|
|
1352
|
+
customSave?: {
|
|
1353
|
+
label: string;
|
|
1354
|
+
action: (data: string) => Promise<void>;
|
|
1355
|
+
};
|
|
1356
|
+
constructor();
|
|
1357
|
+
}
|
|
1358
|
+
|
|
1359
|
+
}
|
|
1360
|
+
declare module "babylonjs-node-editor/graphEditor" {
|
|
1361
|
+
import * as React from "react";
|
|
1362
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1363
|
+
import { NodeMaterialBlock } from "babylonjs/Materials/Node/nodeMaterialBlock";
|
|
1364
|
+
import { Nullable } from "babylonjs/types";
|
|
1365
|
+
import { IEditorData } from "babylonjs-node-editor/nodeLocationInfo";
|
|
1366
|
+
import { GraphNode } from "babylonjs-node-editor/diagram/graphNode";
|
|
1367
|
+
import { IInspectorOptions } from "babylonjs/Debug/debugLayer";
|
|
1368
|
+
interface IGraphEditorProps {
|
|
1369
|
+
globalState: GlobalState;
|
|
1370
|
+
}
|
|
1371
|
+
interface IGraphEditorState {
|
|
1372
|
+
showPreviewPopUp: boolean;
|
|
1373
|
+
}
|
|
1374
|
+
interface IInternalPreviewAreaOptions extends IInspectorOptions {
|
|
1375
|
+
popup: boolean;
|
|
1376
|
+
original: boolean;
|
|
1377
|
+
explorerWidth?: string;
|
|
1378
|
+
inspectorWidth?: string;
|
|
1379
|
+
embedHostWidth?: string;
|
|
1380
|
+
}
|
|
1381
|
+
export declare class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditorState> {
|
|
1382
|
+
private readonly NodeWidth;
|
|
1383
|
+
private _graphCanvas;
|
|
1384
|
+
private _startX;
|
|
1385
|
+
private _moveInProgress;
|
|
1386
|
+
private _leftWidth;
|
|
1387
|
+
private _rightWidth;
|
|
1388
|
+
private _blocks;
|
|
1389
|
+
private _previewManager;
|
|
1390
|
+
private _copiedNodes;
|
|
1391
|
+
private _copiedFrame;
|
|
1392
|
+
private _mouseLocationX;
|
|
1393
|
+
private _mouseLocationY;
|
|
1394
|
+
private _onWidgetKeyUpPointer;
|
|
1395
|
+
private _previewHost;
|
|
1396
|
+
private _popUpWindow;
|
|
1397
|
+
/**
|
|
1398
|
+
* Creates a node and recursivly creates its parent nodes from it's input
|
|
1399
|
+
* @param nodeMaterialBlock
|
|
1400
|
+
*/
|
|
1401
|
+
createNodeFromObject(block: NodeMaterialBlock, recursion?: boolean): GraphNode;
|
|
1402
|
+
addValueNode(type: string): GraphNode;
|
|
1403
|
+
componentDidMount(): void;
|
|
1404
|
+
componentWillUnmount(): void;
|
|
1405
|
+
constructor(props: IGraphEditorProps);
|
|
1406
|
+
reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
|
|
1407
|
+
pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, selectNew?: boolean): GraphNode[] | undefined;
|
|
1408
|
+
zoomToFit(): void;
|
|
1409
|
+
buildMaterial(autoConfigure?: boolean): void;
|
|
1410
|
+
build(): void;
|
|
1411
|
+
loadGraph(): void;
|
|
1412
|
+
showWaitScreen(): void;
|
|
1413
|
+
hideWaitScreen(): void;
|
|
1414
|
+
reOrganize(editorData?: Nullable<IEditorData>, isImportingAFrame?: boolean): void;
|
|
1415
|
+
onPointerDown(evt: React.PointerEvent<HTMLDivElement>): void;
|
|
1416
|
+
onPointerUp(evt: React.PointerEvent<HTMLDivElement>): void;
|
|
1417
|
+
resizeColumns(evt: React.PointerEvent<HTMLDivElement>, forLeft?: boolean): void;
|
|
1418
|
+
buildColumnLayout(): string;
|
|
1419
|
+
emitNewBlock(event: React.DragEvent<HTMLDivElement>): void;
|
|
1420
|
+
handlePopUp: () => void;
|
|
1421
|
+
handleClosingPopUp: () => void;
|
|
1422
|
+
initiatePreviewArea: (canvas?: HTMLCanvasElement) => void;
|
|
1423
|
+
createPopUp: () => void;
|
|
1424
|
+
createPopupWindow: (title: string, windowVariableName: string, width?: number, height?: number) => Window | null;
|
|
1425
|
+
createPreviewMeshControlHost: (options: IInternalPreviewAreaOptions, parentControl: Nullable<HTMLElement>) => void;
|
|
1426
|
+
createPreviewHost: (options: IInternalPreviewAreaOptions, parentControl: Nullable<HTMLElement>) => void;
|
|
1427
|
+
fixPopUpStyles: (document: Document) => void;
|
|
1428
|
+
render(): JSX.Element;
|
|
1429
|
+
}
|
|
1430
|
+
export {};
|
|
1431
|
+
|
|
1432
|
+
}
|
|
1433
|
+
declare module "babylonjs-node-editor/index" {
|
|
1434
|
+
export * from "babylonjs-node-editor/nodeEditor";
|
|
1435
|
+
|
|
1436
|
+
}
|
|
1437
|
+
declare module "babylonjs-node-editor/legacy/legacy" {
|
|
1438
|
+
export * from "babylonjs-node-editor/index";
|
|
1439
|
+
|
|
1440
|
+
}
|
|
1441
|
+
declare module "babylonjs-node-editor/nodeEditor" {
|
|
1442
|
+
import { NodeMaterial } from "babylonjs/Materials/Node/nodeMaterial";
|
|
1443
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1444
|
+
/**
|
|
1445
|
+
* Interface used to specify creation options for the node editor
|
|
1446
|
+
*/
|
|
1447
|
+
export interface INodeEditorOptions {
|
|
1448
|
+
nodeMaterial: NodeMaterial;
|
|
1449
|
+
hostElement?: HTMLElement;
|
|
1450
|
+
customSave?: {
|
|
1451
|
+
label: string;
|
|
1452
|
+
action: (data: string) => Promise<void>;
|
|
1453
|
+
};
|
|
1454
|
+
customLoadObservable?: Observable<any>;
|
|
1455
|
+
}
|
|
1456
|
+
/**
|
|
1457
|
+
* Class used to create a node editor
|
|
1458
|
+
*/
|
|
1459
|
+
export declare class NodeEditor {
|
|
1460
|
+
private static _CurrentState;
|
|
1461
|
+
/**
|
|
1462
|
+
* Show the node editor
|
|
1463
|
+
* @param options defines the options to use to configure the node editor
|
|
1464
|
+
*/
|
|
1465
|
+
static Show(options: INodeEditorOptions): void;
|
|
1466
|
+
}
|
|
1467
|
+
|
|
1468
|
+
}
|
|
1469
|
+
declare module "babylonjs-node-editor/nodeLocationInfo" {
|
|
1470
|
+
export interface INodeLocationInfo {
|
|
1471
|
+
blockId: number;
|
|
1472
|
+
x: number;
|
|
1473
|
+
y: number;
|
|
1474
|
+
}
|
|
1475
|
+
export interface IFrameData {
|
|
1476
|
+
x: number;
|
|
1477
|
+
y: number;
|
|
1478
|
+
width: number;
|
|
1479
|
+
height: number;
|
|
1480
|
+
color: number[];
|
|
1481
|
+
name: string;
|
|
1482
|
+
isCollapsed: boolean;
|
|
1483
|
+
blocks: number[];
|
|
1484
|
+
comments: string;
|
|
1485
|
+
}
|
|
1486
|
+
export interface IEditorData {
|
|
1487
|
+
locations: INodeLocationInfo[];
|
|
1488
|
+
x: number;
|
|
1489
|
+
y: number;
|
|
1490
|
+
zoom: number;
|
|
1491
|
+
frames?: IFrameData[];
|
|
1492
|
+
map?: {
|
|
1493
|
+
[key: number]: number;
|
|
1494
|
+
};
|
|
1495
|
+
}
|
|
1496
|
+
|
|
1497
|
+
}
|
|
1498
|
+
declare module "babylonjs-node-editor/portal" {
|
|
1499
|
+
import * as React from "react";
|
|
1500
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1501
|
+
interface IPortalProps {
|
|
1502
|
+
globalState: GlobalState;
|
|
1503
|
+
}
|
|
1504
|
+
export declare class Portal extends React.Component<IPortalProps> {
|
|
1505
|
+
render(): React.ReactPortal;
|
|
1506
|
+
}
|
|
1507
|
+
export {};
|
|
1508
|
+
|
|
1509
|
+
}
|
|
1510
|
+
declare module "babylonjs-node-editor/serializationTools" {
|
|
1511
|
+
import { NodeMaterial } from "babylonjs/Materials/Node/nodeMaterial";
|
|
1512
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1513
|
+
import { Nullable } from "babylonjs/types";
|
|
1514
|
+
import { GraphFrame } from "babylonjs-node-editor/diagram/graphFrame";
|
|
1515
|
+
export declare class SerializationTools {
|
|
1516
|
+
static UpdateLocations(material: NodeMaterial, globalState: GlobalState, frame?: Nullable<GraphFrame>): void;
|
|
1517
|
+
static Serialize(material: NodeMaterial, globalState: GlobalState, frame?: Nullable<GraphFrame>): string;
|
|
1518
|
+
static Deserialize(serializationObject: any, globalState: GlobalState): void;
|
|
1519
|
+
static AddFrameToMaterial(serializationObject: any, globalState: GlobalState, currentMaterial: NodeMaterial): void;
|
|
1520
|
+
}
|
|
1521
|
+
|
|
1522
|
+
}
|
|
1523
|
+
declare module "babylonjs-node-editor/sharedComponents/buttonLineComponent" {
|
|
1524
|
+
import * as React from "react";
|
|
1525
|
+
export interface IButtonLineComponentProps {
|
|
1526
|
+
label: string;
|
|
1527
|
+
onClick: () => void;
|
|
1528
|
+
isDisabled?: boolean;
|
|
1529
|
+
}
|
|
1530
|
+
export declare class ButtonLineComponent extends React.Component<IButtonLineComponentProps> {
|
|
1531
|
+
constructor(props: IButtonLineComponentProps);
|
|
1532
|
+
render(): JSX.Element;
|
|
1533
|
+
}
|
|
1534
|
+
|
|
1535
|
+
}
|
|
1536
|
+
declare module "babylonjs-node-editor/sharedComponents/checkBoxLineComponent" {
|
|
1537
|
+
import * as React from "react";
|
|
1538
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1539
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1540
|
+
export interface ICheckBoxLineComponentProps {
|
|
1541
|
+
label: string;
|
|
1542
|
+
target?: any;
|
|
1543
|
+
propertyName?: string;
|
|
1544
|
+
isSelected?: () => boolean;
|
|
1545
|
+
onSelect?: (value: boolean) => void;
|
|
1546
|
+
onValueChanged?: () => void;
|
|
1547
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1548
|
+
disabled?: boolean;
|
|
1549
|
+
}
|
|
1550
|
+
export declare class CheckBoxLineComponent extends React.Component<ICheckBoxLineComponentProps, {
|
|
1551
|
+
isSelected: boolean;
|
|
1552
|
+
isDisabled?: boolean;
|
|
1553
|
+
}> {
|
|
1554
|
+
private static _UniqueIdSeed;
|
|
1555
|
+
private _uniqueId;
|
|
1556
|
+
private _localChange;
|
|
1557
|
+
constructor(props: ICheckBoxLineComponentProps);
|
|
1558
|
+
shouldComponentUpdate(nextProps: ICheckBoxLineComponentProps, nextState: {
|
|
1559
|
+
isSelected: boolean;
|
|
1560
|
+
isDisabled: boolean;
|
|
1561
|
+
}): boolean;
|
|
1562
|
+
onChange(): void;
|
|
1563
|
+
render(): JSX.Element;
|
|
1564
|
+
}
|
|
1565
|
+
|
|
1566
|
+
}
|
|
1567
|
+
declare module "babylonjs-node-editor/sharedComponents/color3LineComponent" {
|
|
1568
|
+
import * as React from "react";
|
|
1569
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1570
|
+
import { Color3, Color4 } from "babylonjs/Maths/math.color";
|
|
1571
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1572
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1573
|
+
export interface IColor3LineComponentProps {
|
|
1574
|
+
label: string;
|
|
1575
|
+
target: any;
|
|
1576
|
+
propertyName: string;
|
|
1577
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1578
|
+
onChange?: () => void;
|
|
1579
|
+
globalState: GlobalState;
|
|
1580
|
+
}
|
|
1581
|
+
export declare class Color3LineComponent extends React.Component<IColor3LineComponentProps, {
|
|
1582
|
+
isExpanded: boolean;
|
|
1583
|
+
color: Color3 | Color4;
|
|
1584
|
+
}> {
|
|
1585
|
+
private _localChange;
|
|
1586
|
+
constructor(props: IColor3LineComponentProps);
|
|
1587
|
+
shouldComponentUpdate(nextProps: IColor3LineComponentProps, nextState: {
|
|
1588
|
+
color: Color3 | Color4;
|
|
1589
|
+
}): boolean;
|
|
1590
|
+
onChange(newValue: string): void;
|
|
1591
|
+
switchExpandState(): void;
|
|
1592
|
+
raiseOnPropertyChanged(previousValue: Color3 | Color4): void;
|
|
1593
|
+
updateStateR(value: number): void;
|
|
1594
|
+
updateStateG(value: number): void;
|
|
1595
|
+
updateStateB(value: number): void;
|
|
1596
|
+
copyToClipboard(): void;
|
|
1597
|
+
render(): JSX.Element;
|
|
1598
|
+
}
|
|
1599
|
+
|
|
1600
|
+
}
|
|
1601
|
+
declare module "babylonjs-node-editor/sharedComponents/color4LineComponent" {
|
|
1602
|
+
import * as React from "react";
|
|
1603
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1604
|
+
import { Color4 } from "babylonjs/Maths/math.color";
|
|
1605
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1606
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1607
|
+
export interface IColor4LineComponentProps {
|
|
1608
|
+
label: string;
|
|
1609
|
+
target: any;
|
|
1610
|
+
propertyName: string;
|
|
1611
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1612
|
+
onChange?: () => void;
|
|
1613
|
+
globalState: GlobalState;
|
|
1614
|
+
}
|
|
1615
|
+
export declare class Color4LineComponent extends React.Component<IColor4LineComponentProps, {
|
|
1616
|
+
isExpanded: boolean;
|
|
1617
|
+
color: Color4;
|
|
1618
|
+
}> {
|
|
1619
|
+
private _localChange;
|
|
1620
|
+
constructor(props: IColor4LineComponentProps);
|
|
1621
|
+
shouldComponentUpdate(nextProps: IColor4LineComponentProps, nextState: {
|
|
1622
|
+
color: Color4;
|
|
1623
|
+
}): boolean;
|
|
1624
|
+
onChange(newValue: string): void;
|
|
1625
|
+
switchExpandState(): void;
|
|
1626
|
+
raiseOnPropertyChanged(previousValue: Color4): void;
|
|
1627
|
+
updateStateR(value: number): void;
|
|
1628
|
+
updateStateG(value: number): void;
|
|
1629
|
+
updateStateB(value: number): void;
|
|
1630
|
+
updateStateA(value: number): void;
|
|
1631
|
+
copyToClipboard(): void;
|
|
1632
|
+
render(): JSX.Element;
|
|
1633
|
+
}
|
|
1634
|
+
|
|
1635
|
+
}
|
|
1636
|
+
declare module "babylonjs-node-editor/sharedComponents/colorPickerComponent" {
|
|
1637
|
+
import * as React from "react";
|
|
1638
|
+
import { Color4, Color3 } from "babylonjs/Maths/math.color";
|
|
1639
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1640
|
+
export interface IColorPickerComponentProps {
|
|
1641
|
+
value: Color4 | Color3;
|
|
1642
|
+
onColorChanged: (newOne: string) => void;
|
|
1643
|
+
globalState: GlobalState;
|
|
1644
|
+
}
|
|
1645
|
+
interface IColorPickerComponentState {
|
|
1646
|
+
pickerEnabled: boolean;
|
|
1647
|
+
color: Color3 | Color4;
|
|
1648
|
+
hex: string;
|
|
1649
|
+
}
|
|
1650
|
+
export declare class ColorPickerLineComponent extends React.Component<IColorPickerComponentProps, IColorPickerComponentState> {
|
|
1651
|
+
private _floatRef;
|
|
1652
|
+
private _floatHostRef;
|
|
1653
|
+
constructor(props: IColorPickerComponentProps);
|
|
1654
|
+
syncPositions(): void;
|
|
1655
|
+
shouldComponentUpdate(nextProps: IColorPickerComponentProps, nextState: IColorPickerComponentState): boolean;
|
|
1656
|
+
componentDidUpdate(): void;
|
|
1657
|
+
componentDidMount(): void;
|
|
1658
|
+
setPickerState(enabled: boolean): void;
|
|
1659
|
+
render(): JSX.Element;
|
|
1660
|
+
}
|
|
1661
|
+
export {};
|
|
1662
|
+
|
|
1663
|
+
}
|
|
1664
|
+
declare module "babylonjs-node-editor/sharedComponents/draggableLineComponent" {
|
|
1665
|
+
import * as React from "react";
|
|
1666
|
+
export interface IButtonLineComponentProps {
|
|
1667
|
+
data: string;
|
|
1668
|
+
tooltip: string;
|
|
1669
|
+
}
|
|
1670
|
+
export declare class DraggableLineComponent extends React.Component<IButtonLineComponentProps> {
|
|
1671
|
+
constructor(props: IButtonLineComponentProps);
|
|
1672
|
+
render(): JSX.Element;
|
|
1673
|
+
}
|
|
1674
|
+
|
|
1675
|
+
}
|
|
1676
|
+
declare module "babylonjs-node-editor/sharedComponents/draggableLineWithButtonComponent" {
|
|
1677
|
+
import * as React from "react";
|
|
1678
|
+
export interface IDraggableLineWithButtonComponent {
|
|
1679
|
+
data: string;
|
|
1680
|
+
tooltip: string;
|
|
1681
|
+
iconImage: any;
|
|
1682
|
+
onIconClick: (value: string) => void;
|
|
1683
|
+
iconTitle: string;
|
|
1684
|
+
lenSuffixToRemove?: number;
|
|
1685
|
+
}
|
|
1686
|
+
export declare class DraggableLineWithButtonComponent extends React.Component<IDraggableLineWithButtonComponent> {
|
|
1687
|
+
constructor(props: IDraggableLineWithButtonComponent);
|
|
1688
|
+
render(): JSX.Element;
|
|
1689
|
+
}
|
|
1690
|
+
|
|
1691
|
+
}
|
|
1692
|
+
declare module "babylonjs-node-editor/sharedComponents/fileButtonLineComponent" {
|
|
1693
|
+
import * as React from "react";
|
|
1694
|
+
interface IFileButtonLineComponentProps {
|
|
1695
|
+
label: string;
|
|
1696
|
+
onClick: (file: File) => void;
|
|
1697
|
+
accept: string;
|
|
1698
|
+
uploadName?: string;
|
|
1699
|
+
}
|
|
1700
|
+
export declare class FileButtonLineComponent extends React.Component<IFileButtonLineComponentProps> {
|
|
1701
|
+
private uploadRef;
|
|
1702
|
+
constructor(props: IFileButtonLineComponentProps);
|
|
1703
|
+
onChange(evt: any): void;
|
|
1704
|
+
render(): JSX.Element;
|
|
1705
|
+
}
|
|
1706
|
+
export {};
|
|
1707
|
+
|
|
1708
|
+
}
|
|
1709
|
+
declare module "babylonjs-node-editor/sharedComponents/floatLineComponent" {
|
|
1710
|
+
import * as React from "react";
|
|
1711
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1712
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1713
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1714
|
+
interface IFloatLineComponentProps {
|
|
1715
|
+
label: string;
|
|
1716
|
+
target: any;
|
|
1717
|
+
propertyName: string;
|
|
1718
|
+
onChange?: (newValue: number) => void;
|
|
1719
|
+
isInteger?: boolean;
|
|
1720
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1721
|
+
additionalClass?: string;
|
|
1722
|
+
step?: string;
|
|
1723
|
+
digits?: number;
|
|
1724
|
+
globalState: GlobalState;
|
|
1725
|
+
min?: number;
|
|
1726
|
+
max?: number;
|
|
1727
|
+
smallUI?: boolean;
|
|
1728
|
+
onEnter?: (newValue: number) => void;
|
|
1729
|
+
}
|
|
1730
|
+
export declare class FloatLineComponent extends React.Component<IFloatLineComponentProps, {
|
|
1731
|
+
value: string;
|
|
1732
|
+
}> {
|
|
1733
|
+
private _localChange;
|
|
1734
|
+
private _store;
|
|
1735
|
+
private _regExp;
|
|
1736
|
+
private _onFocus;
|
|
1737
|
+
constructor(props: IFloatLineComponentProps);
|
|
1738
|
+
shouldComponentUpdate(nextProps: IFloatLineComponentProps, nextState: {
|
|
1739
|
+
value: string;
|
|
1740
|
+
}): boolean;
|
|
1741
|
+
componentWillUnmount(): void;
|
|
1742
|
+
raiseOnPropertyChanged(newValue: number, previousValue: number): void;
|
|
1743
|
+
updateValue(valueString: string): void;
|
|
1744
|
+
render(): JSX.Element;
|
|
1745
|
+
}
|
|
1746
|
+
export {};
|
|
1747
|
+
|
|
1748
|
+
}
|
|
1749
|
+
declare module "babylonjs-node-editor/sharedComponents/lineContainerComponent" {
|
|
1750
|
+
import * as React from "react";
|
|
1751
|
+
interface ILineContainerComponentProps {
|
|
1752
|
+
title: string;
|
|
1753
|
+
children: any[] | any;
|
|
1754
|
+
closed?: boolean;
|
|
1755
|
+
}
|
|
1756
|
+
export declare class LineContainerComponent extends React.Component<ILineContainerComponentProps, {
|
|
1757
|
+
isExpanded: boolean;
|
|
1758
|
+
}> {
|
|
1759
|
+
constructor(props: ILineContainerComponentProps);
|
|
1760
|
+
switchExpandedState(): void;
|
|
1761
|
+
renderHeader(): JSX.Element;
|
|
1762
|
+
render(): JSX.Element;
|
|
1763
|
+
}
|
|
1764
|
+
export {};
|
|
1765
|
+
|
|
1766
|
+
}
|
|
1767
|
+
declare module "babylonjs-node-editor/sharedComponents/lineWithFileButtonComponent" {
|
|
1768
|
+
import * as React from "react";
|
|
1769
|
+
interface ILineWithFileButtonComponentProps {
|
|
1770
|
+
title: string;
|
|
1771
|
+
closed?: boolean;
|
|
1772
|
+
label: string;
|
|
1773
|
+
iconImage: any;
|
|
1774
|
+
onIconClick: (file: File) => void;
|
|
1775
|
+
accept: string;
|
|
1776
|
+
uploadName?: string;
|
|
1777
|
+
}
|
|
1778
|
+
export declare class LineWithFileButtonComponent extends React.Component<ILineWithFileButtonComponentProps, {
|
|
1779
|
+
isExpanded: boolean;
|
|
1780
|
+
}> {
|
|
1781
|
+
private uploadRef;
|
|
1782
|
+
constructor(props: ILineWithFileButtonComponentProps);
|
|
1783
|
+
onChange(evt: any): void;
|
|
1784
|
+
switchExpandedState(): void;
|
|
1785
|
+
render(): JSX.Element;
|
|
1786
|
+
}
|
|
1787
|
+
export {};
|
|
1788
|
+
|
|
1789
|
+
}
|
|
1790
|
+
declare module "babylonjs-node-editor/sharedComponents/matrixLineComponent" {
|
|
1791
|
+
import * as React from "react";
|
|
1792
|
+
import { Vector3, Matrix, Vector4 } from "babylonjs/Maths/math.vector";
|
|
1793
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1794
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1795
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1796
|
+
interface IMatrixLineComponentProps {
|
|
1797
|
+
label: string;
|
|
1798
|
+
target: any;
|
|
1799
|
+
propertyName: string;
|
|
1800
|
+
step?: number;
|
|
1801
|
+
onChange?: (newValue: Matrix) => void;
|
|
1802
|
+
onModeChange?: (mode: number) => void;
|
|
1803
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1804
|
+
mode?: number;
|
|
1805
|
+
globalState: GlobalState;
|
|
1806
|
+
}
|
|
1807
|
+
export declare class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
|
|
1808
|
+
value: Matrix;
|
|
1809
|
+
mode: number;
|
|
1810
|
+
angle: number;
|
|
1811
|
+
}> {
|
|
1812
|
+
private _localChange;
|
|
1813
|
+
constructor(props: IMatrixLineComponentProps);
|
|
1814
|
+
shouldComponentUpdate(nextProps: IMatrixLineComponentProps, nextState: {
|
|
1815
|
+
value: Matrix;
|
|
1816
|
+
mode: number;
|
|
1817
|
+
angle: number;
|
|
1818
|
+
}): boolean;
|
|
1819
|
+
raiseOnPropertyChanged(previousValue: Vector3): void;
|
|
1820
|
+
updateMatrix(): void;
|
|
1821
|
+
updateRow(value: Vector4, row: number): void;
|
|
1822
|
+
updateBasedOnMode(value: number): void;
|
|
1823
|
+
render(): JSX.Element;
|
|
1824
|
+
}
|
|
1825
|
+
export {};
|
|
1826
|
+
|
|
1827
|
+
}
|
|
1828
|
+
declare module "babylonjs-node-editor/sharedComponents/messageDialog" {
|
|
1829
|
+
import * as React from "react";
|
|
1830
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1831
|
+
interface IMessageDialogComponentProps {
|
|
1832
|
+
globalState: GlobalState;
|
|
1833
|
+
}
|
|
1834
|
+
export declare class MessageDialogComponent extends React.Component<IMessageDialogComponentProps, {
|
|
1835
|
+
message: string;
|
|
1836
|
+
isError: boolean;
|
|
1837
|
+
}> {
|
|
1838
|
+
constructor(props: IMessageDialogComponentProps);
|
|
1839
|
+
render(): JSX.Element | null;
|
|
1840
|
+
}
|
|
1841
|
+
export {};
|
|
1842
|
+
|
|
1843
|
+
}
|
|
1844
|
+
declare module "babylonjs-node-editor/sharedComponents/numericInputComponent" {
|
|
1845
|
+
import * as React from "react";
|
|
1846
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1847
|
+
interface INumericInputComponentProps {
|
|
1848
|
+
label: string;
|
|
1849
|
+
value: number;
|
|
1850
|
+
step?: number;
|
|
1851
|
+
onChange: (value: number) => void;
|
|
1852
|
+
globalState: GlobalState;
|
|
1853
|
+
}
|
|
1854
|
+
export declare class NumericInputComponent extends React.Component<INumericInputComponentProps, {
|
|
1855
|
+
value: string;
|
|
1856
|
+
}> {
|
|
1857
|
+
static defaultProps: {
|
|
1858
|
+
step: number;
|
|
1859
|
+
};
|
|
1860
|
+
private _localChange;
|
|
1861
|
+
constructor(props: INumericInputComponentProps);
|
|
1862
|
+
shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
|
|
1863
|
+
value: string;
|
|
1864
|
+
}): boolean;
|
|
1865
|
+
updateValue(evt: any): void;
|
|
1866
|
+
render(): JSX.Element;
|
|
1867
|
+
}
|
|
1868
|
+
export {};
|
|
1869
|
+
|
|
1870
|
+
}
|
|
1871
|
+
declare module "babylonjs-node-editor/sharedComponents/optionsLineComponent" {
|
|
1872
|
+
import * as React from "react";
|
|
1873
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1874
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1875
|
+
import { IInspectableOptions } from "babylonjs/Misc/iInspectable";
|
|
1876
|
+
interface IOptionsLineComponentProps {
|
|
1877
|
+
label: string;
|
|
1878
|
+
target: any;
|
|
1879
|
+
className?: string;
|
|
1880
|
+
propertyName?: string;
|
|
1881
|
+
options: IInspectableOptions[];
|
|
1882
|
+
noDirectUpdate?: boolean;
|
|
1883
|
+
onSelect?: (value: number | string) => void;
|
|
1884
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1885
|
+
valuesAreStrings?: boolean;
|
|
1886
|
+
defaultIfNull?: number;
|
|
1887
|
+
getSelection?: (target: any) => number;
|
|
1888
|
+
}
|
|
1889
|
+
export declare class OptionsLineComponent extends React.Component<IOptionsLineComponentProps, {
|
|
1890
|
+
value: number | string;
|
|
1891
|
+
}> {
|
|
1892
|
+
private _localChange;
|
|
1893
|
+
private _getValue;
|
|
1894
|
+
constructor(props: IOptionsLineComponentProps);
|
|
1895
|
+
setValue(value: string | number): void;
|
|
1896
|
+
shouldComponentUpdate(nextProps: IOptionsLineComponentProps, nextState: {
|
|
1897
|
+
value: number;
|
|
1898
|
+
}): boolean;
|
|
1899
|
+
raiseOnPropertyChanged(newValue: number | string, previousValue: number | string): void;
|
|
1900
|
+
updateValue(valueString: string): void;
|
|
1901
|
+
render(): JSX.Element;
|
|
1902
|
+
}
|
|
1903
|
+
export {};
|
|
1904
|
+
|
|
1905
|
+
}
|
|
1906
|
+
declare module "babylonjs-node-editor/sharedComponents/popup" {
|
|
1907
|
+
export declare class Popup {
|
|
1908
|
+
static CreatePopup(title: string, windowVariableName: string, width?: number, height?: number): HTMLDivElement | null;
|
|
1909
|
+
static _CopyStyles(sourceDoc: HTMLDocument, targetDoc: HTMLDocument): void;
|
|
1910
|
+
}
|
|
1911
|
+
|
|
1912
|
+
}
|
|
1913
|
+
declare module "babylonjs-node-editor/sharedComponents/propertyChangedEvent" {
|
|
1914
|
+
export declare class PropertyChangedEvent {
|
|
1915
|
+
object: any;
|
|
1916
|
+
property: string;
|
|
1917
|
+
value: any;
|
|
1918
|
+
initialValue: any;
|
|
1919
|
+
}
|
|
1920
|
+
|
|
1921
|
+
}
|
|
1922
|
+
declare module "babylonjs-node-editor/sharedComponents/sliderLineComponent" {
|
|
1923
|
+
import * as React from "react";
|
|
1924
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1925
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1926
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1927
|
+
interface ISliderLineComponentProps {
|
|
1928
|
+
label: string;
|
|
1929
|
+
target?: any;
|
|
1930
|
+
propertyName?: string;
|
|
1931
|
+
minimum: number;
|
|
1932
|
+
maximum: number;
|
|
1933
|
+
step: number;
|
|
1934
|
+
directValue?: number;
|
|
1935
|
+
useEuler?: boolean;
|
|
1936
|
+
onChange?: (value: number) => void;
|
|
1937
|
+
onInput?: (value: number) => void;
|
|
1938
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1939
|
+
decimalCount?: number;
|
|
1940
|
+
globalState: GlobalState;
|
|
1941
|
+
}
|
|
1942
|
+
export declare class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
|
|
1943
|
+
value: number;
|
|
1944
|
+
}> {
|
|
1945
|
+
private _localChange;
|
|
1946
|
+
constructor(props: ISliderLineComponentProps);
|
|
1947
|
+
shouldComponentUpdate(nextProps: ISliderLineComponentProps, nextState: {
|
|
1948
|
+
value: number;
|
|
1949
|
+
}): boolean;
|
|
1950
|
+
onChange(newValueString: any): void;
|
|
1951
|
+
onInput(newValueString: any): void;
|
|
1952
|
+
prepareDataToRead(value: number): number;
|
|
1953
|
+
render(): JSX.Element;
|
|
1954
|
+
}
|
|
1955
|
+
export {};
|
|
1956
|
+
|
|
1957
|
+
}
|
|
1958
|
+
declare module "babylonjs-node-editor/sharedComponents/textInputLineComponent" {
|
|
1959
|
+
import * as React from "react";
|
|
1960
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
1961
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
1962
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
1963
|
+
interface ITextInputLineComponentProps {
|
|
1964
|
+
label: string;
|
|
1965
|
+
globalState: GlobalState;
|
|
1966
|
+
target?: any;
|
|
1967
|
+
propertyName?: string;
|
|
1968
|
+
value?: string;
|
|
1969
|
+
multilines?: boolean;
|
|
1970
|
+
onChange?: (value: string) => void;
|
|
1971
|
+
validator?: (value: string) => boolean;
|
|
1972
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
1973
|
+
}
|
|
1974
|
+
export declare class TextInputLineComponent extends React.Component<ITextInputLineComponentProps, {
|
|
1975
|
+
value: string;
|
|
1976
|
+
}> {
|
|
1977
|
+
private _localChange;
|
|
1978
|
+
private _onFocus;
|
|
1979
|
+
constructor(props: ITextInputLineComponentProps);
|
|
1980
|
+
shouldComponentUpdate(nextProps: ITextInputLineComponentProps, nextState: {
|
|
1981
|
+
value: string;
|
|
1982
|
+
}): boolean;
|
|
1983
|
+
componentWillUnmount(): void;
|
|
1984
|
+
raiseOnPropertyChanged(newValue: string, previousValue: string): void;
|
|
1985
|
+
updateValue(value: string, raisePropertyChanged: boolean): void;
|
|
1986
|
+
render(): JSX.Element;
|
|
1987
|
+
}
|
|
1988
|
+
export {};
|
|
1989
|
+
|
|
1990
|
+
}
|
|
1991
|
+
declare module "babylonjs-node-editor/sharedComponents/textLineComponent" {
|
|
1992
|
+
import * as React from "react";
|
|
1993
|
+
interface ITextLineComponentProps {
|
|
1994
|
+
label: string;
|
|
1995
|
+
value: string;
|
|
1996
|
+
color?: string;
|
|
1997
|
+
underline?: boolean;
|
|
1998
|
+
onLink?: () => void;
|
|
1999
|
+
}
|
|
2000
|
+
export declare class TextLineComponent extends React.Component<ITextLineComponentProps> {
|
|
2001
|
+
constructor(props: ITextLineComponentProps);
|
|
2002
|
+
onLink(): void;
|
|
2003
|
+
renderContent(): JSX.Element;
|
|
2004
|
+
render(): JSX.Element;
|
|
2005
|
+
}
|
|
2006
|
+
export {};
|
|
2007
|
+
|
|
2008
|
+
}
|
|
2009
|
+
declare module "babylonjs-node-editor/sharedComponents/textureLineComponent" {
|
|
2010
|
+
import * as React from "react";
|
|
2011
|
+
import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
|
|
2012
|
+
interface ITextureLineComponentProps {
|
|
2013
|
+
texture: BaseTexture;
|
|
2014
|
+
width: number;
|
|
2015
|
+
height: number;
|
|
2016
|
+
globalState?: any;
|
|
2017
|
+
hideChannelSelect?: boolean;
|
|
2018
|
+
}
|
|
2019
|
+
export interface ITextureLineComponentState {
|
|
2020
|
+
displayRed: boolean;
|
|
2021
|
+
displayGreen: boolean;
|
|
2022
|
+
displayBlue: boolean;
|
|
2023
|
+
displayAlpha: boolean;
|
|
2024
|
+
face: number;
|
|
2025
|
+
}
|
|
2026
|
+
export declare class TextureLineComponent extends React.Component<ITextureLineComponentProps, ITextureLineComponentState> {
|
|
2027
|
+
private canvasRef;
|
|
2028
|
+
constructor(props: ITextureLineComponentProps);
|
|
2029
|
+
shouldComponentUpdate(nextProps: ITextureLineComponentProps, nextState: {
|
|
2030
|
+
displayRed: boolean;
|
|
2031
|
+
displayGreen: boolean;
|
|
2032
|
+
displayBlue: boolean;
|
|
2033
|
+
displayAlpha: boolean;
|
|
2034
|
+
face: number;
|
|
2035
|
+
}): boolean;
|
|
2036
|
+
componentDidMount(): void;
|
|
2037
|
+
componentDidUpdate(): void;
|
|
2038
|
+
updatePreview(): void;
|
|
2039
|
+
static UpdatePreview(previewCanvas: HTMLCanvasElement, texture: BaseTexture, width: number, options: ITextureLineComponentState, onReady?: () => void, globalState?: any): Promise<void>;
|
|
2040
|
+
render(): JSX.Element;
|
|
2041
|
+
}
|
|
2042
|
+
export {};
|
|
2043
|
+
|
|
2044
|
+
}
|
|
2045
|
+
declare module "babylonjs-node-editor/sharedComponents/vector2LineComponent" {
|
|
2046
|
+
import * as React from "react";
|
|
2047
|
+
import { Vector2 } from "babylonjs/Maths/math.vector";
|
|
2048
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
2049
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
2050
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
2051
|
+
interface IVector2LineComponentProps {
|
|
2052
|
+
label: string;
|
|
2053
|
+
target: any;
|
|
2054
|
+
propertyName: string;
|
|
2055
|
+
step?: number;
|
|
2056
|
+
onChange?: (newvalue: Vector2) => void;
|
|
2057
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
2058
|
+
globalState: GlobalState;
|
|
2059
|
+
}
|
|
2060
|
+
export declare class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
|
|
2061
|
+
isExpanded: boolean;
|
|
2062
|
+
value: Vector2;
|
|
2063
|
+
}> {
|
|
2064
|
+
static defaultProps: {
|
|
2065
|
+
step: number;
|
|
2066
|
+
};
|
|
2067
|
+
private _localChange;
|
|
2068
|
+
constructor(props: IVector2LineComponentProps);
|
|
2069
|
+
shouldComponentUpdate(nextProps: IVector2LineComponentProps, nextState: {
|
|
2070
|
+
isExpanded: boolean;
|
|
2071
|
+
value: Vector2;
|
|
2072
|
+
}): boolean;
|
|
2073
|
+
switchExpandState(): void;
|
|
2074
|
+
raiseOnPropertyChanged(previousValue: Vector2): void;
|
|
2075
|
+
updateStateX(value: number): void;
|
|
2076
|
+
updateStateY(value: number): void;
|
|
2077
|
+
render(): JSX.Element;
|
|
2078
|
+
}
|
|
2079
|
+
export {};
|
|
2080
|
+
|
|
2081
|
+
}
|
|
2082
|
+
declare module "babylonjs-node-editor/sharedComponents/vector3LineComponent" {
|
|
2083
|
+
import * as React from "react";
|
|
2084
|
+
import { Vector3 } from "babylonjs/Maths/math.vector";
|
|
2085
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
2086
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
2087
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
2088
|
+
interface IVector3LineComponentProps {
|
|
2089
|
+
label: string;
|
|
2090
|
+
target: any;
|
|
2091
|
+
propertyName: string;
|
|
2092
|
+
step?: number;
|
|
2093
|
+
onChange?: (newvalue: Vector3) => void;
|
|
2094
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
2095
|
+
globalState: GlobalState;
|
|
2096
|
+
}
|
|
2097
|
+
export declare class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
|
|
2098
|
+
isExpanded: boolean;
|
|
2099
|
+
value: Vector3;
|
|
2100
|
+
}> {
|
|
2101
|
+
static defaultProps: {
|
|
2102
|
+
step: number;
|
|
2103
|
+
};
|
|
2104
|
+
private _localChange;
|
|
2105
|
+
constructor(props: IVector3LineComponentProps);
|
|
2106
|
+
shouldComponentUpdate(nextProps: IVector3LineComponentProps, nextState: {
|
|
2107
|
+
isExpanded: boolean;
|
|
2108
|
+
value: Vector3;
|
|
2109
|
+
}): boolean;
|
|
2110
|
+
switchExpandState(): void;
|
|
2111
|
+
raiseOnPropertyChanged(previousValue: Vector3): void;
|
|
2112
|
+
updateVector3(): void;
|
|
2113
|
+
updateStateX(value: number): void;
|
|
2114
|
+
updateStateY(value: number): void;
|
|
2115
|
+
updateStateZ(value: number): void;
|
|
2116
|
+
render(): JSX.Element;
|
|
2117
|
+
}
|
|
2118
|
+
export {};
|
|
2119
|
+
|
|
2120
|
+
}
|
|
2121
|
+
declare module "babylonjs-node-editor/sharedComponents/vector4LineComponent" {
|
|
2122
|
+
import * as React from "react";
|
|
2123
|
+
import { Vector4 } from "babylonjs/Maths/math.vector";
|
|
2124
|
+
import { Observable } from "babylonjs/Misc/observable";
|
|
2125
|
+
import { PropertyChangedEvent } from "babylonjs-node-editor/sharedComponents/propertyChangedEvent";
|
|
2126
|
+
import { GlobalState } from "babylonjs-node-editor/globalState";
|
|
2127
|
+
interface IVector4LineComponentProps {
|
|
2128
|
+
label: string;
|
|
2129
|
+
target?: any;
|
|
2130
|
+
propertyName?: string;
|
|
2131
|
+
value?: Vector4;
|
|
2132
|
+
step?: number;
|
|
2133
|
+
onChange?: (newvalue: Vector4) => void;
|
|
2134
|
+
onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
|
|
2135
|
+
globalState: GlobalState;
|
|
2136
|
+
}
|
|
2137
|
+
export declare class Vector4LineComponent extends React.Component<IVector4LineComponentProps, {
|
|
2138
|
+
isExpanded: boolean;
|
|
2139
|
+
value: Vector4;
|
|
2140
|
+
}> {
|
|
2141
|
+
static defaultProps: {
|
|
2142
|
+
step: number;
|
|
2143
|
+
};
|
|
2144
|
+
private _localChange;
|
|
2145
|
+
constructor(props: IVector4LineComponentProps);
|
|
2146
|
+
shouldComponentUpdate(nextProps: IVector4LineComponentProps, nextState: {
|
|
2147
|
+
isExpanded: boolean;
|
|
2148
|
+
value: Vector4;
|
|
2149
|
+
}): boolean;
|
|
2150
|
+
switchExpandState(): void;
|
|
2151
|
+
raiseOnPropertyChanged(previousValue: Vector4): void;
|
|
2152
|
+
updateVector4(): void;
|
|
2153
|
+
updateStateX(value: number): void;
|
|
2154
|
+
updateStateY(value: number): void;
|
|
2155
|
+
updateStateZ(value: number): void;
|
|
2156
|
+
updateStateW(value: number): void;
|
|
2157
|
+
render(): JSX.Element;
|
|
2158
|
+
}
|
|
2159
|
+
export {};
|
|
2160
|
+
|
|
2161
|
+
}
|
|
2162
|
+
|
|
2163
|
+
declare module "babylonjs-node-editor" {
|
|
2164
|
+
export * from "babylonjs-node-editor/legacy/legacy";
|
|
2165
|
+
}
|
|
2166
|
+
|
|
2167
|
+
declare module BABYLON.NodeEditor {
|
|
2168
|
+
export class BlockTools {
|
|
2169
|
static GetBlockFromString(data: string, scene: BABYLON.Scene, nodeMaterial: BABYLON.NodeMaterial): BABYLON.ElbowBlock | BABYLON.TwirlBlock | BABYLON.VoronoiNoiseBlock | BABYLON.ScreenSpaceBlock | BABYLON.CloudBlock | BABYLON.MatrixBuilderBlock | BABYLON.DesaturateBlock | BABYLON.RefractBlock | BABYLON.ReflectBlock | BABYLON.DerivativeBlock | BABYLON.Rotate2dBlock | BABYLON.NormalBlendBlock | BABYLON.WorleyNoise3DBlock | BABYLON.SimplexPerlin3DBlock | BABYLON.BonesBlock | BABYLON.InstancesBlock | BABYLON.MorphTargetsBlock | BABYLON.DiscardBlock | BABYLON.ImageProcessingBlock | BABYLON.ColorMergerBlock | BABYLON.VectorMergerBlock | BABYLON.ColorSplitterBlock | BABYLON.VectorSplitterBlock | BABYLON.TextureBlock | BABYLON.ReflectionTextureBlock | BABYLON.LightBlock | BABYLON.FogBlock | BABYLON.VertexOutputBlock | BABYLON.FragmentOutputBlock | BABYLON.AddBlock | BABYLON.ClampBlock | BABYLON.ScaleBlock | BABYLON.CrossBlock | BABYLON.DotBlock | BABYLON.PowBlock | BABYLON.MultiplyBlock | BABYLON.TransformBlock | BABYLON.TrigonometryBlock | BABYLON.RemapBlock | BABYLON.NormalizeBlock | BABYLON.FresnelBlock | BABYLON.LerpBlock | BABYLON.NLerpBlock | BABYLON.DivideBlock | BABYLON.SubtractBlock | BABYLON.ModBlock | BABYLON.StepBlock | BABYLON.SmoothStepBlock | BABYLON.OneMinusBlock | BABYLON.ReciprocalBlock | BABYLON.ViewDirectionBlock | BABYLON.LightInformationBlock | BABYLON.MaxBlock | BABYLON.MinBlock | BABYLON.LengthBlock | BABYLON.DistanceBlock | BABYLON.NegateBlock | BABYLON.PerturbNormalBlock | BABYLON.RandomNumberBlock | BABYLON.ReplaceColorBlock | BABYLON.PosterizeBlock | BABYLON.ArcTan2Block | BABYLON.GradientBlock | BABYLON.FrontFacingBlock | BABYLON.WaveBlock | BABYLON.InputBlock | BABYLON.PBRMetallicRoughnessBlock | BABYLON.SheenBlock | BABYLON.AnisotropyBlock | BABYLON.ReflectionBlock | BABYLON.ClearCoatBlock | BABYLON.RefractionBlock | BABYLON.SubSurfaceBlock | BABYLON.CurrentScreenBlock | BABYLON.ParticleTextureBlock | BABYLON.ParticleRampGradientBlock | BABYLON.ParticleBlendMultiplyBlock | BABYLON.FragCoordBlock | BABYLON.ScreenSizeBlock | BABYLON.SceneDepthBlock | BABYLON.ConditionalBlock | BABYLON.ImageSourceBlock | BABYLON.ClipPlanesBlock | null;
|
|
1
2170
|
static GetColorFromConnectionNodeType(type: BABYLON.NodeMaterialBlockConnectionPointTypes): string;
|
|
2
2171
|
static GetConnectionNodeTypeFromString(type: string): BABYLON.NodeMaterialBlockConnectionPointTypes.Float | BABYLON.NodeMaterialBlockConnectionPointTypes.Vector2 | BABYLON.NodeMaterialBlockConnectionPointTypes.Vector3 | BABYLON.NodeMaterialBlockConnectionPointTypes.Vector4 | BABYLON.NodeMaterialBlockConnectionPointTypes.Color3 | BABYLON.NodeMaterialBlockConnectionPointTypes.Color4 | BABYLON.NodeMaterialBlockConnectionPointTypes.Matrix | BABYLON.NodeMaterialBlockConnectionPointTypes.AutoDetect;
|
|
3
2172
|
static GetStringFromConnectionNodeType(type: BABYLON.NodeMaterialBlockConnectionPointTypes): "" | "Float" | "Vector2" | "Vector3" | "Vector4" | "Matrix" | "Color3" | "Color4";
|
|
4
2173
|
}
|
|
2174
|
+
|
|
2175
|
+
interface ILogComponentProps {
|
|
5
2176
|
globalState: GlobalState;
|
|
6
2177
|
}
|
|
7
2178
|
export class LogEntry {
|
|
8
2179
|
message: string;
|
|
9
2180
|
isError: boolean;
|
|
10
2181
|
constructor(message: string, isError: boolean);
|
|
11
2182
|
}
|
|
12
2183
|
export class LogComponent extends React.Component<ILogComponentProps, {
|
|
13
2184
|
logs: LogEntry[];
|
|
14
2185
|
}> {
|
|
15
2186
|
constructor(props: ILogComponentProps);
|
|
16
2187
|
componentDidMount(): void;
|
|
17
2188
|
componentDidUpdate(): void;
|
|
18
2189
|
render(): JSX.Element;
|
|
19
2190
|
}
|
|
2191
|
+
|
|
2192
|
+
interface INodeListComponentProps {
|
|
20
2193
|
globalState: GlobalState;
|
|
21
2194
|
}
|
|
22
2195
|
export class NodeListComponent extends React.Component<INodeListComponentProps, {
|
|
23
2196
|
filter: string;
|
|
24
2197
|
}> {
|
|
25
2198
|
private _onResetRequiredObserver;
|
|
26
2199
|
private static _Tooltips;
|
|
27
2200
|
private _customFrameList;
|
|
28
2201
|
private _customBlockList;
|
|
29
2202
|
constructor(props: INodeListComponentProps);
|
|
30
2203
|
componentWillUnmount(): void;
|
|
31
2204
|
filterContent(filter: string): void;
|
|
32
2205
|
loadCustomFrame(file: File): void;
|
|
33
2206
|
removeItem(value: string): void;
|
|
34
2207
|
loadCustomBlock(file: File): void;
|
|
35
2208
|
removeCustomBlock(value: string): void;
|
|
36
2209
|
render(): JSX.Element;
|
|
37
2210
|
}
|
|
2211
|
+
|
|
2212
|
+
interface IPreviewAreaComponentProps {
|
|
38
2213
|
globalState: GlobalState;
|
|
39
2214
|
width: number;
|
|
40
2215
|
}
|
|
41
2216
|
export class PreviewAreaComponent extends React.Component<IPreviewAreaComponentProps, {
|
|
42
2217
|
isLoading: boolean;
|
|
43
2218
|
}> {
|
|
44
2219
|
private _onIsLoadingChangedObserver;
|
|
45
2220
|
private _onResetRequiredObserver;
|
|
46
2221
|
constructor(props: IPreviewAreaComponentProps);
|
|
47
2222
|
componentWillUnmount(): void;
|
|
48
2223
|
changeBackFaceCulling(value: boolean): void;
|
|
49
2224
|
changeDepthPrePass(value: boolean): void;
|
|
50
2225
|
changeParticleSystemBlendMode(newOne: number): void;
|
|
51
2226
|
render(): JSX.Element;
|
|
52
2227
|
}
|
|
2228
|
+
|
|
2229
|
+
export class PreviewManager {
|
|
53
2230
|
private _nodeMaterial;
|
|
54
2231
|
private _onBuildObserver;
|
|
55
2232
|
private _onPreviewCommandActivatedObserver;
|
|
56
2233
|
private _onAnimationCommandActivatedObserver;
|
|
57
2234
|
private _onUpdateRequiredObserver;
|
|
58
2235
|
private _onPreviewBackgroundChangedObserver;
|
|
59
2236
|
private _onBackFaceCullingChangedObserver;
|
|
60
2237
|
private _onDepthPrePassChangedObserver;
|
|
61
2238
|
private _onLightUpdatedObserver;
|
|
62
2239
|
private _engine;
|
|
63
2240
|
private _scene;
|
|
64
2241
|
private _meshes;
|
|
65
2242
|
private _camera;
|
|
66
2243
|
private _material;
|
|
67
2244
|
private _globalState;
|
|
68
2245
|
private _currentType;
|
|
69
2246
|
private _lightParent;
|
|
70
2247
|
private _postprocess;
|
|
71
2248
|
private _proceduralTexture;
|
|
72
2249
|
private _particleSystem;
|
|
73
2250
|
private _layer;
|
|
74
2251
|
constructor(targetCanvas: HTMLCanvasElement, globalState: GlobalState);
|
|
75
2252
|
private _handleAnimations;
|
|
76
2253
|
private _prepareLights;
|
|
77
2254
|
private _prepareScene;
|
|
78
2255
|
private _refreshPreviewMesh;
|
|
79
2256
|
private _loadParticleSystem;
|
|
80
2257
|
private _forceCompilationAsync;
|
|
81
2258
|
private _updatePreview;
|
|
82
2259
|
dispose(): void;
|
|
83
2260
|
}
|
|
2261
|
+
|
|
2262
|
+
interface IPreviewMeshControlComponent {
|
|
84
2263
|
globalState: GlobalState;
|
|
85
2264
|
togglePreviewAreaComponent: () => void;
|
|
86
2265
|
}
|
|
87
2266
|
export class PreviewMeshControlComponent extends React.Component<IPreviewMeshControlComponent> {
|
|
88
2267
|
private colorInputRef;
|
|
89
2268
|
private filePickerRef;
|
|
90
2269
|
private _onResetRequiredObserver;
|
|
91
2270
|
constructor(props: IPreviewMeshControlComponent);
|
|
92
2271
|
componentWillUnmount(): void;
|
|
93
2272
|
changeMeshType(newOne: PreviewType): void;
|
|
94
2273
|
useCustomMesh(evt: any): void;
|
|
95
2274
|
onPopUp(): void;
|
|
96
2275
|
changeAnimation(): void;
|
|
97
2276
|
changeBackground(value: string): void;
|
|
98
2277
|
changeBackgroundClick(): void;
|
|
99
2278
|
render(): JSX.Element;
|
|
100
2279
|
}
|
|
2280
|
+
|
|
2281
|
+
export enum PreviewType {
|
|
101
2282
|
Sphere = 0,
|
|
102
2283
|
Box = 1,
|
|
103
2284
|
Torus = 2,
|
|
104
2285
|
Cylinder = 3,
|
|
105
2286
|
Plane = 4,
|
|
106
2287
|
ShaderBall = 5,
|
|
107
2288
|
DefaultParticleSystem = 6,
|
|
108
2289
|
Bubbles = 7,
|
|
109
2290
|
Smoke = 8,
|
|
110
2291
|
Rain = 9,
|
|
111
2292
|
Explosion = 10,
|
|
112
2293
|
Fire = 11,
|
|
113
2294
|
Custom = 12
|
|
114
2295
|
}
|
|
2296
|
+
|
|
2297
|
+
interface IInputsPropertyTabComponentProps {
|
|
115
2298
|
globalState: GlobalState;
|
|
116
2299
|
inputs: BABYLON.InputBlock[];
|
|
117
2300
|
}
|
|
118
2301
|
export class InputsPropertyTabComponent extends React.Component<IInputsPropertyTabComponentProps> {
|
|
119
2302
|
constructor(props: IInputsPropertyTabComponentProps);
|
|
120
2303
|
processInputBlockUpdate(ib: BABYLON.InputBlock): void;
|
|
121
2304
|
renderInputBlock(block: BABYLON.InputBlock): JSX.Element | null;
|
|
122
2305
|
render(): JSX.Element;
|
|
123
2306
|
}
|
|
2307
|
+
|
|
2308
|
+
interface IColor3PropertyTabComponentProps {
|
|
124
2309
|
globalState: GlobalState;
|
|
125
2310
|
inputBlock: BABYLON.InputBlock;
|
|
126
2311
|
}
|
|
127
2312
|
export class Color3PropertyTabComponent extends React.Component<IColor3PropertyTabComponentProps> {
|
|
128
2313
|
render(): JSX.Element;
|
|
129
2314
|
}
|
|
2315
|
+
|
|
2316
|
+
interface IColor4PropertyTabComponentProps {
|
|
130
2317
|
globalState: GlobalState;
|
|
131
2318
|
inputBlock: BABYLON.InputBlock;
|
|
132
2319
|
}
|
|
133
2320
|
export class Color4PropertyTabComponent extends React.Component<IColor4PropertyTabComponentProps> {
|
|
134
2321
|
render(): JSX.Element;
|
|
135
2322
|
}
|
|
2323
|
+
|
|
2324
|
+
interface IFloatPropertyTabComponentProps {
|
|
136
2325
|
globalState: GlobalState;
|
|
137
2326
|
inputBlock: BABYLON.InputBlock;
|
|
138
2327
|
}
|
|
139
2328
|
export class FloatPropertyTabComponent extends React.Component<IFloatPropertyTabComponentProps> {
|
|
140
2329
|
render(): JSX.Element;
|
|
141
2330
|
}
|
|
2331
|
+
|
|
2332
|
+
interface IMatrixPropertyTabComponentProps {
|
|
142
2333
|
globalState: GlobalState;
|
|
143
2334
|
inputBlock: BABYLON.InputBlock;
|
|
144
2335
|
}
|
|
145
2336
|
export class MatrixPropertyTabComponent extends React.Component<IMatrixPropertyTabComponentProps> {
|
|
146
2337
|
render(): JSX.Element;
|
|
147
2338
|
}
|
|
2339
|
+
|
|
2340
|
+
interface IVector2PropertyTabComponentProps {
|
|
148
2341
|
globalState: GlobalState;
|
|
149
2342
|
inputBlock: BABYLON.InputBlock;
|
|
150
2343
|
}
|
|
151
2344
|
export class Vector2PropertyTabComponent extends React.Component<IVector2PropertyTabComponentProps> {
|
|
152
2345
|
render(): JSX.Element;
|
|
153
2346
|
}
|
|
2347
|
+
|
|
2348
|
+
interface IVector3PropertyTabComponentProps {
|
|
154
2349
|
globalState: GlobalState;
|
|
155
2350
|
inputBlock: BABYLON.InputBlock;
|
|
156
2351
|
}
|
|
157
2352
|
export class Vector3PropertyTabComponent extends React.Component<IVector3PropertyTabComponentProps> {
|
|
158
2353
|
render(): JSX.Element;
|
|
159
2354
|
}
|
|
2355
|
+
|
|
2356
|
+
interface IVector4PropertyTabComponentProps {
|
|
160
2357
|
globalState: GlobalState;
|
|
161
2358
|
inputBlock: BABYLON.InputBlock;
|
|
162
2359
|
}
|
|
163
2360
|
export class Vector4PropertyTabComponent extends React.Component<IVector4PropertyTabComponentProps> {
|
|
164
2361
|
render(): JSX.Element;
|
|
165
2362
|
}
|
|
2363
|
+
|
|
2364
|
+
interface IPropertyTabComponentProps {
|
|
166
2365
|
globalState: GlobalState;
|
|
167
2366
|
}
|
|
168
2367
|
interface IPropertyTabComponentState {
|
|
169
2368
|
currentNode: BABYLON.Nullable<GraphNode>;
|
|
170
2369
|
currentFrame: BABYLON.Nullable<GraphFrame>;
|
|
171
2370
|
currentFrameNodePort: BABYLON.Nullable<FrameNodePort>;
|
|
172
2371
|
currentNodePort: BABYLON.Nullable<NodePort>;
|
|
173
2372
|
uploadInProgress: boolean;
|
|
174
2373
|
}
|
|
175
2374
|
export class PropertyTabComponent extends React.Component<IPropertyTabComponentProps, IPropertyTabComponentState> {
|
|
176
2375
|
private _onBuiltObserver;
|
|
177
2376
|
private _modeSelect;
|
|
178
2377
|
constructor(props: IPropertyTabComponentProps);
|
|
179
2378
|
componentDidMount(): void;
|
|
180
2379
|
componentWillUnmount(): void;
|
|
181
2380
|
processInputBlockUpdate(ib: BABYLON.InputBlock): void;
|
|
182
2381
|
renderInputBlock(block: BABYLON.InputBlock): JSX.Element | null;
|
|
183
2382
|
load(file: File): void;
|
|
184
2383
|
loadFrame(file: File): void;
|
|
185
2384
|
save(): void;
|
|
186
2385
|
customSave(): void;
|
|
187
2386
|
saveToSnippetServer(): void;
|
|
188
2387
|
loadFromSnippet(): void;
|
|
189
2388
|
changeMode(value: any, force?: boolean, loadDefault?: boolean): boolean;
|
|
190
2389
|
render(): JSX.Element;
|
|
191
2390
|
}
|
|
2391
|
+
|
|
2392
|
+
export class ClampDisplayManager implements IDisplayManager {
|
|
192
2393
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
193
2394
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
194
2395
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
195
2396
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
196
2397
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
197
2398
|
}
|
|
2399
|
+
|
|
2400
|
+
export class ConditionalDisplayManager implements IDisplayManager {
|
|
198
2401
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
199
2402
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
200
2403
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
201
2404
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
202
2405
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
203
2406
|
}
|
|
2407
|
+
|
|
2408
|
+
export class DiscardDisplayManager implements IDisplayManager {
|
|
204
2409
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
205
2410
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
206
2411
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
207
2412
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
208
2413
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
209
2414
|
}
|
|
2415
|
+
|
|
2416
|
+
export interface IDisplayManager {
|
|
210
2417
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
211
2418
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
212
2419
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
213
2420
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
214
2421
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
215
2422
|
}
|
|
2423
|
+
|
|
2424
|
+
export class ElbowDisplayManager implements IDisplayManager {
|
|
216
2425
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
217
2426
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
218
2427
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
219
2428
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
220
2429
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
221
2430
|
}
|
|
2431
|
+
|
|
2432
|
+
export class GradientDisplayManager implements IDisplayManager {
|
|
222
2433
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
223
2434
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
224
2435
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
225
2436
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
226
2437
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
227
2438
|
}
|
|
2439
|
+
|
|
2440
|
+
export class imageSourceDisplayManager implements IDisplayManager {
|
|
228
2441
|
private _previewCanvas;
|
|
229
2442
|
private _previewImage;
|
|
230
2443
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
231
2444
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
232
2445
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
233
2446
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
234
2447
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
235
2448
|
}
|
|
2449
|
+
|
|
2450
|
+
export class InputDisplayManager implements IDisplayManager {
|
|
236
2451
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): "" | "constant" | "inspector";
|
|
237
2452
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
238
2453
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
239
2454
|
static GetBaseType(type: BABYLON.NodeMaterialBlockConnectionPointTypes): string;
|
|
240
2455
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
241
2456
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
242
2457
|
}
|
|
2458
|
+
|
|
2459
|
+
export class OutputDisplayManager implements IDisplayManager {
|
|
243
2460
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
244
2461
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
245
2462
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
246
2463
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
247
2464
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
248
2465
|
}
|
|
2466
|
+
|
|
2467
|
+
export class PBRDisplayManager implements IDisplayManager {
|
|
249
2468
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
250
2469
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
251
2470
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
252
2471
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
253
2472
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
254
2473
|
}
|
|
2474
|
+
|
|
2475
|
+
export class RemapDisplayManager implements IDisplayManager {
|
|
255
2476
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
256
2477
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
257
2478
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
258
2479
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
259
2480
|
private _extractInputValue;
|
|
260
2481
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
261
2482
|
}
|
|
2483
|
+
|
|
2484
|
+
export class TextureDisplayManager implements IDisplayManager {
|
|
262
2485
|
private _previewCanvas;
|
|
263
2486
|
private _previewImage;
|
|
264
2487
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
265
2488
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
266
2489
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
267
2490
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
268
2491
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
269
2492
|
}
|
|
2493
|
+
|
|
2494
|
+
export class TrigonometryDisplayManager implements IDisplayManager {
|
|
270
2495
|
getHeaderClass(block: BABYLON.NodeMaterialBlock): string;
|
|
271
2496
|
shouldDisplayPortLabels(block: BABYLON.NodeMaterialBlock): boolean;
|
|
272
2497
|
getHeaderText(block: BABYLON.NodeMaterialBlock): string;
|
|
273
2498
|
getBackgroundColor(block: BABYLON.NodeMaterialBlock): string;
|
|
274
2499
|
updatePreviewContent(block: BABYLON.NodeMaterialBlock, contentArea: HTMLDivElement): void;
|
|
275
2500
|
}
|
|
2501
|
+
|
|
2502
|
+
export class DisplayLedger {
|
|
276
2503
|
static RegisteredControls: {
|
|
277
2504
|
[key: string]: any;
|
|
278
2505
|
};
|
|
279
2506
|
}
|
|
2507
|
+
|
|
2508
|
+
export class FrameNodePort extends NodePort {
|
|
280
2509
|
connectionPoint: BABYLON.NodeMaterialConnectionPoint;
|
|
281
2510
|
node: GraphNode;
|
|
282
2511
|
private _parentFrameId;
|
|
283
2512
|
private _isInput;
|
|
284
2513
|
private _framePortPosition;
|
|
285
2514
|
private _framePortId;
|
|
286
2515
|
private _onFramePortPositionChangedObservable;
|
|
287
2516
|
get parentFrameId(): number;
|
|
288
2517
|
get onFramePortPositionChangedObservable(): BABYLON.Observable<FrameNodePort>;
|
|
289
2518
|
get isInput(): boolean;
|
|
290
2519
|
get framePortId(): number;
|
|
291
2520
|
get framePortPosition(): FramePortPosition;
|
|
292
2521
|
set framePortPosition(position: FramePortPosition);
|
|
293
2522
|
constructor(portContainer: HTMLElement, connectionPoint: BABYLON.NodeMaterialConnectionPoint, node: GraphNode, globalState: GlobalState, isInput: boolean, framePortId: number, parentFrameId: number);
|
|
294
2523
|
static CreateFrameNodePortElement(connectionPoint: BABYLON.NodeMaterialConnectionPoint, node: GraphNode, root: HTMLElement, displayManager: BABYLON.Nullable<IDisplayManager>, globalState: GlobalState, isInput: boolean, framePortId: number, parentFrameId: number): FrameNodePort;
|
|
295
2524
|
}
|
|
2525
|
+
|
|
2526
|
+
export interface IGraphCanvasComponentProps {
|
|
296
2527
|
globalState: GlobalState;
|
|
297
2528
|
onEmitNewBlock: (block: BABYLON.NodeMaterialBlock) => GraphNode;
|
|
298
2529
|
}
|
|
299
2530
|
export type FramePortData = {
|
|
300
2531
|
frame: GraphFrame;
|
|
301
2532
|
port: FrameNodePort;
|
|
302
2533
|
};
|
|
303
2534
|
export const isFramePortData: (variableToCheck: any) => variableToCheck is FramePortData;
|
|
304
2535
|
export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentProps> {
|
|
305
2536
|
private readonly MinZoom;
|
|
306
2537
|
private readonly MaxZoom;
|
|
307
2538
|
private _hostCanvas;
|
|
308
2539
|
private _graphCanvas;
|
|
309
2540
|
private _selectionContainer;
|
|
310
2541
|
private _frameContainer;
|
|
311
2542
|
private _svgCanvas;
|
|
312
2543
|
private _rootContainer;
|
|
313
2544
|
private _nodes;
|
|
314
2545
|
private _links;
|
|
315
2546
|
private _mouseStartPointX;
|
|
316
2547
|
private _mouseStartPointY;
|
|
317
2548
|
private _dropPointX;
|
|
318
2549
|
private _dropPointY;
|
|
319
2550
|
private _selectionStartX;
|
|
320
2551
|
private _selectionStartY;
|
|
321
2552
|
private _candidateLinkedHasMoved;
|
|
322
2553
|
private _x;
|
|
323
2554
|
private _y;
|
|
324
2555
|
private _zoom;
|
|
325
2556
|
private _selectedNodes;
|
|
326
2557
|
private _selectedLink;
|
|
327
2558
|
private _selectedPort;
|
|
328
2559
|
private _candidateLink;
|
|
329
2560
|
private _candidatePort;
|
|
330
2561
|
private _gridSize;
|
|
331
2562
|
private _selectionBox;
|
|
332
2563
|
private _selectedFrame;
|
|
333
2564
|
private _frameCandidate;
|
|
334
2565
|
private _frames;
|
|
335
2566
|
private _altKeyIsPressed;
|
|
336
2567
|
private _ctrlKeyIsPressed;
|
|
337
2568
|
private _oldY;
|
|
338
2569
|
_frameIsMoving: boolean;
|
|
339
2570
|
_isLoading: boolean;
|
|
340
2571
|
get gridSize(): number;
|
|
341
2572
|
set gridSize(value: number);
|
|
342
2573
|
get globalState(): GlobalState;
|
|
343
2574
|
get nodes(): GraphNode[];
|
|
344
2575
|
get links(): NodeLink[];
|
|
345
2576
|
get frames(): GraphFrame[];
|
|
346
2577
|
get zoom(): number;
|
|
347
2578
|
set zoom(value: number);
|
|
348
2579
|
get x(): number;
|
|
349
2580
|
set x(value: number);
|
|
350
2581
|
get y(): number;
|
|
351
2582
|
set y(value: number);
|
|
352
2583
|
get selectedNodes(): GraphNode[];
|
|
353
2584
|
get selectedLink(): BABYLON.Nullable<NodeLink>;
|
|
354
2585
|
get selectedFrame(): BABYLON.Nullable<GraphFrame>;
|
|
355
2586
|
get selectedPort(): BABYLON.Nullable<NodePort>;
|
|
356
2587
|
get canvasContainer(): HTMLDivElement;
|
|
357
2588
|
get hostCanvas(): HTMLDivElement;
|
|
358
2589
|
get svgCanvas(): HTMLElement;
|
|
359
2590
|
get selectionContainer(): HTMLDivElement;
|
|
360
2591
|
get frameContainer(): HTMLDivElement;
|
|
361
2592
|
constructor(props: IGraphCanvasComponentProps);
|
|
362
2593
|
static _RefreshNode: (node: GraphNode, visitedNodes?: Set<GraphNode> | undefined, visitedLinks?: Set<NodeLink> | undefined) => void;
|
|
363
2594
|
getGridPosition(position: number, useCeil?: boolean): number;
|
|
364
2595
|
getGridPositionCeil(position: number): number;
|
|
365
2596
|
updateTransform(): void;
|
|
366
2597
|
onKeyUp(): void;
|
|
367
2598
|
findNodeFromBlock(block: BABYLON.NodeMaterialBlock): GraphNode;
|
|
368
2599
|
reset(): void;
|
|
369
2600
|
connectPorts(pointA: BABYLON.NodeMaterialConnectionPoint, pointB: BABYLON.NodeMaterialConnectionPoint): void;
|
|
370
2601
|
removeLink(link: NodeLink): void;
|
|
371
2602
|
appendBlock(block: BABYLON.NodeMaterialBlock): GraphNode;
|
|
372
2603
|
distributeGraph(): void;
|
|
373
2604
|
componentDidMount(): void;
|
|
374
2605
|
onMove(evt: React.PointerEvent): void;
|
|
375
2606
|
onDown(evt: React.PointerEvent<HTMLElement>): void;
|
|
376
2607
|
onUp(evt: React.PointerEvent): void;
|
|
377
2608
|
onWheel(evt: React.WheelEvent): void;
|
|
378
2609
|
zoomToFit(): void;
|
|
379
2610
|
processCandidatePort(): void;
|
|
380
2611
|
processEditorData(editorData: IEditorData): void;
|
|
381
2612
|
addFrame(frameData: IFrameData): void;
|
|
382
2613
|
render(): JSX.Element;
|
|
383
2614
|
}
|
|
2615
|
+
|
|
2616
|
+
export enum FramePortPosition {
|
|
384
2617
|
Top = 0,
|
|
385
2618
|
Middle = 1,
|
|
386
2619
|
Bottom = 2
|
|
387
2620
|
}
|
|
388
2621
|
export class GraphFrame {
|
|
389
2622
|
private readonly CollapsedWidth;
|
|
390
2623
|
private static _FrameCounter;
|
|
391
2624
|
private static _FramePortCounter;
|
|
392
2625
|
private _name;
|
|
393
2626
|
private _color;
|
|
394
2627
|
private _x;
|
|
395
2628
|
private _y;
|
|
396
2629
|
private _gridAlignedX;
|
|
397
2630
|
private _gridAlignedY;
|
|
398
2631
|
private _width;
|
|
399
2632
|
private _height;
|
|
400
2633
|
element: HTMLDivElement;
|
|
401
2634
|
private _borderElement;
|
|
402
2635
|
private _headerElement;
|
|
403
2636
|
private _headerTextElement;
|
|
404
2637
|
private _headerCollapseElement;
|
|
405
2638
|
private _headerCloseElement;
|
|
406
2639
|
private _commentsElement;
|
|
407
2640
|
private _portContainer;
|
|
408
2641
|
private _outputPortContainer;
|
|
409
2642
|
private _inputPortContainer;
|
|
410
2643
|
private _nodes;
|
|
411
2644
|
private _ownerCanvas;
|
|
412
2645
|
private _mouseStartPointX;
|
|
413
2646
|
private _mouseStartPointY;
|
|
414
2647
|
private _onSelectionChangedObserver;
|
|
415
2648
|
private _onGraphNodeRemovalObserver;
|
|
416
2649
|
private _onExposePortOnFrameObserver;
|
|
417
2650
|
private _onNodeLinkDisposedObservers;
|
|
418
2651
|
private _isCollapsed;
|
|
419
2652
|
private _frameInPorts;
|
|
420
2653
|
private _frameOutPorts;
|
|
421
2654
|
private _controlledPorts;
|
|
422
2655
|
private _exposedInPorts;
|
|
423
2656
|
private _exposedOutPorts;
|
|
424
2657
|
private _id;
|
|
425
2658
|
private _comments;
|
|
426
2659
|
private _frameIsResizing;
|
|
427
2660
|
private _resizingDirection;
|
|
428
2661
|
private _minFrameHeight;
|
|
429
2662
|
private _minFrameWidth;
|
|
430
2663
|
private mouseXLimit;
|
|
431
2664
|
onExpandStateChanged: BABYLON.Observable<GraphFrame>;
|
|
432
2665
|
private readonly CloseSVG;
|
|
433
2666
|
private readonly ExpandSVG;
|
|
434
2667
|
private readonly CollapseSVG;
|
|
435
2668
|
get id(): number;
|
|
436
2669
|
get isCollapsed(): boolean;
|
|
437
2670
|
private _createInputPort;
|
|
438
2671
|
private _markFramePortPositions;
|
|
439
2672
|
private _createFramePorts;
|
|
440
2673
|
private removePortFromExposedWithNode;
|
|
441
2674
|
private removePortFromExposedWithLink;
|
|
442
2675
|
private createInputPorts;
|
|
443
2676
|
private createOutputPorts;
|
|
444
2677
|
redrawFramePorts(): void;
|
|
445
2678
|
set isCollapsed(value: boolean);
|
|
446
2679
|
get nodes(): GraphNode[];
|
|
447
2680
|
get ports(): FrameNodePort[];
|
|
448
2681
|
get name(): string;
|
|
449
2682
|
set name(value: string);
|
|
450
2683
|
get color(): BABYLON.Color3;
|
|
451
2684
|
set color(value: BABYLON.Color3);
|
|
452
2685
|
get x(): number;
|
|
453
2686
|
set x(value: number);
|
|
454
2687
|
get y(): number;
|
|
455
2688
|
set y(value: number);
|
|
456
2689
|
get width(): number;
|
|
457
2690
|
set width(value: number);
|
|
458
2691
|
get height(): number;
|
|
459
2692
|
set height(value: number);
|
|
460
2693
|
get comments(): string;
|
|
461
2694
|
set comments(comments: string);
|
|
462
2695
|
constructor(candidate: BABYLON.Nullable<HTMLDivElement>, canvas: GraphCanvasComponent, doNotCaptureNodes?: boolean);
|
|
463
2696
|
refresh(): void;
|
|
464
2697
|
addNode(node: GraphNode): void;
|
|
465
2698
|
removeNode(node: GraphNode): void;
|
|
466
2699
|
syncNode(node: GraphNode): void;
|
|
467
2700
|
cleanAccumulation(): void;
|
|
468
2701
|
private _onDown;
|
|
469
2702
|
move(newX: number, newY: number, align?: boolean): void;
|
|
470
2703
|
private _onUp;
|
|
471
2704
|
private _moveFrame;
|
|
472
2705
|
private _onMove;
|
|
473
2706
|
moveFramePortUp(nodePort: FrameNodePort): void;
|
|
474
2707
|
private _movePortUp;
|
|
475
2708
|
moveFramePortDown(nodePort: FrameNodePort): void;
|
|
476
2709
|
private _movePortDown;
|
|
477
2710
|
private initResizing;
|
|
478
2711
|
private cleanUpResizing;
|
|
479
2712
|
private updateMinHeightWithComments;
|
|
480
2713
|
private _isResizingTop;
|
|
481
2714
|
private _isResizingRight;
|
|
482
2715
|
private _isResizingBottom;
|
|
483
2716
|
private _isResizingLeft;
|
|
484
2717
|
private _onRightHandlePointerDown;
|
|
485
2718
|
private _onRightHandlePointerMove;
|
|
486
2719
|
private _moveRightHandle;
|
|
487
2720
|
private _onRightHandlePointerUp;
|
|
488
2721
|
private _onBottomHandlePointerDown;
|
|
489
2722
|
private _onBottomHandlePointerMove;
|
|
490
2723
|
private _moveBottomHandle;
|
|
491
2724
|
private _onBottomHandlePointerUp;
|
|
492
2725
|
private _onLeftHandlePointerDown;
|
|
493
2726
|
private _onLeftHandlePointerMove;
|
|
494
2727
|
private _moveLeftHandle;
|
|
495
2728
|
private _onLeftHandlePointerUp;
|
|
496
2729
|
private _onTopHandlePointerDown;
|
|
497
2730
|
private _onTopHandlePointerMove;
|
|
498
2731
|
private _moveTopHandle;
|
|
499
2732
|
private _onTopHandlePointerUp;
|
|
500
2733
|
private _onTopRightHandlePointerDown;
|
|
501
2734
|
private _onTopRightHandlePointerMove;
|
|
502
2735
|
private _moveTopRightHandle;
|
|
503
2736
|
private _onTopRightHandlePointerUp;
|
|
504
2737
|
private _onBottomRightHandlePointerDown;
|
|
505
2738
|
private _onBottomRightHandlePointerMove;
|
|
506
2739
|
private _moveBottomRightHandle;
|
|
507
2740
|
private _onBottomRightHandlePointerUp;
|
|
508
2741
|
private _onBottomLeftHandlePointerDown;
|
|
509
2742
|
private _onBottomLeftHandlePointerMove;
|
|
510
2743
|
private _moveBottomLeftHandle;
|
|
511
2744
|
private _onBottomLeftHandlePointerUp;
|
|
512
2745
|
private _onTopLeftHandlePointerDown;
|
|
513
2746
|
private _onTopLeftHandlePointerMove;
|
|
514
2747
|
private _moveTopLeftHandle;
|
|
515
2748
|
private _onTopLeftHandlePointerUp;
|
|
516
2749
|
private _expandLeft;
|
|
517
2750
|
private _expandTop;
|
|
518
2751
|
private _expandRight;
|
|
519
2752
|
private _expandBottom;
|
|
520
2753
|
dispose(): void;
|
|
521
2754
|
private serializePortData;
|
|
522
2755
|
serialize(saveCollapsedState: boolean): IFrameData;
|
|
523
2756
|
export(): void;
|
|
524
2757
|
adjustPorts(): void;
|
|
525
2758
|
static Parse(serializationData: IFrameData, canvas: GraphCanvasComponent, map?: {
|
|
526
2759
|
[key: number]: number;
|
|
527
2760
|
}): GraphFrame;
|
|
528
2761
|
}
|
|
2762
|
+
|
|
2763
|
+
/// <reference types="react" />
|
|
529
2764
|
export class GraphNode {
|
|
530
2765
|
block: BABYLON.NodeMaterialBlock;
|
|
531
2766
|
private _visual;
|
|
532
2767
|
private _headerContainer;
|
|
533
2768
|
private _promotionWarning;
|
|
534
2769
|
private _header;
|
|
535
2770
|
private _connections;
|
|
536
2771
|
private _inputsContainer;
|
|
537
2772
|
private _outputsContainer;
|
|
538
2773
|
private _content;
|
|
539
2774
|
private _comments;
|
|
540
2775
|
private _inputPorts;
|
|
541
2776
|
private _outputPorts;
|
|
542
2777
|
private _links;
|
|
543
2778
|
private _x;
|
|
544
2779
|
private _y;
|
|
545
2780
|
private _gridAlignedX;
|
|
546
2781
|
private _gridAlignedY;
|
|
547
2782
|
private _mouseStartPointX;
|
|
548
2783
|
private _mouseStartPointY;
|
|
549
2784
|
private _globalState;
|
|
550
2785
|
private _onSelectionChangedObserver;
|
|
551
2786
|
private _onSelectionBoxMovedObserver;
|
|
552
2787
|
private _onFrameCreatedObserver;
|
|
553
2788
|
private _onUpdateRequiredObserver;
|
|
554
2789
|
private _ownerCanvas;
|
|
555
2790
|
private _isSelected;
|
|
556
2791
|
private _displayManager;
|
|
557
2792
|
private _isVisible;
|
|
558
2793
|
private _enclosingFrameId;
|
|
559
2794
|
get isVisible(): boolean;
|
|
560
2795
|
set isVisible(value: boolean);
|
|
561
2796
|
private _upateNodePortNames;
|
|
562
2797
|
get outputPorts(): NodePort[];
|
|
563
2798
|
get inputPorts(): NodePort[];
|
|
564
2799
|
get links(): NodeLink[];
|
|
565
2800
|
get gridAlignedX(): number;
|
|
566
2801
|
get gridAlignedY(): number;
|
|
567
2802
|
get x(): number;
|
|
568
2803
|
set x(value: number);
|
|
569
2804
|
get y(): number;
|
|
570
2805
|
set y(value: number);
|
|
571
2806
|
get width(): number;
|
|
572
2807
|
get height(): number;
|
|
573
2808
|
get id(): number;
|
|
574
2809
|
get name(): string;
|
|
575
2810
|
get isSelected(): boolean;
|
|
576
2811
|
get enclosingFrameId(): number;
|
|
577
2812
|
set enclosingFrameId(value: number);
|
|
578
2813
|
set isSelected(value: boolean);
|
|
579
2814
|
constructor(block: BABYLON.NodeMaterialBlock, globalState: GlobalState);
|
|
580
2815
|
isOverlappingFrame(frame: GraphFrame): boolean;
|
|
581
2816
|
getPortForConnectionPoint(point: BABYLON.NodeMaterialConnectionPoint): NodePort | null;
|
|
582
2817
|
getLinksForConnectionPoint(point: BABYLON.NodeMaterialConnectionPoint): NodeLink[];
|
|
583
2818
|
private _refreshFrames;
|
|
584
2819
|
_refreshLinks(): void;
|
|
585
2820
|
refresh(): void;
|
|
586
2821
|
private _onDown;
|
|
587
2822
|
cleanAccumulation(useCeil?: boolean): void;
|
|
588
2823
|
private _onUp;
|
|
589
2824
|
private _onMove;
|
|
590
2825
|
renderProperties(): BABYLON.Nullable<JSX.Element>;
|
|
591
2826
|
appendVisual(root: HTMLDivElement, owner: GraphCanvasComponent): void;
|
|
592
2827
|
dispose(): void;
|
|
593
2828
|
}
|
|
2829
|
+
|
|
2830
|
+
export class NodeLink {
|
|
594
2831
|
private _graphCanvas;
|
|
595
2832
|
private _portA;
|
|
596
2833
|
private _portB?;
|
|
597
2834
|
private _nodeA;
|
|
598
2835
|
private _nodeB?;
|
|
599
2836
|
private _path;
|
|
600
2837
|
private _selectionPath;
|
|
601
2838
|
private _onSelectionChangedObserver;
|
|
602
2839
|
private _isVisible;
|
|
603
2840
|
onDisposedObservable: BABYLON.Observable<NodeLink>;
|
|
604
2841
|
get isVisible(): boolean;
|
|
605
2842
|
set isVisible(value: boolean);
|
|
606
2843
|
get portA(): NodePort | FrameNodePort;
|
|
607
2844
|
get portB(): NodePort | FrameNodePort | undefined;
|
|
608
2845
|
get nodeA(): GraphNode;
|
|
609
2846
|
get nodeB(): GraphNode | undefined;
|
|
610
2847
|
update(endX?: number, endY?: number, straight?: boolean): void;
|
|
611
2848
|
constructor(graphCanvas: GraphCanvasComponent, portA: NodePort, nodeA: GraphNode, portB?: NodePort, nodeB?: GraphNode);
|
|
612
2849
|
onClick(): void;
|
|
613
2850
|
dispose(notify?: boolean): void;
|
|
614
2851
|
}
|
|
2852
|
+
|
|
2853
|
+
export class NodePort {
|
|
615
2854
|
connectionPoint: BABYLON.NodeMaterialConnectionPoint;
|
|
616
2855
|
node: GraphNode;
|
|
617
2856
|
protected _element: HTMLDivElement;
|
|
618
2857
|
protected _img: HTMLImageElement;
|
|
619
2858
|
protected _globalState: GlobalState;
|
|
620
2859
|
protected _portLabelElement: Element;
|
|
621
2860
|
protected _onCandidateLinkMovedObserver: BABYLON.Nullable<BABYLON.Observer<BABYLON.Nullable<BABYLON.Vector2>>>;
|
|
622
2861
|
protected _onSelectionChangedObserver: BABYLON.Nullable<BABYLON.Observer<BABYLON.Nullable<GraphFrame | GraphNode | NodeLink | NodePort | FramePortData>>>;
|
|
623
2862
|
protected _exposedOnFrame: boolean;
|
|
624
2863
|
delegatedPort: BABYLON.Nullable<FrameNodePort>;
|
|
625
2864
|
get element(): HTMLDivElement;
|
|
626
2865
|
get portName(): string;
|
|
627
2866
|
set portName(newName: string);
|
|
628
2867
|
get disabled(): boolean;
|
|
629
2868
|
hasLabel(): boolean;
|
|
630
2869
|
get exposedOnFrame(): boolean;
|
|
631
2870
|
set exposedOnFrame(value: boolean);
|
|
632
2871
|
get exposedPortPosition(): number;
|
|
633
2872
|
set exposedPortPosition(value: number);
|
|
634
2873
|
private _isConnectedToNodeOutsideOfFrame;
|
|
635
2874
|
refresh(): void;
|
|
636
2875
|
constructor(portContainer: HTMLElement, connectionPoint: BABYLON.NodeMaterialConnectionPoint, node: GraphNode, globalState: GlobalState);
|
|
637
2876
|
dispose(): void;
|
|
638
2877
|
static CreatePortElement(connectionPoint: BABYLON.NodeMaterialConnectionPoint, node: GraphNode, root: HTMLElement, displayManager: BABYLON.Nullable<IDisplayManager>, globalState: GlobalState): NodePort;
|
|
639
2878
|
}
|
|
2879
|
+
|
|
2880
|
+
export class ColorMergerPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
640
2881
|
constructor(props: IPropertyComponentProps);
|
|
641
2882
|
render(): JSX.Element;
|
|
642
2883
|
}
|
|
2884
|
+
|
|
2885
|
+
export class ConditionalPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
643
2886
|
constructor(props: IPropertyComponentProps);
|
|
644
2887
|
render(): JSX.Element;
|
|
645
2888
|
}
|
|
2889
|
+
|
|
2890
|
+
export interface IFrameNodePortPropertyTabComponentProps {
|
|
646
2891
|
globalState: GlobalState;
|
|
647
2892
|
frameNodePort: FrameNodePort;
|
|
648
2893
|
frame: GraphFrame;
|
|
649
2894
|
}
|
|
650
2895
|
export class FrameNodePortPropertyTabComponent extends React.Component<IFrameNodePortPropertyTabComponentProps, {
|
|
651
2896
|
port: FrameNodePort;
|
|
652
2897
|
}> {
|
|
653
2898
|
private _onFramePortPositionChangedObserver;
|
|
654
2899
|
private _onSelectionChangedObserver;
|
|
655
2900
|
constructor(props: IFrameNodePortPropertyTabComponentProps);
|
|
656
2901
|
componentWillUnmount(): void;
|
|
657
2902
|
render(): JSX.Element;
|
|
658
2903
|
}
|
|
2904
|
+
|
|
2905
|
+
export interface IFramePropertyTabComponentProps {
|
|
659
2906
|
globalState: GlobalState;
|
|
660
2907
|
frame: GraphFrame;
|
|
661
2908
|
}
|
|
662
2909
|
export class FramePropertyTabComponent extends React.Component<IFramePropertyTabComponentProps> {
|
|
663
2910
|
private onFrameExpandStateChangedObserver;
|
|
664
2911
|
constructor(props: IFramePropertyTabComponentProps);
|
|
665
2912
|
componentDidMount(): void;
|
|
666
2913
|
componentWillUnmount(): void;
|
|
667
2914
|
render(): JSX.Element;
|
|
668
2915
|
}
|
|
2916
|
+
|
|
2917
|
+
export class GenericPropertyComponent extends React.Component<IPropertyComponentProps> {
|
|
669
2918
|
constructor(props: IPropertyComponentProps);
|
|
670
2919
|
render(): JSX.Element;
|
|
671
2920
|
}
|
|
672
2921
|
export class GeneralPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
673
2922
|
constructor(props: IPropertyComponentProps);
|
|
674
2923
|
render(): JSX.Element;
|
|
675
2924
|
}
|
|
676
2925
|
export class GenericPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
677
2926
|
constructor(props: IPropertyComponentProps);
|
|
678
2927
|
forceRebuild(notifiers?: {
|
|
679
2928
|
rebuild?: boolean;
|
|
680
2929
|
update?: boolean;
|
|
681
2930
|
activatePreviewCommand?: boolean;
|
|
682
2931
|
callback?: (scene: BABYLON.Scene) => void;
|
|
683
2932
|
}): void;
|
|
684
2933
|
render(): JSX.Element;
|
|
685
2934
|
}
|
|
2935
|
+
|
|
2936
|
+
export class GradientPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
686
2937
|
private onValueChangedObserver;
|
|
687
2938
|
constructor(props: IPropertyComponentProps);
|
|
688
2939
|
componentDidMount(): void;
|
|
689
2940
|
componentWillUnmount(): void;
|
|
690
2941
|
forceRebuild(): void;
|
|
691
2942
|
deleteStep(step: BABYLON.GradientBlockColorStep): void;
|
|
692
2943
|
copyStep(step: BABYLON.GradientBlockColorStep): void;
|
|
693
2944
|
addNewStep(): void;
|
|
694
2945
|
checkForReOrder(): void;
|
|
695
2946
|
render(): JSX.Element;
|
|
696
2947
|
}
|
|
2948
|
+
|
|
2949
|
+
interface IGradientStepComponentProps {
|
|
697
2950
|
globalState: GlobalState;
|
|
698
2951
|
step: BABYLON.GradientBlockColorStep;
|
|
699
2952
|
lineIndex: number;
|
|
700
2953
|
onDelete: () => void;
|
|
701
2954
|
onUpdateStep: () => void;
|
|
702
2955
|
onCheckForReOrder: () => void;
|
|
703
2956
|
onCopy?: () => void;
|
|
704
2957
|
}
|
|
705
2958
|
export class GradientStepComponent extends React.Component<IGradientStepComponentProps, {
|
|
706
2959
|
gradient: number;
|
|
707
2960
|
}> {
|
|
708
2961
|
constructor(props: IGradientStepComponentProps);
|
|
709
2962
|
updateColor(color: string): void;
|
|
710
2963
|
updateStep(gradient: number): void;
|
|
711
2964
|
onPointerUp(): void;
|
|
712
2965
|
render(): JSX.Element;
|
|
713
2966
|
}
|
|
2967
|
+
|
|
2968
|
+
export class ImageSourcePropertyTabComponent extends React.Component<IPropertyComponentProps, {
|
|
714
2969
|
isEmbedded: boolean;
|
|
715
2970
|
}> {
|
|
716
2971
|
get imageSourceBlock(): BABYLON.ImageSourceBlock;
|
|
717
2972
|
constructor(props: IPropertyComponentProps);
|
|
718
2973
|
UNSAFE_componentWillUpdate(nextProps: IPropertyComponentProps, nextState: {
|
|
719
2974
|
isEmbedded: boolean;
|
|
720
2975
|
loadAsCubeTexture: boolean;
|
|
721
2976
|
}): void;
|
|
722
2977
|
private _generateRandomForCache;
|
|
723
2978
|
updateAfterTextureLoad(): void;
|
|
724
2979
|
removeTexture(): void;
|
|
725
2980
|
_prepareTexture(): void;
|
|
726
2981
|
/**
|
|
727
2982
|
* Replaces the texture of the node
|
|
728
2983
|
* @param file the file of the texture to use
|
|
729
2984
|
*/
|
|
730
2985
|
replaceTexture(file: File): void;
|
|
731
2986
|
replaceTextureWithUrl(url: string): void;
|
|
732
2987
|
render(): JSX.Element;
|
|
733
2988
|
}
|
|
2989
|
+
|
|
2990
|
+
export class InputPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
734
2991
|
private onValueChangedObserver;
|
|
735
2992
|
constructor(props: IPropertyComponentProps);
|
|
736
2993
|
componentDidMount(): void;
|
|
737
2994
|
componentWillUnmount(): void;
|
|
738
2995
|
renderValue(globalState: GlobalState): JSX.Element | null;
|
|
739
2996
|
setDefaultValue(): void;
|
|
740
2997
|
render(): JSX.Element;
|
|
741
2998
|
}
|
|
2999
|
+
|
|
3000
|
+
export class LightInformationPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
742
3001
|
render(): JSX.Element;
|
|
743
3002
|
}
|
|
3003
|
+
|
|
3004
|
+
export class LightPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
744
3005
|
render(): JSX.Element;
|
|
745
3006
|
}
|
|
3007
|
+
|
|
3008
|
+
export interface IFrameNodePortPropertyTabComponentProps {
|
|
746
3009
|
globalState: GlobalState;
|
|
747
3010
|
nodePort: NodePort;
|
|
748
3011
|
}
|
|
749
3012
|
export class NodePortPropertyTabComponent extends React.Component<IFrameNodePortPropertyTabComponentProps> {
|
|
750
3013
|
private _onSelectionChangedObserver;
|
|
751
3014
|
constructor(props: IFrameNodePortPropertyTabComponentProps);
|
|
752
3015
|
componentWillUnmount(): void;
|
|
753
3016
|
toggleExposeOnFrame(value: boolean): void;
|
|
754
3017
|
render(): JSX.Element;
|
|
755
3018
|
}
|
|
3019
|
+
|
|
3020
|
+
export interface IPropertyComponentProps {
|
|
756
3021
|
globalState: GlobalState;
|
|
757
3022
|
block: BABYLON.NodeMaterialBlock;
|
|
758
3023
|
}
|
|
3024
|
+
|
|
3025
|
+
type ReflectionTexture = BABYLON.ReflectionTextureBlock | BABYLON.ReflectionBlock | BABYLON.RefractionBlock;
|
|
759
3026
|
type AnyTexture = BABYLON.TextureBlock | ReflectionTexture | BABYLON.CurrentScreenBlock | BABYLON.ParticleTextureBlock;
|
|
760
3027
|
export class TexturePropertyTabComponent extends React.Component<IPropertyComponentProps, {
|
|
761
3028
|
isEmbedded: boolean;
|
|
762
3029
|
loadAsCubeTexture: boolean;
|
|
763
3030
|
textureIsPrefiltered: boolean;
|
|
764
3031
|
}> {
|
|
765
3032
|
get textureBlock(): AnyTexture;
|
|
766
3033
|
constructor(props: IPropertyComponentProps);
|
|
767
3034
|
UNSAFE_componentWillUpdate(nextProps: IPropertyComponentProps, nextState: {
|
|
768
3035
|
isEmbedded: boolean;
|
|
769
3036
|
loadAsCubeTexture: boolean;
|
|
770
3037
|
}): void;
|
|
771
3038
|
private _generateRandomForCache;
|
|
772
3039
|
updateAfterTextureLoad(): void;
|
|
773
3040
|
removeTexture(): void;
|
|
774
3041
|
_prepareTexture(): void;
|
|
775
3042
|
/**
|
|
776
3043
|
* Replaces the texture of the node
|
|
777
3044
|
* @param file the file of the texture to use
|
|
778
3045
|
*/
|
|
779
3046
|
replaceTexture(file: File): void;
|
|
780
3047
|
replaceTextureWithUrl(url: string): void;
|
|
781
3048
|
render(): JSX.Element;
|
|
782
3049
|
}
|
|
3050
|
+
|
|
3051
|
+
export class TransformPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
783
3052
|
constructor(props: IPropertyComponentProps);
|
|
784
3053
|
render(): JSX.Element;
|
|
785
3054
|
}
|
|
3055
|
+
|
|
3056
|
+
export class TrigonometryPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
786
3057
|
constructor(props: IPropertyComponentProps);
|
|
787
3058
|
render(): JSX.Element;
|
|
788
3059
|
}
|
|
3060
|
+
|
|
3061
|
+
export class VectorMergerPropertyTabComponent extends React.Component<IPropertyComponentProps> {
|
|
789
3062
|
constructor(props: IPropertyComponentProps);
|
|
790
3063
|
render(): JSX.Element;
|
|
791
3064
|
}
|
|
3065
|
+
|
|
3066
|
+
export class PropertyLedger {
|
|
792
3067
|
static RegisteredControls: {
|
|
793
3068
|
[key: string]: ComponentClass<IPropertyComponentProps>;
|
|
794
3069
|
};
|
|
795
3070
|
}
|
|
3071
|
+
|
|
3072
|
+
export class GlobalState {
|
|
796
3073
|
nodeMaterial: BABYLON.NodeMaterial;
|
|
797
3074
|
hostElement: HTMLElement;
|
|
798
3075
|
hostDocument: HTMLDocument;
|
|
799
3076
|
hostWindow: Window;
|
|
800
3077
|
onSelectionChangedObservable: BABYLON.Observable<BABYLON.Nullable<GraphFrame | GraphNode | NodePort | NodeLink | FramePortData>>;
|
|
801
3078
|
onRebuildRequiredObservable: BABYLON.Observable<boolean>;
|
|
802
3079
|
onBuiltObservable: BABYLON.Observable<void>;
|
|
803
3080
|
onResetRequiredObservable: BABYLON.Observable<void>;
|
|
804
3081
|
onUpdateRequiredObservable: BABYLON.Observable<BABYLON.Nullable<BABYLON.NodeMaterialBlock>>;
|
|
805
3082
|
onZoomToFitRequiredObservable: BABYLON.Observable<void>;
|
|
806
3083
|
onReOrganizedRequiredObservable: BABYLON.Observable<void>;
|
|
807
3084
|
onLogRequiredObservable: BABYLON.Observable<LogEntry>;
|
|
808
3085
|
onErrorMessageDialogRequiredObservable: BABYLON.Observable<string>;
|
|
809
3086
|
onIsLoadingChanged: BABYLON.Observable<boolean>;
|
|
810
3087
|
onPreviewCommandActivated: BABYLON.Observable<boolean>;
|
|
811
3088
|
onLightUpdated: BABYLON.Observable<void>;
|
|
812
3089
|
onPreviewBackgroundChanged: BABYLON.Observable<void>;
|
|
813
3090
|
onBackFaceCullingChanged: BABYLON.Observable<void>;
|
|
814
3091
|
onDepthPrePassChanged: BABYLON.Observable<void>;
|
|
815
3092
|
onAnimationCommandActivated: BABYLON.Observable<void>;
|
|
816
3093
|
onCandidateLinkMoved: BABYLON.Observable<BABYLON.Nullable<BABYLON.Vector2>>;
|
|
817
3094
|
onSelectionBoxMoved: BABYLON.Observable<ClientRect | DOMRect>;
|
|
818
3095
|
onFrameCreatedObservable: BABYLON.Observable<GraphFrame>;
|
|
819
3096
|
onCandidatePortSelectedObservable: BABYLON.Observable<BABYLON.Nullable<NodePort | FrameNodePort>>;
|
|
820
3097
|
onImportFrameObservable: BABYLON.Observable<any>;
|
|
821
3098
|
onGraphNodeRemovalObservable: BABYLON.Observable<GraphNode>;
|
|
822
3099
|
onPopupClosedObservable: BABYLON.Observable<void>;
|
|
823
3100
|
onGetNodeFromBlock: (block: BABYLON.NodeMaterialBlock) => GraphNode;
|
|
824
3101
|
onGridSizeChanged: BABYLON.Observable<void>;
|
|
825
3102
|
onExposePortOnFrameObservable: BABYLON.Observable<GraphNode>;
|
|
826
3103
|
previewType: PreviewType;
|
|
827
3104
|
previewFile: File;
|
|
828
3105
|
particleSystemBlendMode: number;
|
|
829
3106
|
listOfCustomPreviewFiles: File[];
|
|
830
3107
|
rotatePreview: boolean;
|
|
831
3108
|
backgroundColor: BABYLON.Color4;
|
|
832
3109
|
backFaceCulling: boolean;
|
|
833
3110
|
depthPrePass: boolean;
|
|
834
3111
|
blockKeyboardEvents: boolean;
|
|
835
3112
|
hemisphericLight: boolean;
|
|
836
3113
|
directionalLight0: boolean;
|
|
837
3114
|
directionalLight1: boolean;
|
|
838
3115
|
controlCamera: boolean;
|
|
839
3116
|
storeEditorData: (serializationObject: any, frame?: BABYLON.Nullable<GraphFrame>) => void;
|
|
840
3117
|
_mode: BABYLON.NodeMaterialModes;
|
|
841
3118
|
/** Gets the mode */
|
|
842
3119
|
get mode(): BABYLON.NodeMaterialModes;
|
|
843
3120
|
/** Sets the mode */
|
|
844
3121
|
set mode(m: BABYLON.NodeMaterialModes);
|
|
845
3122
|
customSave?: {
|
|
846
3123
|
label: string;
|
|
847
3124
|
action: (data: string) => Promise<void>;
|
|
848
3125
|
};
|
|
849
3126
|
constructor();
|
|
850
3127
|
}
|
|
3128
|
+
|
|
3129
|
+
interface IGraphEditorProps {
|
|
851
3130
|
globalState: GlobalState;
|
|
852
3131
|
}
|
|
853
3132
|
interface IGraphEditorState {
|
|
854
3133
|
showPreviewPopUp: boolean;
|
|
855
3134
|
}
|
|
856
3135
|
interface IInternalPreviewAreaOptions extends BABYLON.IInspectorOptions {
|
|
857
3136
|
popup: boolean;
|
|
858
3137
|
original: boolean;
|
|
859
3138
|
explorerWidth?: string;
|
|
860
3139
|
inspectorWidth?: string;
|
|
861
3140
|
embedHostWidth?: string;
|
|
862
3141
|
}
|
|
863
3142
|
export class GraphEditor extends React.Component<IGraphEditorProps, IGraphEditorState> {
|
|
864
3143
|
private readonly NodeWidth;
|
|
865
3144
|
private _graphCanvas;
|
|
866
3145
|
private _startX;
|
|
867
3146
|
private _moveInProgress;
|
|
868
3147
|
private _leftWidth;
|
|
869
3148
|
private _rightWidth;
|
|
870
3149
|
private _blocks;
|
|
871
3150
|
private _previewManager;
|
|
872
3151
|
private _copiedNodes;
|
|
873
3152
|
private _copiedFrame;
|
|
874
3153
|
private _mouseLocationX;
|
|
875
3154
|
private _mouseLocationY;
|
|
876
3155
|
private _onWidgetKeyUpPointer;
|
|
877
3156
|
private _previewHost;
|
|
878
3157
|
private _popUpWindow;
|
|
879
3158
|
/**
|
|
880
3159
|
* Creates a node and recursivly creates its parent nodes from it's input
|
|
881
3160
|
* @param nodeMaterialBlock
|
|
882
3161
|
*/
|
|
883
3162
|
createNodeFromObject(block: BABYLON.NodeMaterialBlock, recursion?: boolean): GraphNode;
|
|
884
3163
|
addValueNode(type: string): GraphNode;
|
|
885
3164
|
componentDidMount(): void;
|
|
886
3165
|
componentWillUnmount(): void;
|
|
887
3166
|
constructor(props: IGraphEditorProps);
|
|
888
3167
|
reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
|
|
889
3168
|
pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, selectNew?: boolean): GraphNode[] | undefined;
|
|
890
3169
|
zoomToFit(): void;
|
|
891
3170
|
buildMaterial(autoConfigure?: boolean): void;
|
|
892
3171
|
build(): void;
|
|
893
3172
|
loadGraph(): void;
|
|
894
3173
|
showWaitScreen(): void;
|
|
895
3174
|
hideWaitScreen(): void;
|
|
896
3175
|
reOrganize(editorData?: BABYLON.Nullable<IEditorData>, isImportingAFrame?: boolean): void;
|
|
897
3176
|
onPointerDown(evt: React.PointerEvent<HTMLDivElement>): void;
|
|
898
3177
|
onPointerUp(evt: React.PointerEvent<HTMLDivElement>): void;
|
|
899
3178
|
resizeColumns(evt: React.PointerEvent<HTMLDivElement>, forLeft?: boolean): void;
|
|
900
3179
|
buildColumnLayout(): string;
|
|
901
3180
|
emitNewBlock(event: React.DragEvent<HTMLDivElement>): void;
|
|
902
3181
|
handlePopUp: () => void;
|
|
903
3182
|
handleClosingPopUp: () => void;
|
|
904
3183
|
initiatePreviewArea: (canvas?: HTMLCanvasElement) => void;
|
|
905
3184
|
createPopUp: () => void;
|
|
906
3185
|
createPopupWindow: (title: string, windowVariableName: string, width?: number, height?: number) => Window | null;
|
|
907
3186
|
createPreviewMeshControlHost: (options: IInternalPreviewAreaOptions, parentControl: BABYLON.Nullable<HTMLElement>) => void;
|
|
908
3187
|
createPreviewHost: (options: IInternalPreviewAreaOptions, parentControl: BABYLON.Nullable<HTMLElement>) => void;
|
|
909
3188
|
fixPopUpStyles: (document: Document) => void;
|
|
910
3189
|
render(): JSX.Element;
|
|
911
3190
|
}
|
|
3191
|
+
|
|
3192
|
+
|
|
3193
|
+
|
|
3194
|
+
/**
|
|
912
3195
|
* Interface used to specify creation options for the node editor
|
|
913
3196
|
*/
|
|
914
3197
|
export interface INodeEditorOptions {
|
|
915
3198
|
nodeMaterial: BABYLON.NodeMaterial;
|
|
916
3199
|
hostElement?: HTMLElement;
|
|
917
3200
|
customSave?: {
|
|
918
3201
|
label: string;
|
|
919
3202
|
action: (data: string) => Promise<void>;
|
|
920
3203
|
};
|
|
921
3204
|
customLoadObservable?: BABYLON.Observable<any>;
|
|
922
3205
|
}
|
|
923
3206
|
/**
|
|
924
3207
|
* Class used to create a node editor
|
|
925
3208
|
*/
|
|
926
3209
|
export class NodeEditor {
|
|
927
3210
|
private static _CurrentState;
|
|
928
3211
|
/**
|
|
929
3212
|
* Show the node editor
|
|
930
3213
|
* @param options defines the options to use to configure the node editor
|
|
931
3214
|
*/
|
|
932
3215
|
static Show(options: INodeEditorOptions): void;
|
|
933
3216
|
}
|
|
3217
|
+
|
|
3218
|
+
export interface INodeLocationInfo {
|
|
934
3219
|
blockId: number;
|
|
935
3220
|
x: number;
|
|
936
3221
|
y: number;
|
|
937
3222
|
}
|
|
938
3223
|
export interface IFrameData {
|
|
939
3224
|
x: number;
|
|
940
3225
|
y: number;
|
|
941
3226
|
width: number;
|
|
942
3227
|
height: number;
|
|
943
3228
|
color: number[];
|
|
944
3229
|
name: string;
|
|
945
3230
|
isCollapsed: boolean;
|
|
946
3231
|
blocks: number[];
|
|
947
3232
|
comments: string;
|
|
948
3233
|
}
|
|
949
3234
|
export interface IEditorData {
|
|
950
3235
|
locations: INodeLocationInfo[];
|
|
951
3236
|
x: number;
|
|
952
3237
|
y: number;
|
|
953
3238
|
zoom: number;
|
|
954
3239
|
frames?: IFrameData[];
|
|
955
3240
|
map?: {
|
|
956
3241
|
[key: number]: number;
|
|
957
3242
|
};
|
|
958
3243
|
}
|
|
3244
|
+
|
|
3245
|
+
interface IPortalProps {
|
|
959
3246
|
globalState: GlobalState;
|
|
960
3247
|
}
|
|
961
3248
|
export class Portal extends React.Component<IPortalProps> {
|
|
962
3249
|
render(): React.ReactPortal;
|
|
963
3250
|
}
|
|
3251
|
+
|
|
3252
|
+
export class SerializationTools {
|
|
964
3253
|
static UpdateLocations(material: BABYLON.NodeMaterial, globalState: GlobalState, frame?: BABYLON.Nullable<GraphFrame>): void;
|
|
965
3254
|
static Serialize(material: BABYLON.NodeMaterial, globalState: GlobalState, frame?: BABYLON.Nullable<GraphFrame>): string;
|
|
966
3255
|
static Deserialize(serializationObject: any, globalState: GlobalState): void;
|
|
967
3256
|
static AddFrameToMaterial(serializationObject: any, globalState: GlobalState, currentMaterial: BABYLON.NodeMaterial): void;
|
|
968
3257
|
}
|
|
3258
|
+
|
|
3259
|
+
export interface IButtonLineComponentProps {
|
|
969
3260
|
label: string;
|
|
970
3261
|
onClick: () => void;
|
|
971
3262
|
isDisabled?: boolean;
|
|
972
3263
|
}
|
|
973
3264
|
export class ButtonLineComponent extends React.Component<IButtonLineComponentProps> {
|
|
974
3265
|
constructor(props: IButtonLineComponentProps);
|
|
975
3266
|
render(): JSX.Element;
|
|
976
3267
|
}
|
|
3268
|
+
|
|
3269
|
+
export interface ICheckBoxLineComponentProps {
|
|
977
3270
|
label: string;
|
|
978
3271
|
target?: any;
|
|
979
3272
|
propertyName?: string;
|
|
980
3273
|
isSelected?: () => boolean;
|
|
981
3274
|
onSelect?: (value: boolean) => void;
|
|
982
3275
|
onValueChanged?: () => void;
|
|
983
3276
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
984
3277
|
disabled?: boolean;
|
|
985
3278
|
}
|
|
986
3279
|
export class CheckBoxLineComponent extends React.Component<ICheckBoxLineComponentProps, {
|
|
987
3280
|
isSelected: boolean;
|
|
988
3281
|
isDisabled?: boolean;
|
|
989
3282
|
}> {
|
|
990
3283
|
private static _UniqueIdSeed;
|
|
991
3284
|
private _uniqueId;
|
|
992
3285
|
private _localChange;
|
|
993
3286
|
constructor(props: ICheckBoxLineComponentProps);
|
|
994
3287
|
shouldComponentUpdate(nextProps: ICheckBoxLineComponentProps, nextState: {
|
|
995
3288
|
isSelected: boolean;
|
|
996
3289
|
isDisabled: boolean;
|
|
997
3290
|
}): boolean;
|
|
998
3291
|
onChange(): void;
|
|
999
3292
|
render(): JSX.Element;
|
|
1000
3293
|
}
|
|
3294
|
+
|
|
3295
|
+
export interface IColor3LineComponentProps {
|
|
1001
3296
|
label: string;
|
|
1002
3297
|
target: any;
|
|
1003
3298
|
propertyName: string;
|
|
1004
3299
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1005
3300
|
onChange?: () => void;
|
|
1006
3301
|
globalState: GlobalState;
|
|
1007
3302
|
}
|
|
1008
3303
|
export class Color3LineComponent extends React.Component<IColor3LineComponentProps, {
|
|
1009
3304
|
isExpanded: boolean;
|
|
1010
3305
|
color: BABYLON.Color3 | BABYLON.Color4;
|
|
1011
3306
|
}> {
|
|
1012
3307
|
private _localChange;
|
|
1013
3308
|
constructor(props: IColor3LineComponentProps);
|
|
1014
3309
|
shouldComponentUpdate(nextProps: IColor3LineComponentProps, nextState: {
|
|
1015
3310
|
color: BABYLON.Color3 | BABYLON.Color4;
|
|
1016
3311
|
}): boolean;
|
|
1017
3312
|
onChange(newValue: string): void;
|
|
1018
3313
|
switchExpandState(): void;
|
|
1019
3314
|
raiseOnPropertyChanged(previousValue: BABYLON.Color3 | BABYLON.Color4): void;
|
|
1020
3315
|
updateStateR(value: number): void;
|
|
1021
3316
|
updateStateG(value: number): void;
|
|
1022
3317
|
updateStateB(value: number): void;
|
|
1023
3318
|
copyToClipboard(): void;
|
|
1024
3319
|
render(): JSX.Element;
|
|
1025
3320
|
}
|
|
3321
|
+
|
|
3322
|
+
export interface IColor4LineComponentProps {
|
|
1026
3323
|
label: string;
|
|
1027
3324
|
target: any;
|
|
1028
3325
|
propertyName: string;
|
|
1029
3326
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1030
3327
|
onChange?: () => void;
|
|
1031
3328
|
globalState: GlobalState;
|
|
1032
3329
|
}
|
|
1033
3330
|
export class Color4LineComponent extends React.Component<IColor4LineComponentProps, {
|
|
1034
3331
|
isExpanded: boolean;
|
|
1035
3332
|
color: BABYLON.Color4;
|
|
1036
3333
|
}> {
|
|
1037
3334
|
private _localChange;
|
|
1038
3335
|
constructor(props: IColor4LineComponentProps);
|
|
1039
3336
|
shouldComponentUpdate(nextProps: IColor4LineComponentProps, nextState: {
|
|
1040
3337
|
color: BABYLON.Color4;
|
|
1041
3338
|
}): boolean;
|
|
1042
3339
|
onChange(newValue: string): void;
|
|
1043
3340
|
switchExpandState(): void;
|
|
1044
3341
|
raiseOnPropertyChanged(previousValue: BABYLON.Color4): void;
|
|
1045
3342
|
updateStateR(value: number): void;
|
|
1046
3343
|
updateStateG(value: number): void;
|
|
1047
3344
|
updateStateB(value: number): void;
|
|
1048
3345
|
updateStateA(value: number): void;
|
|
1049
3346
|
copyToClipboard(): void;
|
|
1050
3347
|
render(): JSX.Element;
|
|
1051
3348
|
}
|
|
3349
|
+
|
|
3350
|
+
export interface IColorPickerComponentProps {
|
|
1052
3351
|
value: BABYLON.Color4 | BABYLON.Color3;
|
|
1053
3352
|
onColorChanged: (newOne: string) => void;
|
|
1054
3353
|
globalState: GlobalState;
|
|
1055
3354
|
}
|
|
1056
3355
|
interface IColorPickerComponentState {
|
|
1057
3356
|
pickerEnabled: boolean;
|
|
1058
3357
|
color: BABYLON.Color3 | BABYLON.Color4;
|
|
1059
3358
|
hex: string;
|
|
1060
3359
|
}
|
|
1061
3360
|
export class ColorPickerLineComponent extends React.Component<IColorPickerComponentProps, IColorPickerComponentState> {
|
|
1062
3361
|
private _floatRef;
|
|
1063
3362
|
private _floatHostRef;
|
|
1064
3363
|
constructor(props: IColorPickerComponentProps);
|
|
1065
3364
|
syncPositions(): void;
|
|
1066
3365
|
shouldComponentUpdate(nextProps: IColorPickerComponentProps, nextState: IColorPickerComponentState): boolean;
|
|
1067
3366
|
componentDidUpdate(): void;
|
|
1068
3367
|
componentDidMount(): void;
|
|
1069
3368
|
setPickerState(enabled: boolean): void;
|
|
1070
3369
|
render(): JSX.Element;
|
|
1071
3370
|
}
|
|
3371
|
+
|
|
3372
|
+
export interface IButtonLineComponentProps {
|
|
1072
3373
|
data: string;
|
|
1073
3374
|
tooltip: string;
|
|
1074
3375
|
}
|
|
1075
3376
|
export class DraggableLineComponent extends React.Component<IButtonLineComponentProps> {
|
|
1076
3377
|
constructor(props: IButtonLineComponentProps);
|
|
1077
3378
|
render(): JSX.Element;
|
|
1078
3379
|
}
|
|
3380
|
+
|
|
3381
|
+
export interface IDraggableLineWithButtonComponent {
|
|
1079
3382
|
data: string;
|
|
1080
3383
|
tooltip: string;
|
|
1081
3384
|
iconImage: any;
|
|
1082
3385
|
onIconClick: (value: string) => void;
|
|
1083
3386
|
iconTitle: string;
|
|
1084
3387
|
lenSuffixToRemove?: number;
|
|
1085
3388
|
}
|
|
1086
3389
|
export class DraggableLineWithButtonComponent extends React.Component<IDraggableLineWithButtonComponent> {
|
|
1087
3390
|
constructor(props: IDraggableLineWithButtonComponent);
|
|
1088
3391
|
render(): JSX.Element;
|
|
1089
3392
|
}
|
|
3393
|
+
|
|
3394
|
+
interface IFileButtonLineComponentProps {
|
|
1090
3395
|
label: string;
|
|
1091
3396
|
onClick: (file: File) => void;
|
|
1092
3397
|
accept: string;
|
|
1093
3398
|
uploadName?: string;
|
|
1094
3399
|
}
|
|
1095
3400
|
export class FileButtonLineComponent extends React.Component<IFileButtonLineComponentProps> {
|
|
1096
3401
|
private uploadRef;
|
|
1097
3402
|
constructor(props: IFileButtonLineComponentProps);
|
|
1098
3403
|
onChange(evt: any): void;
|
|
1099
3404
|
render(): JSX.Element;
|
|
1100
3405
|
}
|
|
3406
|
+
|
|
3407
|
+
interface IFloatLineComponentProps {
|
|
1101
3408
|
label: string;
|
|
1102
3409
|
target: any;
|
|
1103
3410
|
propertyName: string;
|
|
1104
3411
|
onChange?: (newValue: number) => void;
|
|
1105
3412
|
isInteger?: boolean;
|
|
1106
3413
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1107
3414
|
additionalClass?: string;
|
|
1108
3415
|
step?: string;
|
|
1109
3416
|
digits?: number;
|
|
1110
3417
|
globalState: GlobalState;
|
|
1111
3418
|
min?: number;
|
|
1112
3419
|
max?: number;
|
|
1113
3420
|
smallUI?: boolean;
|
|
1114
3421
|
onEnter?: (newValue: number) => void;
|
|
1115
3422
|
}
|
|
1116
3423
|
export class FloatLineComponent extends React.Component<IFloatLineComponentProps, {
|
|
1117
3424
|
value: string;
|
|
1118
3425
|
}> {
|
|
1119
3426
|
private _localChange;
|
|
1120
3427
|
private _store;
|
|
1121
3428
|
private _regExp;
|
|
1122
3429
|
private _onFocus;
|
|
1123
3430
|
constructor(props: IFloatLineComponentProps);
|
|
1124
3431
|
shouldComponentUpdate(nextProps: IFloatLineComponentProps, nextState: {
|
|
1125
3432
|
value: string;
|
|
1126
3433
|
}): boolean;
|
|
1127
3434
|
componentWillUnmount(): void;
|
|
1128
3435
|
raiseOnPropertyChanged(newValue: number, previousValue: number): void;
|
|
1129
3436
|
updateValue(valueString: string): void;
|
|
1130
3437
|
render(): JSX.Element;
|
|
1131
3438
|
}
|
|
3439
|
+
|
|
3440
|
+
interface ILineContainerComponentProps {
|
|
1132
3441
|
title: string;
|
|
1133
3442
|
children: any[] | any;
|
|
1134
3443
|
closed?: boolean;
|
|
1135
3444
|
}
|
|
1136
3445
|
export class LineContainerComponent extends React.Component<ILineContainerComponentProps, {
|
|
1137
3446
|
isExpanded: boolean;
|
|
1138
3447
|
}> {
|
|
1139
3448
|
constructor(props: ILineContainerComponentProps);
|
|
1140
3449
|
switchExpandedState(): void;
|
|
1141
3450
|
renderHeader(): JSX.Element;
|
|
1142
3451
|
render(): JSX.Element;
|
|
1143
3452
|
}
|
|
3453
|
+
|
|
3454
|
+
interface ILineWithFileButtonComponentProps {
|
|
1144
3455
|
title: string;
|
|
1145
3456
|
closed?: boolean;
|
|
1146
3457
|
label: string;
|
|
1147
3458
|
iconImage: any;
|
|
1148
3459
|
onIconClick: (file: File) => void;
|
|
1149
3460
|
accept: string;
|
|
1150
3461
|
uploadName?: string;
|
|
1151
3462
|
}
|
|
1152
3463
|
export class LineWithFileButtonComponent extends React.Component<ILineWithFileButtonComponentProps, {
|
|
1153
3464
|
isExpanded: boolean;
|
|
1154
3465
|
}> {
|
|
1155
3466
|
private uploadRef;
|
|
1156
3467
|
constructor(props: ILineWithFileButtonComponentProps);
|
|
1157
3468
|
onChange(evt: any): void;
|
|
1158
3469
|
switchExpandedState(): void;
|
|
1159
3470
|
render(): JSX.Element;
|
|
1160
3471
|
}
|
|
3472
|
+
|
|
3473
|
+
interface IMatrixLineComponentProps {
|
|
1161
3474
|
label: string;
|
|
1162
3475
|
target: any;
|
|
1163
3476
|
propertyName: string;
|
|
1164
3477
|
step?: number;
|
|
1165
3478
|
onChange?: (newValue: BABYLON.Matrix) => void;
|
|
1166
3479
|
onModeChange?: (mode: number) => void;
|
|
1167
3480
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1168
3481
|
mode?: number;
|
|
1169
3482
|
globalState: GlobalState;
|
|
1170
3483
|
}
|
|
1171
3484
|
export class MatrixLineComponent extends React.Component<IMatrixLineComponentProps, {
|
|
1172
3485
|
value: BABYLON.Matrix;
|
|
1173
3486
|
mode: number;
|
|
1174
3487
|
angle: number;
|
|
1175
3488
|
}> {
|
|
1176
3489
|
private _localChange;
|
|
1177
3490
|
constructor(props: IMatrixLineComponentProps);
|
|
1178
3491
|
shouldComponentUpdate(nextProps: IMatrixLineComponentProps, nextState: {
|
|
1179
3492
|
value: BABYLON.Matrix;
|
|
1180
3493
|
mode: number;
|
|
1181
3494
|
angle: number;
|
|
1182
3495
|
}): boolean;
|
|
1183
3496
|
raiseOnPropertyChanged(previousValue: BABYLON.Vector3): void;
|
|
1184
3497
|
updateMatrix(): void;
|
|
1185
3498
|
updateRow(value: BABYLON.Vector4, row: number): void;
|
|
1186
3499
|
updateBasedOnMode(value: number): void;
|
|
1187
3500
|
render(): JSX.Element;
|
|
1188
3501
|
}
|
|
3502
|
+
|
|
3503
|
+
interface IMessageDialogComponentProps {
|
|
1189
3504
|
globalState: GlobalState;
|
|
1190
3505
|
}
|
|
1191
3506
|
export class MessageDialogComponent extends React.Component<IMessageDialogComponentProps, {
|
|
1192
3507
|
message: string;
|
|
1193
3508
|
isError: boolean;
|
|
1194
3509
|
}> {
|
|
1195
3510
|
constructor(props: IMessageDialogComponentProps);
|
|
1196
3511
|
render(): JSX.Element | null;
|
|
1197
3512
|
}
|
|
3513
|
+
|
|
3514
|
+
interface INumericInputComponentProps {
|
|
1198
3515
|
label: string;
|
|
1199
3516
|
value: number;
|
|
1200
3517
|
step?: number;
|
|
1201
3518
|
onChange: (value: number) => void;
|
|
1202
3519
|
globalState: GlobalState;
|
|
1203
3520
|
}
|
|
1204
3521
|
export class NumericInputComponent extends React.Component<INumericInputComponentProps, {
|
|
1205
3522
|
value: string;
|
|
1206
3523
|
}> {
|
|
1207
3524
|
static defaultProps: {
|
|
1208
3525
|
step: number;
|
|
1209
3526
|
};
|
|
1210
3527
|
private _localChange;
|
|
1211
3528
|
constructor(props: INumericInputComponentProps);
|
|
1212
3529
|
shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
|
|
1213
3530
|
value: string;
|
|
1214
3531
|
}): boolean;
|
|
1215
3532
|
updateValue(evt: any): void;
|
|
1216
3533
|
render(): JSX.Element;
|
|
1217
3534
|
}
|
|
3535
|
+
|
|
3536
|
+
interface IOptionsLineComponentProps {
|
|
1218
3537
|
label: string;
|
|
1219
3538
|
target: any;
|
|
1220
3539
|
className?: string;
|
|
1221
3540
|
propertyName?: string;
|
|
1222
3541
|
options: BABYLON.IInspectableOptions[];
|
|
1223
3542
|
noDirectUpdate?: boolean;
|
|
1224
3543
|
onSelect?: (value: number | string) => void;
|
|
1225
3544
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1226
3545
|
valuesAreStrings?: boolean;
|
|
1227
3546
|
defaultIfNull?: number;
|
|
1228
3547
|
getSelection?: (target: any) => number;
|
|
1229
3548
|
}
|
|
1230
3549
|
export class OptionsLineComponent extends React.Component<IOptionsLineComponentProps, {
|
|
1231
3550
|
value: number | string;
|
|
1232
3551
|
}> {
|
|
1233
3552
|
private _localChange;
|
|
1234
3553
|
private _getValue;
|
|
1235
3554
|
constructor(props: IOptionsLineComponentProps);
|
|
1236
3555
|
setValue(value: string | number): void;
|
|
1237
3556
|
shouldComponentUpdate(nextProps: IOptionsLineComponentProps, nextState: {
|
|
1238
3557
|
value: number;
|
|
1239
3558
|
}): boolean;
|
|
1240
3559
|
raiseOnPropertyChanged(newValue: number | string, previousValue: number | string): void;
|
|
1241
3560
|
updateValue(valueString: string): void;
|
|
1242
3561
|
render(): JSX.Element;
|
|
1243
3562
|
}
|
|
3563
|
+
|
|
3564
|
+
export class Popup {
|
|
1244
3565
|
static CreatePopup(title: string, windowVariableName: string, width?: number, height?: number): HTMLDivElement | null;
|
|
1245
3566
|
static _CopyStyles(sourceDoc: HTMLDocument, targetDoc: HTMLDocument): void;
|
|
1246
3567
|
}
|
|
3568
|
+
|
|
3569
|
+
export class PropertyChangedEvent {
|
|
1247
3570
|
object: any;
|
|
1248
3571
|
property: string;
|
|
1249
3572
|
value: any;
|
|
1250
3573
|
initialValue: any;
|
|
1251
3574
|
}
|
|
3575
|
+
|
|
3576
|
+
interface ISliderLineComponentProps {
|
|
1252
3577
|
label: string;
|
|
1253
3578
|
target?: any;
|
|
1254
3579
|
propertyName?: string;
|
|
1255
3580
|
minimum: number;
|
|
1256
3581
|
maximum: number;
|
|
1257
3582
|
step: number;
|
|
1258
3583
|
directValue?: number;
|
|
1259
3584
|
useEuler?: boolean;
|
|
1260
3585
|
onChange?: (value: number) => void;
|
|
1261
3586
|
onInput?: (value: number) => void;
|
|
1262
3587
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1263
3588
|
decimalCount?: number;
|
|
1264
3589
|
globalState: GlobalState;
|
|
1265
3590
|
}
|
|
1266
3591
|
export class SliderLineComponent extends React.Component<ISliderLineComponentProps, {
|
|
1267
3592
|
value: number;
|
|
1268
3593
|
}> {
|
|
1269
3594
|
private _localChange;
|
|
1270
3595
|
constructor(props: ISliderLineComponentProps);
|
|
1271
3596
|
shouldComponentUpdate(nextProps: ISliderLineComponentProps, nextState: {
|
|
1272
3597
|
value: number;
|
|
1273
3598
|
}): boolean;
|
|
1274
3599
|
onChange(newValueString: any): void;
|
|
1275
3600
|
onInput(newValueString: any): void;
|
|
1276
3601
|
prepareDataToRead(value: number): number;
|
|
1277
3602
|
render(): JSX.Element;
|
|
1278
3603
|
}
|
|
3604
|
+
|
|
3605
|
+
interface ITextInputLineComponentProps {
|
|
1279
3606
|
label: string;
|
|
1280
3607
|
globalState: GlobalState;
|
|
1281
3608
|
target?: any;
|
|
1282
3609
|
propertyName?: string;
|
|
1283
3610
|
value?: string;
|
|
1284
3611
|
multilines?: boolean;
|
|
1285
3612
|
onChange?: (value: string) => void;
|
|
1286
3613
|
validator?: (value: string) => boolean;
|
|
1287
3614
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1288
3615
|
}
|
|
1289
3616
|
export class TextInputLineComponent extends React.Component<ITextInputLineComponentProps, {
|
|
1290
3617
|
value: string;
|
|
1291
3618
|
}> {
|
|
1292
3619
|
private _localChange;
|
|
1293
3620
|
private _onFocus;
|
|
1294
3621
|
constructor(props: ITextInputLineComponentProps);
|
|
1295
3622
|
shouldComponentUpdate(nextProps: ITextInputLineComponentProps, nextState: {
|
|
1296
3623
|
value: string;
|
|
1297
3624
|
}): boolean;
|
|
1298
3625
|
componentWillUnmount(): void;
|
|
1299
3626
|
raiseOnPropertyChanged(newValue: string, previousValue: string): void;
|
|
1300
3627
|
updateValue(value: string, raisePropertyChanged: boolean): void;
|
|
1301
3628
|
render(): JSX.Element;
|
|
1302
3629
|
}
|
|
3630
|
+
|
|
3631
|
+
interface ITextLineComponentProps {
|
|
1303
3632
|
label: string;
|
|
1304
3633
|
value: string;
|
|
1305
3634
|
color?: string;
|
|
1306
3635
|
underline?: boolean;
|
|
1307
3636
|
onLink?: () => void;
|
|
1308
3637
|
}
|
|
1309
3638
|
export class TextLineComponent extends React.Component<ITextLineComponentProps> {
|
|
1310
3639
|
constructor(props: ITextLineComponentProps);
|
|
1311
3640
|
onLink(): void;
|
|
1312
3641
|
renderContent(): JSX.Element;
|
|
1313
3642
|
render(): JSX.Element;
|
|
1314
3643
|
}
|
|
3644
|
+
|
|
3645
|
+
interface ITextureLineComponentProps {
|
|
1315
3646
|
texture: BABYLON.BaseTexture;
|
|
1316
3647
|
width: number;
|
|
1317
3648
|
height: number;
|
|
1318
3649
|
globalState?: any;
|
|
1319
3650
|
hideChannelSelect?: boolean;
|
|
1320
3651
|
}
|
|
1321
3652
|
export interface ITextureLineComponentState {
|
|
1322
3653
|
displayRed: boolean;
|
|
1323
3654
|
displayGreen: boolean;
|
|
1324
3655
|
displayBlue: boolean;
|
|
1325
3656
|
displayAlpha: boolean;
|
|
1326
3657
|
face: number;
|
|
1327
3658
|
}
|
|
1328
3659
|
export class TextureLineComponent extends React.Component<ITextureLineComponentProps, ITextureLineComponentState> {
|
|
1329
3660
|
private canvasRef;
|
|
1330
3661
|
constructor(props: ITextureLineComponentProps);
|
|
1331
3662
|
shouldComponentUpdate(nextProps: ITextureLineComponentProps, nextState: {
|
|
1332
3663
|
displayRed: boolean;
|
|
1333
3664
|
displayGreen: boolean;
|
|
1334
3665
|
displayBlue: boolean;
|
|
1335
3666
|
displayAlpha: boolean;
|
|
1336
3667
|
face: number;
|
|
1337
3668
|
}): boolean;
|
|
1338
3669
|
componentDidMount(): void;
|
|
1339
3670
|
componentDidUpdate(): void;
|
|
1340
3671
|
updatePreview(): void;
|
|
1341
3672
|
static UpdatePreview(previewCanvas: HTMLCanvasElement, texture: BABYLON.BaseTexture, width: number, options: ITextureLineComponentState, onReady?: () => void, globalState?: any): Promise<void>;
|
|
1342
3673
|
render(): JSX.Element;
|
|
1343
3674
|
}
|
|
3675
|
+
|
|
3676
|
+
interface IVector2LineComponentProps {
|
|
1344
3677
|
label: string;
|
|
1345
3678
|
target: any;
|
|
1346
3679
|
propertyName: string;
|
|
1347
3680
|
step?: number;
|
|
1348
3681
|
onChange?: (newvalue: BABYLON.Vector2) => void;
|
|
1349
3682
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1350
3683
|
globalState: GlobalState;
|
|
1351
3684
|
}
|
|
1352
3685
|
export class Vector2LineComponent extends React.Component<IVector2LineComponentProps, {
|
|
1353
3686
|
isExpanded: boolean;
|
|
1354
3687
|
value: BABYLON.Vector2;
|
|
1355
3688
|
}> {
|
|
1356
3689
|
static defaultProps: {
|
|
1357
3690
|
step: number;
|
|
1358
3691
|
};
|
|
1359
3692
|
private _localChange;
|
|
1360
3693
|
constructor(props: IVector2LineComponentProps);
|
|
1361
3694
|
shouldComponentUpdate(nextProps: IVector2LineComponentProps, nextState: {
|
|
1362
3695
|
isExpanded: boolean;
|
|
1363
3696
|
value: BABYLON.Vector2;
|
|
1364
3697
|
}): boolean;
|
|
1365
3698
|
switchExpandState(): void;
|
|
1366
3699
|
raiseOnPropertyChanged(previousValue: BABYLON.Vector2): void;
|
|
1367
3700
|
updateStateX(value: number): void;
|
|
1368
3701
|
updateStateY(value: number): void;
|
|
1369
3702
|
render(): JSX.Element;
|
|
1370
3703
|
}
|
|
3704
|
+
|
|
3705
|
+
interface IVector3LineComponentProps {
|
|
1371
3706
|
label: string;
|
|
1372
3707
|
target: any;
|
|
1373
3708
|
propertyName: string;
|
|
1374
3709
|
step?: number;
|
|
1375
3710
|
onChange?: (newvalue: BABYLON.Vector3) => void;
|
|
1376
3711
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1377
3712
|
globalState: GlobalState;
|
|
1378
3713
|
}
|
|
1379
3714
|
export class Vector3LineComponent extends React.Component<IVector3LineComponentProps, {
|
|
1380
3715
|
isExpanded: boolean;
|
|
1381
3716
|
value: BABYLON.Vector3;
|
|
1382
3717
|
}> {
|
|
1383
3718
|
static defaultProps: {
|
|
1384
3719
|
step: number;
|
|
1385
3720
|
};
|
|
1386
3721
|
private _localChange;
|
|
1387
3722
|
constructor(props: IVector3LineComponentProps);
|
|
1388
3723
|
shouldComponentUpdate(nextProps: IVector3LineComponentProps, nextState: {
|
|
1389
3724
|
isExpanded: boolean;
|
|
1390
3725
|
value: BABYLON.Vector3;
|
|
1391
3726
|
}): boolean;
|
|
1392
3727
|
switchExpandState(): void;
|
|
1393
3728
|
raiseOnPropertyChanged(previousValue: BABYLON.Vector3): void;
|
|
1394
3729
|
updateVector3(): void;
|
|
1395
3730
|
updateStateX(value: number): void;
|
|
1396
3731
|
updateStateY(value: number): void;
|
|
1397
3732
|
updateStateZ(value: number): void;
|
|
1398
3733
|
render(): JSX.Element;
|
|
1399
3734
|
}
|
|
3735
|
+
|
|
3736
|
+
interface IVector4LineComponentProps {
|
|
1400
3737
|
label: string;
|
|
1401
3738
|
target?: any;
|
|
1402
3739
|
propertyName?: string;
|
|
1403
3740
|
value?: BABYLON.Vector4;
|
|
1404
3741
|
step?: number;
|
|
1405
3742
|
onChange?: (newvalue: BABYLON.Vector4) => void;
|
|
1406
3743
|
onPropertyChangedObservable?: BABYLON.Observable<PropertyChangedEvent>;
|
|
1407
3744
|
globalState: GlobalState;
|
|
1408
3745
|
}
|
|
1409
3746
|
export class Vector4LineComponent extends React.Component<IVector4LineComponentProps, {
|
|
1410
3747
|
isExpanded: boolean;
|
|
1411
3748
|
value: BABYLON.Vector4;
|
|
1412
3749
|
}> {
|
|
1413
3750
|
static defaultProps: {
|
|
1414
3751
|
step: number;
|
|
1415
3752
|
};
|
|
1416
3753
|
private _localChange;
|
|
1417
3754
|
constructor(props: IVector4LineComponentProps);
|
|
1418
3755
|
shouldComponentUpdate(nextProps: IVector4LineComponentProps, nextState: {
|
|
1419
3756
|
isExpanded: boolean;
|
|
1420
3757
|
value: BABYLON.Vector4;
|
|
1421
3758
|
}): boolean;
|
|
1422
3759
|
switchExpandState(): void;
|
|
1423
3760
|
raiseOnPropertyChanged(previousValue: BABYLON.Vector4): void;
|
|
1424
3761
|
updateVector4(): void;
|
|
1425
3762
|
updateStateX(value: number): void;
|
|
1426
3763
|
updateStateY(value: number): void;
|
|
1427
3764
|
updateStateZ(value: number): void;
|
|
1428
3765
|
updateStateW(value: number): void;
|
|
1429
3766
|
render(): JSX.Element;
|
|
1430
3767
|
}
|
|
3768
|
+
|
|
3769
|
+
|
|
3770
|
+
}
|