CustomTilingScheme

new Cesium.CustomTilingScheme(options)

引用CustomProjection的几何图形自定义瓦片平铺方案
Name Type Description
options Object optional 构造函数的参数对象,包含的属性如下:
Name Type Default Description
ellipsoid Ellipsoid Ellipsoid.WGS84 optional 表面被瓦片平铺的参考椭球体,默认为WGS84椭球体
wkt String optional 投影坐标系的通识文本(Well Known Text)
wkid String optional 投影坐标系的通识编码(Well Known ID)
tileInfo Object optional 瓦片的属性信息,地图服务可以不提供该参数,该参数有固定的格式要求,详见下方示例
axisDirection Object optional 瓦片组织方向(裁图方向)。axisDirection.x=1代表x轴由左往右为正,axisDirection.x=-1代表x轴由右往左为正;axisDirection.y=1代表x轴由下往上为正,axisDirection.y=-1代表x轴由上往下为正。例如wmts的axisDirection为{x:1,y:-1}。
rectangleSouthwest Cartesian2 optional 投影矩形范围的西南角
rectangleNortheast Cartesian2 optional 投影矩形范围的东北角
proj4 Object optional 投影变换对象
Example:
// 瓦片的属性信息
const tileInfo = {
  dpi: 0,
  format: 'PNG',
  size: [256, 256], // 瓦片宽高的像素大小
  origin: {
    coordinates: [471388.6716802692, 3471062.732487645], // 裁图原点
    type: 'Point', // 裁图原点类型
  },
  lods: [
    {
      level: 0,
      resolution: 661.4583333333334,
      scale: 2500000,
    },
    {
      level: 1,
      resolution: 330.7291666666667,
      scale: 1250000,
    },
    {
      level: 2,
      resolution: 165.36458333333334,
      scale: 625000,
    },
    {
      level: 3,
      resolution: 82.68229166666667,
      scale: 312500,
    },
    {
      level: 4,
      resolution: 41.341145833333336,
      scale: 156250,
    },
    {
      level: 5,
      resolution: 20.670572916666668,
      scale: 78125,
    }
  ]
}

// 瓦片的四至范围
const extent = {
  xmin: 471388.6716802692,
  ymin: 3316805.3361792937,
  xmax: 603520.9945763454,
  ymax: 3471062.732487645,
}

// 创建自定义瓦片切分规则
const tilingScheme = new Cesium.CustomTilingScheme({
  ellipsoid: Cesium.Ellipsoid.WGS84,
  wkid: 4547,
  wkt: '+proj=tmerc +lat_0=0 +lon_0=114 +k=1 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m +no_defs', // https://epsg.io/4547
  tileInfo, // 瓦片的属性信息,地图服务可以不提供该参数
  rectangleSouthwest: new Cesium.Cartesian2(extent.xmin, extent.ymin), // 投影矩形范围的西南角
  rectangleNortheast: new Cesium.Cartesian2(extent.xmax, extent.ymax), // 投影矩形范围的东北角
  proj4, // 投影变换对象
})
See:

Members

获取此瓦片平铺方案所使用的参考椭球体
获取此瓦片平铺方案所对应的投影方式
获取此瓦片平铺方案所覆盖的矩形范围
获取此瓦片平铺方案所对应的投影方式的wkid
获取此瓦片平铺方案所对应的投影方式的wkt

Methods

getNumberOfXTilesAtLevel(level)Number

获取指定详细级别X方向上的瓦片总数
Name Type Description
level Number 详细级别
Returns:
给定level详细级别中X方向的瓦片数量

getNumberOfYTilesAtLevel(level)Number

获取指定详细级别Y方向上的瓦片总数
Name Type Description
level Number 详细级别
Returns:
给定level详细级别中Y方向的瓦片数量

positionToTileXY(position, level, result)Cartesian2

计算一个坐标点在某一详细级别中位于某一瓦片的X、Y坐标
Name Type Description
position Cartographic 坐标点
level Number 详细级别
result Cartesian2 optional 保存结果的Cartesian2对象,若未定义则创建新的Cartesian2对象并返回
Returns:
返回指定的'result',如果'result'未定义,则为包含矩形的Cartesian2新对象

rectangleToNativeRectangle(rectangle, result)Rectangle

将以地理坐标经纬度弧度指定的矩形转换到此瓦片平铺方案的投影坐标系
Name Type Description
rectangle Rectangle 要进行投影转换的矩形范围
result Rectangle optional 保存结果的Rectangle对象,若未定义则创建新的Rectangle对象并返回
Returns:
返回指定的'result',如果'result'未定义,则为包含矩形的Rectangle新对象

tileXYToNativeRectangle(x, y, level, result)Rectangle

将瓦片平铺的X、Y坐标和详细级别转换为以此瓦片平铺方案的投影坐标系表示的矩形
Name Type Description
x Number 瓦片在X方向上的坐标
y Number 瓦片在Y方向上的坐标
level Number 详细级别
result Rectangle optional 保存结果的Rectangle对象,若未定义则创建新的Rectangle对象并返回
Returns:
返回指定的'result',如果'result'未定义,则为包含矩形的Rectangle新对象

tileXYToRectangle(x, y, level, result)Rectangle

将瓦片平铺的X、Y坐标和高度转换为以弧度表示的矩形范围
Name Type Description
x Number 瓦片在X方向上的坐标
y Number 瓦片在Y方向上的坐标
level Number 详细级别
result Rectangle optional 返回指定的'result',如果'result'未定义,则为包含矩形的Rectangle新对象
Returns:
返回指定的'result',如果'result'未定义,则为包含矩形的Rectangle新对象