jsdw_ios/Pods/AMap3DMap/MAMapKit.framework/Headers/MATileOverlay.h

98 lines
4.5 KiB
Objective-C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// MATileOverlay.h
// MapKit_static
//
// Created by Li Fei on 11/22/13.
// Copyright © 2016 Amap. All rights reserved.
//
#import "MAConfig.h"
#if MA_INCLUDE_OVERLAY_TILE
#import "MAOverlay.h"
#import "MABaseOverlay.h"
///该类是覆盖在球面墨卡托投影上的图片tiles的数据源
///This class is the data source for image tiles covering the spherical Mercator projection
@interface MATileOverlay : MABaseOverlay
///瓦片大小默认是256x256, 最小支持64*64
///Tile size, default is 256x256, minimum support is 64*64
@property (nonatomic, assign) CGSize tileSize;
///tileOverlay的可见最小Zoom值
///The minimum visible Zoom value for tileOverlay
@property NSInteger minimumZ __attribute((deprecated("Deprecated, calling has no effect. since 9.6.0")));
///tileOverlay的可见最大Zoom值
///The maximum visible Zoom value of tileOverlay
@property NSInteger maximumZ __attribute((deprecated("Deprecated, calling has no effect. since 9.6.0")));
///同initWithURLTemplate:中的URLTemplate
///Same as the URLTemplate in initWithURLTemplate:
@property (readonly) NSString *URLTemplate;
///暂未开放
///not yet open
@property (nonatomic) BOOL canReplaceMapContent;
///是否停止不在显示区域内的瓦片下载默认NO. since 5.3.0
///whether to stop downloading tiles outside the display area, default is NO. since 5.3.0
@property (nonatomic, assign) BOOL disableOffScreenTileLoading;
/**
* @brief 根据指定的URLTemplate生成tileOverlay
* Generate tileOverlay based on the specified URLTemplate
* @param URLTemplate URLTemplate是一个包含"{x}","{y}","{z}","{scale}"的字符串,"{x}","{y}","{z}","{scale}"会被tile path的值所替换并生成用来加载tile图片数据的URL 。例如 http://server/path?x={x}&y={y}&z={z}&scale={scale}
* URLTemplate is a string containing "{x}","{y}","{z}","{scale}", where "{x}","{y}","{z}","{scale}" will be replaced by the tile path value to generate the URL for loading tile image data. For example, http://server/path?x={x}&y={y}&z={z}&scale={scale}
* @return 以指定的URLTemplate字符串生成tileOverlay
* Generate tileOverlay using the specified URLTemplate string
*/
- (id)initWithURLTemplate:(NSString *)URLTemplate;
@end
///MATileOverlayPath
struct MATileOverlayPath{
NSInteger x; ///< x坐标 x-coordinate
NSInteger y; ///< y坐标 y-coordinate
NSInteger z; ///< 缩放级别 zoom level
CGFloat contentScaleFactor; ///< 屏幕的scale factor screen's scale factor
NSInteger index; ///< 对应的下载url corresponding download URL
NSInteger requestId; ///<资源下载唯一标识,用于记录 Unique identifier for resource download, used for recording
};
typedef struct MATileOverlayPath MATileOverlayPath;
///子类可覆盖CustomLoading中的方法来自定义加载MATileOverlay的行为。
///Subclasses can override methods in CustomLoading to customize the behavior of loading MATileOverlay
@interface MATileOverlay (CustomLoading)
/**
* @brief 以tile path生成URL。用于加载tile,此方法默认填充URLTemplate
* Generate URL from tile path. Used to load tiles, this method defaults to filling URLTemplate
* @param path tile path
* @return 以tile path生成tileOverlay
* Generate tileOverlay from tile path
*/
- (NSURL *)URLForTilePath:(MATileOverlayPath)path;
/**
* @brief 加载被请求的tile,并以tile数据或加载tile失败error访问回调block;默认实现为首先用URLForTilePath去获取URL,然后用异步NSURLConnection加载tile
* Load the requested tile and access the callback block with tile data or a tile loading failure error; the default implementation first uses URLForTilePath to obtain the URL, then loads the tile asynchronously with NSURLConnection.
* @param path tile path
* @param result 用来传入tile数据或加载tile失败的error访问的回调block
* A callback block used to pass in tile data or access errors when tile loading fails
*/
- (void)loadTileAtPath:(MATileOverlayPath)path result:(void (^)(NSData *tileData, NSError *error))result;
/**
* @brief 取消请求瓦片,当地图显示区域发生变化时,会取消显示区域外的瓦片的下载, 当disableOffScreenTileLoading=YES时会被调用。since 5.3.0
* Cancel tile requests, when the map display area changes, it will cancel the download of tiles outside the display area, and it will be called when disableOffScreenTileLoading=YES. since 5.3.0
* @param path tile path
*/
- (void)cancelLoadOfTileAtPath:(MATileOverlayPath)path;
@end
#endif