Function
Five Vue Hooks: 使用 Five 的命令
updateCamera
移动相机。(不触发点位移动)如果动画中途被打断(用户触发行为,或者调用 setState, load, changeMode)的等会 Promise.reject。运动完成则 Promise.resolve// params pose - 相机目标位置// params duration - 动画触发的时常// params Promise - 是否移动成功updateCamera(pose: Pose, duration: number): Promise<void> Copy
移动相机。(不触发点位移动)如果动画中途被打断(用户触发行为,或者调用 setState, load, changeMode)的等会 Promise.reject。运动完成则 Promise.resolve// params pose - 相机目标位置// params duration - 动画触发的时常// params Promise - 是否移动成功updateCamera(pose: Pose, duration: number): Promise<void>
initBasisLoader
初始化 initBasisLoader同初始化的 initBasisLoader 参数。用于初始化 basisLoader。basisLoader 只会初始化一次,一旦初始化则不会再修改。// param transcoderResourcePath// 如果不设置,使用默认解析器 basis 解析器。// 可以传入解析器的 `resourcePath`, 则使用指定的解析器initBasisLoader(transcoderResourcePath?: string): void, Copy
初始化 initBasisLoader同初始化的 initBasisLoader 参数。用于初始化 basisLoader。basisLoader 只会初始化一次,一旦初始化则不会再修改。// param transcoderResourcePath// 如果不设置,使用默认解析器 basis 解析器。// 可以传入解析器的 `resourcePath`, 则使用指定的解析器initBasisLoader(transcoderResourcePath?: string): void,
getPixels
获取画面中的像素颜色// param x - 获取像素区域的起始坐标 x// param y - 获取像素区域的起始坐标 y// param width - 获取像素区域的宽度// param height - 获取像素区域的高度// param pixelRatio - 获取区域的像素比// returns rgba颜色平铺的 Uint8ArraygetPixels(x: number, y: number, width: number, height: number, pixelRatio?: number): Uint8Array, Copy
获取画面中的像素颜色// param x - 获取像素区域的起始坐标 x// param y - 获取像素区域的起始坐标 y// param width - 获取像素区域的宽度// param height - 获取像素区域的高度// param pixelRatio - 获取区域的像素比// returns rgba颜色平铺的 Uint8ArraygetPixels(x: number, y: number, width: number, height: number, pixelRatio?: number): Uint8Array,
render
强制渲染调用 render() 和 needsRender() 均可在按需渲染时,使得画面渲染一次区别在于:- needsRender() 为在下帧渲染画面- render() 在当前帧渲染画面推荐使用 needsRender(), 可以更加流畅。但是如果需要截图等同步操作,可以使用 render()// param callback 渲染完成回调render(callback?: () => void): void, Copy
强制渲染调用 render() 和 needsRender() 均可在按需渲染时,使得画面渲染一次区别在于:- needsRender() 为在下帧渲染画面- render() 在当前帧渲染画面推荐使用 needsRender(), 可以更加流畅。但是如果需要截图等同步操作,可以使用 render()// param callback 渲染完成回调render(callback?: () => void): void,
needsRender
下一帧渲染调用 render() 和 needsRender() 均可在按需渲染时,使得画面渲染一次区别在于:- needsRender() 为在下帧渲染画面- render() 在当前帧渲染画面推荐使用 needsRender(), 可以更加流畅。但是如果需要截图等同步操作,可以使用 render()needsRender(): void, Copy
下一帧渲染调用 render() 和 needsRender() 均可在按需渲染时,使得画面渲染一次区别在于:- needsRender() 为在下帧渲染画面- render() 在当前帧渲染画面推荐使用 needsRender(), 可以更加流畅。但是如果需要截图等同步操作,可以使用 render()needsRender(): void,
preloadPano
预加载点位图片资源// param panoId - 观察点// param callback - 加载完成回调, 并传递加载用时。// returns 加载完成的 Promise 参数同 callbackpreloadPano(panoId: WorkPanoId, callback?: (costs: number) => void): Promise<number> Copy
预加载点位图片资源// param panoId - 观察点// param callback - 加载完成回调, 并传递加载用时。// returns 加载完成的 Promise 参数同 callbackpreloadPano(panoId: WorkPanoId, callback?: (costs: number) => void): Promise<number>
project2d
计算三维空间的点对应到屏幕的二维坐标调用 `project2d()` 和 `useFiveProject2d()` 均可用于计算三维空间的点对应到屏幕的二维坐标区别在于:- `project2d()` 只计算一次,入参改变或 cameraUpdate 时 不会更新值- `useFiveProject2d()` 通过 watch 监听入参和 cameraUpdate 变化,自动更新返回值project2d(vector3: THREE.Vector3, testModel?: boolean ): THREE.Vector2 Copy
计算三维空间的点对应到屏幕的二维坐标调用 `project2d()` 和 `useFiveProject2d()` 均可用于计算三维空间的点对应到屏幕的二维坐标区别在于:- `project2d()` 只计算一次,入参改变或 cameraUpdate 时 不会更新值- `useFiveProject2d()` 通过 watch 监听入参和 cameraUpdate 变化,自动更新返回值project2d(vector3: THREE.Vector3, testModel?: boolean ): THREE.Vector2
const { updateCamera, initBasisLoader, getPixels, render, needsRender, preloadPano, project2d } = useFiveAction(); Copy
const { updateCamera, initBasisLoader, getPixels, render, needsRender, preloadPano, project2d } = useFiveAction();
Five Vue Hooks: 使用 Five 的命令
updateCamera
initBasisLoader
getPixels
render
needsRender
preloadPano
project2d