@three-tile/plugin
    Preparing search index...

    Class BaiduSource

    百度地图数据源

    百度使用自定义 BD-09MC 投影,瓦片坐标以地图中心为原点。 X 向右为正,Y 向上为正,负数使用 M 前缀(如 M1 表示 -1)。 需要将标准 Google XYZ 坐标转换为百度瓦片坐标。

    Hierarchy

    • TileSource
      • BaiduSource

    Indexable

    • [key: string]: unknown

      扩展属性

    Index

    Constructors

    Properties

    _projectionBounds: BoundsType

    投影后的数据范围

    attribution: string = "Baidu Map © Baidu [GS(2021)6026号]"

    版权声明:Baidu Map © Baidu [GS(2021)6026号]

    bounds?: BoundsType

    数据范围 [最小经度, 最小纬度, 最大经度, 最大纬度]

    dataType: string

    数据类型,默认为 "image"

    isTMS: boolean

    是否使用 TMS 坐标系,默认为 false(使用 XYZ)

    maxLevel: number = 18

    最大缩放级别

    minLevel: number = 3

    最小缩放级别,百度瓦片从第 3 级开始

    opacity: number

    材质透明度,默认为 1.0(不透明)

    projectionID: ProjectionType

    投影类型,默认为 "3857" 墨卡托投影

    style: Style = "pl"

    地图样式

    subdomains: string = "0123"

    子域名列表

    transparent: boolean

    材质是否透明,默认为 true

    url: string = "http://online{s}.map.bdimg.com/onlinelabel/?qt=tile&x={baiduX}&y={baiduY}&z={z}&styles={style}&scaler=1&p=1"

    瓦片服务地址,使用 {baiduX}/{baiduY} 模板变量

    Methods

    • 根据投影类型计算瓦片的边界框

      • EPSG:3857 返回 Web Mercator 米单位
      • EPSG:4326 返回经纬度

      Parameters

      • x: number

        瓦片 x 坐标

      • y: number

        瓦片 y 坐标

      • z: number

        瓦片 z 坐标

      Returns string

      边界框字符串 "minX,minY,maxX,maxY"

    • 将谷歌 XYZ 瓦片坐标转换为百度瓦片坐标 百度瓦片坐标系以地图中心为原点,X 向右为正,Y 向上为正 负数坐标使用 M 前缀(如 -1 → M1) 转换公式: baiduX = x - 2^(z-1) baiduY = 2^(z-1) - y - 1

      Parameters

      • x: number
      • y: number
      • z: number

      Returns string | undefined

    • 工厂方法:创建数据源实例

      Parameters

      • options: SourceOptions

        数据源配置项

      • Optionalextra: Record<string, unknown>

        附加属性,会合并到 options 中(同名覆盖 options)

      Returns TileSource

      数据源实例