ThreejsLayerOptions

ThreejsLayer构造函数options参数

interface ThreejsLayerOptions {
    afterRender?: (ctx: ThreejsRenderContext) => void;
    alpha?: boolean;
    animation?: boolean;
    antialias?: boolean;
    maxZoom?: number;
    minZoom?: number;
    onDestroy?: (ctx: ThreejsRenderContext) => void;
    onError?: (error: ThreejsLayerError) => void;
    onInit?: (ctx: ThreejsRenderContext) => void;
    onRender?: (ctx: ThreejsRenderContext) => void;
    opacity?: number;
    preRender?: (ctx: ThreejsRenderContext) => void;
    referCenter?: Point;
    renderStage?: "building" | "poi";
    visible?: boolean;
    zIndex?: number;
}

属性

每帧绘制后回调

传给 THREE.WebGLRenderer 的 alpha,默认值:true

是否每帧自动重绘。three 场景大多需要动画;不需要就别开 —— 地图渲染线程本来会睡,默认值:false

传给 THREE.WebGLRenderer 的 antialias。注意上下文是与底图共用的, 这个值只在 three 侧生效,实际是否多重采样由地图创建上下文时决定,默认值:false

最大显示缩放等级,默认值:21

最小显示缩放等级,默认值:3

图层销毁时回调,此时 renderer / scene 还没释放

渲染器创建失败或渲染抛错时回调

renderer / scene / camera 就绪时回调

每帧绘制回调。不提供时图层会自动执行 renderer.render(scene, camera); 提供了就完全由你决定画什么,框架不再自动渲染

透明度。本图层不消费这个值 —— three 的材质透明度请在材质上设 (material.transparent / material.opacity)默认值:1

每帧绘制前回调

图层参考中心点,决定 three 场景原点对应的地理位置。强烈建议传 —— 顶点是 float32,绝对墨卡托坐标量级 1e7 会丢精度

绘制阶段,图层绘制在该阶段之后(即叠在其上)。 不设表示默认落点:覆盖物之后、3D 楼块之前

是否显示,默认值:true

显示层级,小的先画,默认值:1