@xviewer.js/core 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xviewer.js/core",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -43,6 +43,7 @@ export declare class DeviceInput {
43
43
  connect(target: ConnTarget, event: string): void;
44
44
  disconnect(target: ConnTarget): void;
45
45
  private _addEventListener;
46
+ private _onResize;
46
47
  private _remapPointer;
47
48
  private _remapTouch;
48
49
  private _computePointer;
package/types/Utils.d.ts CHANGED
@@ -6,7 +6,7 @@ export declare function applyProps<T, K extends __C<T>>(target: T & {
6
6
  copy?: Function;
7
7
  };
8
8
  export declare function find<T extends Object3D>(node: T, path: string): T;
9
- export declare function getChidren<T extends Object3D>(node: T, filter: (value: T) => any, group?: boolean): any;
9
+ export declare function getChildren<T extends Object3D>(node: T, filter: (value: T) => any, group?: boolean): any;
10
10
  export declare function getChildByName<T extends Object3D>(node: T, name: string): T;
11
11
  export declare function queryValues<T extends Object & {
12
12
  name: string;
package/types/Viewer.d.ts CHANGED
@@ -25,6 +25,7 @@ export declare class Viewer extends EventEmitter {
25
25
  private _instanceId;
26
26
  private _root;
27
27
  private _canvas;
28
+ private _container;
28
29
  private _gl;
29
30
  private _RENDER_TARGET_FLOAT_TYPE;
30
31
  private _DATA_FLOAT_TYPE;
@@ -53,6 +54,7 @@ export declare class Viewer extends EventEmitter {
53
54
  private _loadingManager;
54
55
  private _tweens;
55
56
  get root(): HTMLElement;
57
+ get container(): HTMLElement;
56
58
  get time(): number;
57
59
  get scene(): Scene;
58
60
  get camera(): PerspectiveCamera;
@@ -77,9 +79,10 @@ export declare class Viewer extends EventEmitter {
77
79
  get loadingManager(): LoadingManager;
78
80
  get resourceManager(): ResourceManager;
79
81
  get taskManager(): TaskManager;
80
- constructor({ root, canvas, autoStart, autoResize, shadows, camera, targetFrameRate, fixedFrameTime, colorSpace, toneMapping, toneMappingExposure, maxDPR, path, resourcePath, dracoPath, orientation, loader, tasker, ...webglOpts }?: {
82
+ constructor({ root, canvas, container, autoStart, autoResize, shadows, camera, targetFrameRate, fixedFrameTime, colorSpace, toneMapping, toneMappingExposure, maxDPR, path, resourcePath, dracoPath, orientation, loader, tasker, ...webglOpts }?: {
81
83
  root?: HTMLElement;
82
84
  canvas?: HTMLCanvasElement;
85
+ container?: HTMLDivElement;
83
86
  targetFrameRate?: number;
84
87
  fixedFrameTime?: boolean;
85
88
  autoStart?: boolean;
@@ -122,6 +125,7 @@ export declare class Viewer extends EventEmitter {
122
125
  _resizing(width: number, height: number): void;
123
126
  start(): this;
124
127
  stop(): this;
128
+ rotate(): void;
125
129
  resize(width?: number, height?: number): void;
126
130
  loadAsset(props: AssetProperties): Promise<any>;
127
131
  getLoader(ext: string): import(".").aLoader;
@@ -9,6 +9,7 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
9
9
  static __panTarget: Vector2;
10
10
  static __rotateDelta: Vector2;
11
11
  static __posDelta: Vector3;
12
+ static __lookAtOffset: Vector3;
12
13
  static __xAxis: Vector3;
13
14
  static __yAxis: Vector3;
14
15
  static __quat: Quaternion;
@@ -18,6 +19,7 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
18
19
  private _preLoc1;
19
20
  private _spherical;
20
21
  private _lookAt;
22
+ private _offset;
21
23
  private _tempSmoothing;
22
24
  private _tempRotateSmoothing;
23
25
  private _targetTheta;
@@ -25,6 +27,7 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
25
27
  private _targetSpringLength;
26
28
  private _targetFov;
27
29
  private _targetLookAt;
30
+ private _targetOffset;
28
31
  forbidX: boolean;
29
32
  forbidY: boolean;
30
33
  forbidZ: boolean;
@@ -43,6 +46,8 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
43
46
  distanceMax: number;
44
47
  get lookAt(): Vector3;
45
48
  set lookAt(v: Vector3);
49
+ get offset(): Vector2;
50
+ set offset(v: Vector2);
46
51
  get springLength(): number;
47
52
  set springLength(v: number);
48
53
  get theta(): number;
@@ -63,18 +68,21 @@ export declare class FreelookVirtualCamera extends VirtualCamera {
63
68
  private _calculateDistanceScale;
64
69
  private _calculateRotatelDelta;
65
70
  private _calculatePanDelta;
71
+ private _calculateLookAtOffset;
66
72
  private _setTargetLookAt;
67
73
  private _setTargetRotation;
68
74
  private _setTargetSpringLength;
69
- goto({ springLength, theta, phi, lookAt, fov, smoothing, rotateSmoothing, }: {
75
+ goto({ springLength, theta, phi, lookAt, offset, fov, smoothing, rotateSmoothing, }: {
70
76
  duration?: number;
71
77
  springLength?: number;
72
78
  theta?: number;
73
79
  phi?: number;
74
80
  lookAt?: Vector3;
81
+ offset?: Vector2;
75
82
  fov?: number;
76
83
  smoothing?: number;
77
84
  rotateSmoothing?: number;
78
85
  }): void;
86
+ private _finalLookAt;
79
87
  update(dt: number): void;
80
88
  }
@@ -0,0 +1,28 @@
1
+ import { Matrix4, Color, Euler, Vector3, WebGLRenderTarget } from "three";
2
+ import { Component } from "../Component";
3
+ export declare class ContactShadows extends Component {
4
+ layerMask: number;
5
+ get visible(): boolean;
6
+ set visible(v: boolean);
7
+ color: Color;
8
+ blur: number;
9
+ constructor({ scale, frames, width, height, intensity, blur, near, far, resolution, smooth, color, renderOrder, layerMask, ...props }?: {
10
+ scale?: number;
11
+ frames?: number;
12
+ width?: number;
13
+ height?: number;
14
+ intensity?: number;
15
+ blur?: number;
16
+ near?: number;
17
+ far?: number;
18
+ resolution?: number;
19
+ smooth?: boolean;
20
+ color?: Color;
21
+ renderOrder?: number;
22
+ position?: Vector3;
23
+ rotation?: Euler;
24
+ layerMask?: number;
25
+ });
26
+ getRenderTarget: () => WebGLRenderTarget;
27
+ getTextureMatrix: () => Matrix4;
28
+ }
@@ -1,2 +1,3 @@
1
1
  export { Reflector } from "./Reflector";
2
2
  export { Animation } from "./Animation";
3
+ export { ContactShadows } from "./ContactShadows";
@@ -0,0 +1,17 @@
1
+ import { Color, IUniform, ShaderMaterial } from "three";
2
+ import { ContactShadows } from "../components";
3
+ export declare class ShadowMaterial extends ShaderMaterial {
4
+ vertexShader: string;
5
+ fragmentShader: string;
6
+ uniforms: {
7
+ [uniform: string]: IUniform<any>;
8
+ };
9
+ constructor({ shadows, ...props }: {
10
+ shadows: ContactShadows;
11
+ opacity?: number;
12
+ transparent?: boolean;
13
+ depthWrite?: boolean;
14
+ });
15
+ get color(): Color;
16
+ set color(v: Color);
17
+ }
@@ -1,3 +1,4 @@
1
1
  export * from "./glsl";
2
2
  export { getShaderMaterial } from "./getShaderMaterial";
3
3
  export { ReflectorMaterial } from "./ReflectorMaterial";
4
+ export { ShadowMaterial } from "./ShadowMaterial";
@@ -1,9 +1,10 @@
1
- import { Quaternion, Vector3 } from "three";
2
- export declare function VInterpTo(current: Vector3, target: Vector3, deltaTime: number, speed: number, out?: Vector3): Vector3;
1
+ import { Quaternion, Vector2, Vector3 } from "three";
2
+ export declare function VInterpTo(current: Vector2, target: Vector2, deltaTime: number, speed: number, out?: Vector2, epsilon?: number): Vector2;
3
+ export declare function VInterpTo(current: Vector3, target: Vector3, deltaTime: number, speed: number, out?: Vector3, epsilon?: number): Vector3;
3
4
  export declare function VInterpConstantTo(current: Vector3, target: Vector3, deltaTime: number, speed: number, out?: Vector3): Vector3;
4
5
  export declare function Quat_Equals(a: Quaternion, b: Quaternion, epsilon?: number): boolean;
5
6
  export declare function Quat_AngularDistance(a: Quaternion, b: Quaternion): number;
6
- export declare function QInterpTo(current: Quaternion, target: Quaternion, deltaTime: number, speed: number): Quaternion;
7
+ export declare function QInterpTo(current: Quaternion, target: Quaternion, deltaTime: number, speed: number, epsilon?: number): Quaternion;
7
8
  export declare function QInterpConstantTo(current: Quaternion, target: Quaternion, deltaTime: number, speed: number, out?: Quaternion): Quaternion;
8
- export declare function FInterpTo(current: number, target: number, deltaTime: number, speed: number): number;
9
- export declare function FInterpConstantTo(current: number, target: number, deltaTime: number, speed: number): number;
9
+ export declare function FInterpTo(current: number, target: number, deltaTime: number, speed: number, epsilon?: number): number;
10
+ export declare function FInterpConstantTo(current: number, target: number, deltaTime: number, speed: number, epsilon?: number): number;