Skip to content

Maptile 影像类

创建

typescript
const maptile = await createMaptile({
    url:'/custom/{z}/{x}/{y}.png', // x,y,z顺序根据你的影像确认
    hasAlphaChannel:false, //是否透明影像
    zIndex:0, //层级
    srcCoordType:'WGS84'//影像坐标系
    minimumLevel:0, //请求显示的最小级别
    maximumLevel:15 //请求显示的最大级别
})

类型

typescript
type CreateMaptile = {
  (option: MaptileOptions, globeID?: string): Promise<Maptile>;
};

type MaptileOptions = {
  /** 【变】是否可见 true */
  show?: boolean;
  /** url 地址,或系统预设 */
  url: string | SymtemImage;
  /** 服务类型 */
  server?: 'IMG' | 'WMTS' | 'ArcGIS';
  /** 影像是否是透明的,不是的话填写false 优化内存 */
  hasAlphaChannel?: boolean;
  /** 瓦片宽度 256*/
  tileWidth?: number;
  /** 瓦片高度 256*/
  tileHeight?: number;
  /** 图层层叠顺序,越高越上面 */
  zIndex?: number;
  /** 【变】透明度 1 0-1*/
  opacity?: number;
  /** 【变】亮度 1 */
  brightness?: number;
  /** 最小瓦片级别 0 */
  minimumLevel?: number;
  /** 最大瓦片级别 */
  maximumLevel?: number;
  /** 坐标系类型 */
  srcCoordType?: 'WGS84' | 'GCJ02' | 'CGCS2000' | 'BD09' | 'EPSG4490';
  /** 南边范围(角度) -90 */
  south?: number;
  /** 西边范围(角度) -180 */
  west?: number;
  /** 东边范围(角度) 180 */
  east?: number;
  /** 北边范围(角度) 90 */
  north?: number;
  /** 是否需要身份验证 false */
  isToken?: boolean;
  /** 请求方式 headers */
  questType?: 'headers' | 'params';
  tokenKey?: string;
  token?: string;
  /** 子域名 */
  subdomains?: string[];
  /** 切片方案 */
  tilingScheme?: TilingScheme;
  /** 自定义模板替换 */
  customTags?: Record<string, (imageryProvider: ImageryProvider, x: number, y: number, level: number) => string | number>;
  /**
   *@description 补零
   *@MethodAuthor ironbull
   *@link https://cesium.com/learn/cesiumjs/ref-doc/UrlTemplateImageryProvider.html?classFilter=URl
   *@Date 2024-05-17 16:26:06
   */
  urlSchemeZeroPadding?: Record<string, string>;
  /**
   *@description 参考ceisum
   *@link https://cesium.com/learn/cesiumjs/ref-doc/WebMapTileServiceImageryProvider.html#.ConstructorOptions
   *@return void
   *@MethodAuthor ironbull
   *@Date 2024-05-17 18:01:32
   */
  wmts?: {
    /** 图层 */
    layer: string;
    /** 影像MIME格式 */
    format?: string;
    /** 样式 */
    style: string;
    /** 图层标识 */
    tileMatrixSetID: string;
    /** 分级数组 `['0','1','2']`*/
    tileMatrixLabels?: Array<string>;
    clock?: Clock;
    times?: TimeIntervalCollection;
    dimensions?: Record<string, any>;
    ellipsoid?: Ellipsoid;
  };

判定

isMaptile()

typescript
function isMaptile(tar: any): tar is Maptile

属性

readonly id: string 唯一标识

show: boolean 是否可见 true

opacity: number 透明度

brightness: number 亮度

readonly url: string url地址

方法

static fromUrl 创建加载影像

typescript
fromUrl(option: MaptileOptions, id?: string): Promise<Maptile>

focus 聚焦

  • duration 过渡时间 单位秒
typescript
focus(duration?: number): void

destroy 销毁

typescript
destroy(): boolean