@soonspacejs/plugin-navigation 2.6.30 → 2.6.32
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/README.md +32 -0
- package/dist/camera/index.d.ts +3 -0
- package/dist/camera/navigate-camera.d.ts +49 -49
- package/dist/camera/utils.d.ts +6 -0
- package/dist/index.esm.js +3 -3
- package/dist/navigator/index.d.ts +3 -0
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -78,4 +78,36 @@
|
|
|
78
78
|
- 当前朝向
|
|
79
79
|
- 前方转弯方向
|
|
80
80
|
|
|
81
|
+
<<<<<<< HEAD
|
|
82
|
+
## 代码 usage
|
|
83
|
+
|
|
84
|
+
```typescript
|
|
85
|
+
import NavigatorPlugin from "@soonspacejs/plugin-navigator";
|
|
86
|
+
|
|
87
|
+
const { NavigatorControl } = ssp.registerPlugin(
|
|
88
|
+
NavigatorPlugin,
|
|
89
|
+
"navigator-plugin"
|
|
90
|
+
);
|
|
91
|
+
|
|
92
|
+
const shortestPath1 = ssp.getShortest(/* ... */);
|
|
93
|
+
const shortestPath2 = ssp.getShortest(/* ... */);
|
|
94
|
+
|
|
95
|
+
const navigator = new NavigatorControl({
|
|
96
|
+
camera: {
|
|
97
|
+
opposite: true,
|
|
98
|
+
offset: new Vector3(),
|
|
99
|
+
},
|
|
100
|
+
paths: [],
|
|
101
|
+
onStart() {
|
|
102
|
+
console.log("start");
|
|
103
|
+
},
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
navigator.flyToStart();
|
|
107
|
+
|
|
108
|
+
navigator.start();
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
=======
|
|
112
|
+
>>>>>>> c8d957be8672383fdc0971cbcf1b0f8ea061d2d1
|
|
81
113
|
Document: [http://www.xwbuilders.com:8800/plugin/navigation.html](http://www.xwbuilders.com:8800/plugin/navigation.html)
|
package/dist/camera/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import SoonSpace from 'soonspacejs/types/index';
|
|
1
|
+
import SoonSpace, { ControlsOptions } from 'soonspacejs/types/index';
|
|
2
2
|
import { Camera, Euler, Object3D, Vector3 } from 'three';
|
|
3
3
|
import { GyroListener } from '../utils/gyro';
|
|
4
4
|
import { SoonSpaceCamera } from './ssp-camera';
|
|
@@ -10,7 +10,7 @@ import { CameraOppositeType, EulerArray, FixEuler, FixVector, NAVIGATE_ORIENTATI
|
|
|
10
10
|
*
|
|
11
11
|
* target 跟踪的目标
|
|
12
12
|
*/
|
|
13
|
-
export type ControlCallback = (camera: Camera, target: Object3D) => void;
|
|
13
|
+
export type ControlCallback = (camera: Camera, target: Object3D, event?: MouseEvent | TouchEvent) => void;
|
|
14
14
|
export interface NavigateCameraOptions {
|
|
15
15
|
disabledAnimate: boolean;
|
|
16
16
|
fixedOrientation: boolean;
|
|
@@ -62,26 +62,26 @@ export declare class NavigateCamera extends SoonSpaceCamera<Camera> {
|
|
|
62
62
|
/** 相机反转类型, 默认为 Y 轴对称 */
|
|
63
63
|
oppositeType: CameraOppositeType;
|
|
64
64
|
/**
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
* 目标角度修正
|
|
66
|
+
*
|
|
67
|
+
* 支持传入 getter 函数
|
|
68
|
+
*/
|
|
69
69
|
targetRotationFix: FixEuler;
|
|
70
70
|
/** 是否相对模型修正偏移 */
|
|
71
71
|
isFixPositionRelativeTarget: boolean;
|
|
72
72
|
/**
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
73
|
+
* 目标位置修正
|
|
74
|
+
*
|
|
75
|
+
* 支持传入 getter 函数
|
|
76
|
+
*/
|
|
77
77
|
targetPositionFix: FixVector;
|
|
78
78
|
/**
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
79
|
+
* 自动恢复朝向
|
|
80
|
+
*
|
|
81
|
+
* boolean 是否恢复朝向
|
|
82
|
+
*
|
|
83
|
+
* number 间隔多少秒后恢复朝向
|
|
84
|
+
*/
|
|
85
85
|
autoRestoreOrientation: boolean | number;
|
|
86
86
|
/** 当控制器控制相机时允许外部自定义控制,控制开始时触发 */
|
|
87
87
|
onControlStart: null | ControlCallback;
|
|
@@ -117,44 +117,44 @@ export declare class NavigateCamera extends SoonSpaceCamera<Camera> {
|
|
|
117
117
|
/** 绝对朝向的缓存值 */
|
|
118
118
|
private _fixedOrientationRotation;
|
|
119
119
|
/**
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
120
|
+
* 相机朝向类型
|
|
121
|
+
*
|
|
122
|
+
* NAVIGATE_ORIENTATION_TYPE.RELATIVE_ORIENTATION 相对朝向
|
|
123
|
+
*
|
|
124
|
+
* NAVIGATE_ORIENTATION_TYPE.FIXED_ORIENTATION 绝对朝向
|
|
125
|
+
*
|
|
126
|
+
* NAVIGATE_ORIENTATION_TYPE.GYRO_ORIENTATION 陀螺仪朝向
|
|
127
|
+
*/
|
|
128
128
|
get orientationType(): NAVIGATE_ORIENTATION_TYPE;
|
|
129
129
|
set orientationType(value: NAVIGATE_ORIENTATION_TYPE);
|
|
130
130
|
protected _orientationTarget: NavigateOrientationTarget;
|
|
131
131
|
/**
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
132
|
+
* 相机朝向目标
|
|
133
|
+
*
|
|
134
|
+
* “main” 朝向跟踪目标
|
|
135
|
+
*
|
|
136
|
+
* Vector3 朝向点
|
|
137
|
+
*
|
|
138
|
+
* Object3D 朝向目标对象
|
|
139
|
+
*
|
|
140
|
+
* Euler 固定朝向
|
|
141
|
+
*/
|
|
142
142
|
get orientationTarget(): NavigateOrientationTarget;
|
|
143
143
|
set orientationTarget(value: NavigateOrientationTarget);
|
|
144
144
|
protected _vision: NAVIGATE_VISION_TYPE;
|
|
145
145
|
/**
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
146
|
+
* 视角配置
|
|
147
|
+
*
|
|
148
|
+
* NAVIGATE_VISION_TYPE.FIRST_VISION 第一人称
|
|
149
|
+
*
|
|
150
|
+
* NAVIGATE_VISION_TYPE.THIRD_VISION 第三人称
|
|
151
|
+
*
|
|
152
|
+
* NAVIGATE_VISION_TYPE.UP_VISION 俯视图
|
|
153
|
+
*
|
|
154
|
+
* NAVIGATE_VISION_TYPE.LEFT_VISION 左视图
|
|
155
|
+
*
|
|
156
|
+
* 默认为第三人称
|
|
157
|
+
*/
|
|
158
158
|
get vision(): NAVIGATE_VISION_TYPE;
|
|
159
159
|
set vision(value: NAVIGATE_VISION_TYPE);
|
|
160
160
|
protected _followTarget: Object3D;
|
|
@@ -169,7 +169,7 @@ export declare class NavigateCamera extends SoonSpaceCamera<Camera> {
|
|
|
169
169
|
/** 固定朝向,朝向不受控制器影响 */
|
|
170
170
|
get fixedOrientation(): boolean;
|
|
171
171
|
set fixedOrientation(value: boolean);
|
|
172
|
-
constructor(ssp: SoonSpace, camera?: Camera, options?: NavigateCameraOptions);
|
|
172
|
+
constructor(ssp: SoonSpace, camera?: Camera, options?: Partial<NavigateCameraOptions>, controls?: Partial<ControlsOptions>);
|
|
173
173
|
protected initGyroListener(): void;
|
|
174
174
|
/** 控制器操作时处理 */
|
|
175
175
|
protected setCameraOrientationOnControl(): void;
|
|
@@ -189,8 +189,8 @@ export declare class NavigateCamera extends SoonSpaceCamera<Camera> {
|
|
|
189
189
|
/** 设置参数 */
|
|
190
190
|
setOptions(options: Partial<NavigateCameraOptions>): void;
|
|
191
191
|
/**
|
|
192
|
-
|
|
193
|
-
|
|
192
|
+
* 设置相机,若导航相机正在使用中,则会立即切换为设置的相机
|
|
193
|
+
*/
|
|
194
194
|
setCamera(camera: Camera): this;
|
|
195
195
|
/** 重置相机坐标 */
|
|
196
196
|
restoreOrientation(): void;
|
package/dist/camera/utils.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Euler, Vector3 } from 'three';
|
|
2
2
|
import { FixEuler, FixVector, Object3DLike } from './types';
|
|
3
|
+
import SoonSpace from 'soonspacejs/types/index';
|
|
3
4
|
export declare function Vector3ToEuler(v: Vector3): Euler;
|
|
4
5
|
export declare function eulerToVector3(e: Euler): Vector3;
|
|
5
6
|
/**
|
|
@@ -9,3 +10,8 @@ export declare function eulerToVector3(e: Euler): Vector3;
|
|
|
9
10
|
export declare function normalizeEuler(e: Euler): Vector3;
|
|
10
11
|
export declare function getFixVector(v: FixVector, target?: Object3DLike): import("./types").VectorArray;
|
|
11
12
|
export declare function getFixEuler(e: FixEuler, target?: Object3DLike): import("./types").EulerArray;
|
|
13
|
+
export declare function initTouchToRotateCamera(ssp: SoonSpace): {
|
|
14
|
+
touchStart: (event: TouchEvent) => void;
|
|
15
|
+
touchMove: (event: TouchEvent) => void;
|
|
16
|
+
touchEnd: () => void;
|
|
17
|
+
};
|