JSAPI Three API Reference
    正在准备搜索索引...

    类 BaiduLaneVectorTileProvider

    百度矢量瓦片提供者,用于加载和渲染百度地图的矢量瓦片数据。 支持在线和离线两种模式,可以处理多种投影方式。

    主要功能:

    • 支持百度地图在线矢量瓦片加载
    • 支持离线矢量瓦片加载
    • 支持多种投影方式(Web墨卡托、百度墨卡托、地理坐标)
    • 支持矢量数据的样式配置
    • 支持POI标签的显示

    需要使用百度地图的AK,请在BaiduMapConfig中设置。

    // 创建在线矢量瓦片提供者
    const provider = new BaiduLaneVectorTileProvider({
    ak: 'your_ak_here',
    displayOptions: {
    // 显示配置
    }
    });

    // 创建DuGIS离线矢量瓦片提供者
    const offlineProvider = new BaiduLaneVectorTileProvider({
    isOffline: true,
    url: 'http://dugis-offline-server',
    });

    // 手机端pb_tile接口,瓦片用blockid传参,url里写{blockid}占位符即可
    const pbTileProvider = new BaiduLaneVectorTileProvider({
    url: 'http://apitest2.map.baidu.com/api_gcjmap/v1/pb_tile?c={blockid}&from=android',
    });

    层级 (查看层级一览)

    索引

    构造函数

    • 参数

      • options: {
            ak?: string;
            displayOptions?: {
                base?: boolean;
                building?: boolean;
                flat?: boolean;
                lineCap?: "round" | "butt";
                link?: boolean;
                poi?: boolean;
            };
            isOffline?: boolean;
            placeholderColor?: Color;
            projection?: string;
            staticUrl?: string;
            styleId?: string;
            styleJson?: string;
            theme?: "day"
            | "night";
            tileFormat?: "raw" | "pbTile";
            url?: string;
        } = {}

        配置选项

        • 可选ak?: string

          百度地图AK,在线模式必填

        • 可选displayOptions?: {
              base?: boolean;
              building?: boolean;
              flat?: boolean;
              lineCap?: "round" | "butt";
              link?: boolean;
              poi?: boolean;
          }

          显示配置选项

          • 可选base?: boolean

            是否显示基础面

          • 可选building?: boolean

            是否显示3D建筑物

          • 可选flat?: boolean

            是否显示成压平模式

          • 可选lineCap?: "round" | "butt"

            道路线端点样式

          • 可选link?: boolean

            是否显示道路

          • 可选poi?: boolean

            是否显示POI

        • 可选isOffline?: boolean

          是否为离线dugis模式

        • 可选placeholderColor?: Color

          占位符颜色(瓦片加载中的底板色)

        • 可选projection?: string

          离线模式下的投影方式,默认为'mapvthree.PROJECTION_WEB_MERCATOR'

        • 可选staticUrl?: string

          离线模式下的静态资源服务器地址

        • 可选styleId?: string

          百度地图个性化地图,设置样式StyleId

        • 可选styleJson?: string

          百度地图个性化地图,设置样式StyleJson

        • 可选theme?: "day" | "night"

          日夜主题

        • 可选tileFormat?: "raw" | "pbTile"

          瓦片数据格式,pbTile为手机端pb_tile接口的格式 (外层多一层壳)。默认按url里有没有{blockid}占位符自动判断

        • 可选url?: string

          离线模式下的瓦片dugis服务器地址,支持{z}/{x}/{y}/{reverseY}/{blockid}占位符

      返回 BaiduLaneVectorTileProvider

    属性

    isBaiduProvider: true

    是否为百度地图提供者

    isBaseImageryTileProvider: true

    是否为基础影像瓦片提供者

    name: "BaiduLaneVectorTileProvider" = 'BaiduLaneVectorTileProvider'

    瓦片提供者名称

    supportsMask: true

    是否支持掩膜功能

    方法

    • 加载并解析 AOI XML 模板,提取九宫格参数

      参数

      • templeteId: string

        XML 模板 ID(如 'MapRes/3Daoi_lv.xml')

      返回 Promise<any>

      解析后的模板参数 {fillArea, windowSize, bkImage, fontSize, textColor}

    • 将 #AARRGGBB 格式的 ARGB 颜色转为 rgba() 字符串

      参数

      • argbHex: any

      返回 string

    • 解析 XML 模板文本,提取九宫格和样式信息

      参数

      • xmlText: any

      返回 {
          bkImage: any;
          fillArea: number[];
          fontSize: number;
          scaleX: number[];
          scaleY: number[];
          textColor: any;
          windowSize: number[];
      }

    • 预加载 POI 列表中所有 AOI 的 XML 模板

      参数

      • poiList: any

      返回 Promise<void>

    • 参数

      • tile: any
      • surfaceTile: any

      返回 Promise<any>

      Array[object, groundObject]:包含对象的完整transform object: 在3D场景中渲染的对象 groundObject: 在地面上渲染的对象

      请求瓦片数据

    • 请求瓦片数据 子类需要重写doRequestImageTileData方法

      参数

      • tile: any

        瓦片对象

      • surfaceTile: any

        表面瓦片对象

      返回 Promise<Texture>

      瓦片纹理

    • 瓦片SSE状态变化时的回调

      SSE(Screen Space Error)用于控制瓦片的详细程度:

      • MEET: 满足SSE条件,可以显示详细内容(POI标签)
      • OVER: 超过SSE阈值,应该隐藏详细内容

      核心逻辑:

      • 当从 OVER 变为 MEET 时,添加POI标签
      • 当从 MEET 变为 OVER 时,移除POI标签

      参数

      • surfaceTile: any

        表面瓦片对象

      • engine: Engine

        引擎实例

      返回 void

    • 隐藏全部 POI 标注(与 addAllSymbols 配对)。

      返回 void

    • 重置 TileProvider 以适配新的投影,清空所有缓存和状态后重新初始化

      参数

      • newTargetProjection: Projection

        新的目标投影

      返回 void

    • 设置地图样式,通过 https://lbsyun.baidu.com/index.php?title=open/custom 获取个性化样式配置

      参数

      • config: { featureStyles?: any[]; styleId: string; styleJson: string; styleUrl?: string }

        样式配置

        • 可选featureStyles?: any[]

          直接传入featureStyles

        • styleId: string

          样式ID

        • styleJson: string

          样式JSON

        • 可选styleUrl?: string

          样式文件地址,直接请求获取featureStyles

      返回 Promise<void>

    访问器

    • get addDebugLabel(): boolean

      获取是否绘制调试标签

      返回 boolean

    • set addDebugLabel(addDebugLabel: boolean): void

      设置是否绘制调试标签

      参数

      • addDebugLabel: boolean

        是否绘制调试标签

      返回 void

    • get colorTint(): number[]

      获取色彩调整值

      返回 number[]

    • set colorTint(colorTint: number[]): void

      设置色彩调整值

      参数

      • colorTint: number[]

        色彩调整值,RGB分量

      返回 void

    • get maxLevel(): number

      获取瓦片最大展示层级

      返回 number

    • set maxLevel(value: number): void

      设置瓦片最大展示层级

      参数

      • value: number

        瓦片最大展示层级

      返回 void

    • get minLevel(): number

      获取瓦片最小展示层级

      返回 number

    • set minLevel(value: number): void

      设置瓦片最小展示层级

      参数

      • value: number

        瓦片最小展示层级

      返回 void

    • get opacity(): number

      获取不透明度

      返回 number

    • set opacity(opacity: number): void

      设置不透明度

      参数

      • opacity: number

        不透明度,取值范围0-1

      返回 void

    • get placeholderColor(): Color

      返回 Color

    • set placeholderColor(value: Color): void

      占位符颜色(瓦片加载完成前显示的背景色)

      参数

      • value: Color

      返回 void

    • get randomColorTint(): boolean

      获取是否使用随机色彩调整

      返回 boolean

    • set randomColorTint(randomColorTint: boolean): void

      设置是否使用随机色彩调整

      参数

      • randomColorTint: boolean

        是否使用随机色彩调整

      返回 void

    • get sourceProjection(): any

      获取源投影

      返回 any

    • get targetProjection(): any

      获取目标投影

      返回 any

    • set targetProjection(value: any): void

      设置目标投影

      参数

      • value: any

      返回 void

    • get visible(): boolean

      是否可见

      返回 boolean

    • set visible(v: boolean): void

      是否可见

      参数

      • v: boolean

      返回 void