Interface FiveInitArgs

Five 初始化参数

interface FiveInitArgs {
    antialias?: boolean;
    backgroundAlpha?: number;
    backgroundColor?: number;
    enableWheel?: boolean;
    floorplan?: FloorplanControllerCustomInitArgs;
    imageOptions?: ImageOptions;
    logarithmicDepthBuffer?: boolean;
    mapview?: MapviewControllerCustomInitArgs;
    maxFps?: number | false;
    modeChangeDuration?: number;
    model?: ModelControllerCustomInitArgs;
    onlyRenderIfNeeds?: boolean;
    panorama?: PanoramaControllerCustomInitArgs;
    play?: boolean;
    plugins?: (
        | ((five: Five) => void)
        | [Plugin: ((five: Five) => any) | ((five: Five, parameters: any) => any), instanceName: string]
        | [Plugin: ((five: Five) => any) | ((five: Five, parameters: any) => any), instanceName: string, parameters: any]
        | [Plugin: ((five: Five) => any), instanceName: string])[];
    poweredByRealsee?: boolean;
    precision?: "highp" | "mediump" | "lowp";
    preserveDrawingBuffer?: boolean;
    renderer?: WebGLRenderer;
    scissor?: Scissor;
    textureOptions?: TextureOptions;
    topview?: TopviewControllerCustomInitArgs;
    videoInstance?: HTMLVideoElement;
    vrPanorama?: VRPanoramaControllerCustomInitArgs;
    webgl2?: boolean;
    xrPanorama?: XRPanoramaControllerCustomInitArgs;
    requestProxy?(url: string): string | Promise<string>;
}

Properties

antialias?: boolean

是否开启 THREE.WebGLRenderer 的抗锯齿功能

这个抗锯齿功能是 WEBGL 自带的抗锯齿,并不是类似 fxaa taa 等后处理方式,比较吃性能。 如果设置了参数 renderer 参数,则不生效,请对传入的 renderer 自行设置。

false

backgroundAlpha?: number

输出画面的背景透明度

通过数字类型传入。取值范围 [0-1] 如果设置了参数 renderer 参数,则不生效,请对传入的 renderer 自行设置。

1

backgroundColor?: number

输出画面的背景颜色。

通过数字类型传入。 如果设置了参数 renderer 参数,则不生效,请对传入的 renderer 自行设置。

0x181A1C

backgroundColor: 0xffffff // 白色
backgroundColor: 0xff0000 // 红色
enableWheel?: boolean

是否支持滚轮

模型查看模式下的特定参数

imageOptions?: ImageOptions

全景图的配置参数

可以动态对配置在 work 数据中的全景图片在 runtime 做 url 调整。 平衡加载时间和图片质量

logarithmicDepthBuffer?: boolean

是否使用对数深度缓存。如果要在单个场景中处理巨大的比例差异,就有必要使用

地图模式下的特定参数

maxFps?: number | false

最高 fps 限制

如果为 false, 则不限制。最好也就是屏幕刷新率,不会再高了。

false

modeChangeDuration?: number

模式间切换时的过度动画时间

单位毫秒

800

模型游走模式下的特定参数

onlyRenderIfNeeds?: boolean

是否按需渲染

按需渲染时,如果页面中的渲染有 needsRender: true 属性。或者 five.needsRender: true 时 才会重新渲染屏幕,降低无用渲染产生的消耗。

true

全景图游走模式下的特定参数

play?: boolean

是否自动播放。

播放即把内存中计算的内容渲染到画面上。play则是进行每帧播放。 如果 play: false 则不自动播放。屏幕不显示。 你还可以通过 five.play() five.pause() 的方式来控制播放。

true

plugins?: (
    | ((five: Five) => void)
    | [Plugin: ((five: Five) => any) | ((five: Five, parameters: any) => any), instanceName: string]
    | [Plugin: ((five: Five) => any) | ((five: Five, parameters: any) => any), instanceName: string, parameters: any]
    | [Plugin: ((five: Five) => any), instanceName: string])[]

插件定义

详见插件部分。

poweredByRealsee?: boolean

是否展示 powered by 如视

precision?: "highp" | "mediump" | "lowp"

着色器精度. 可以是 "highp", "mediump" 或者 "lowp". 如果设备支持

preserveDrawingBuffer?: boolean

内部 THREE.WebGLRenderer 是否通过像素拷贝的方式绘制。

当你想做屏幕截图等要确定取得屏幕像素时,请设置为 true。 如果设置了参数 renderer 参数,则不生效,请对传入的 renderer 自行设置。

false

renderer?: WebGLRenderer

外部传入的 THREE.WebGLRenderer

如果需要使用 scissor 分割画布功能,则必须使用外部传入 renderer, 并且设置为 preserveDrawingBuffer: false。 如果设置了 renderer, 则 preserveDrawingBuffer backgroundColor backgroundAlpha antialias 均不再生效。

scissor?: Scissor

屏幕渲染区域

请确保设置了 renderer 参数,scissor 参数才可生效 scissor 是将屏幕中的内容渲染到 renderer 的指定区域。 页面整体长宽均为 1。通过类似 css 的 left bottom width height 来确定区域。

scissor: { left: 0.75, bottom: 0, width: 0.25, height: 1 }
textureOptions?: TextureOptions

模型贴图的配置参数

可以动态对配置在 work 数据中的模型贴图在 runtime 做 url 调整。 平衡加载时间和图片质量

户型图模式下的特定参数

videoInstance?: HTMLVideoElement

外挂视频对象。

当点位中有视频元素,则会使用。如果不传入也会外部新建, 加入传入的原因是,视频自动播放在不同浏览器或者 webview 中有不同的特性。 给予更多外部操作的空间。

VR眼镜模式下的特定参数

webgl2?: boolean

是否使用webgl2渲染执行环境, 默认值 false

XR眼镜模式下的特定参数

Methods

  • 请求代理

    Parameters

    • url: string

      发起的请求

    Returns string | Promise<string>

    返回的请求