iOS高德地图SDK(3D) V10.0.600
Loading...
Searching...
No Matches
MAOverlayRenderer Class Reference

该类是地图覆盖物Renderer的基类, 提供绘制overlay的接口但并无实际的实现(render相关方法只能在重写后的glRender方法中使用) More...

#import <MAOverlayRenderer.h>

Inheritance diagram for MAOverlayRenderer:
MAOverlayPathRenderer MACircleRenderer MAPolygonRenderer MAPolylineRenderer

Instance Methods

(GLuint strokeTextureID) - __attribute
 笔触纹理id, 修改纹理id参考, 如果strokeImage未指定、尚未加载或加载失败返回0. 注意:仅使用gles环境
 
(instancetype) - initWithOverlay:
 初始化并返回一个Overlay Renderer
 
(float *) - getViewMatrix
 获取当前地图view矩阵,数组长度为16,无需外界释放. 需要添加至地图后,才能获取有效矩阵数据,否则返回NULL
 
(float *) - getProjectionMatrix
 获取当前地图projection矩阵,数组长度为16,无需外界释放. 需要添加至地图后,才能获取有效矩阵数据,否则返回NULL
 
(MAMapPoint- getOffsetPoint
 获取当前地图中心点偏移,用以把地图坐标转换为gl坐标。需要添加到地图获取才有效。(since 5.1.0)
 
(id< MTLRenderCommandEncoder >) - getCommandEncoder
 获取Metal渲染MTLRenderCommandEncoder对象。注意:打开地图MetalEnable时有效,否则为nil(since 7.9.0)
 
(CGFloat) - getMapZoomLevel
 获取当前地图缩放级别,需要添加到地图获取才有效。(since 5.1.0)
 
(CGPoint) - glPointForMapPoint:
 将MAMapPoint转换为opengles可以直接使用的坐标
 
(CGPoint *) - glPointsForMapPoints:count:
 批量将MAMapPoint转换为opengles可以直接使用的坐标
 
(CGFloat) - glWidthForWindowWidth:
 将屏幕尺寸转换为OpenGLES尺寸
 
(void) - glRender
 绘制函数(子类需要重载来实现)
 
(GLuint) - loadTexture:
 加载纹理图片. 注意:仅使用gles环境(since 5.1.0)
 
(void) - deleteTexture:
 删除纹理. 注意:仅使用gles环境(since 5.1.0)
 
(void) - setNeedsUpdate
 当关联overlay对象有更新时,调用此接口刷新. since 5.0.0
 

Protected Attributes

GLuint _strokeTextureID
 
CGSize _strokeTextureSize
 
BOOL _needsUpdate
 
BOOL _needsLoadStrokeTexture
 

Properties

id< MAOverlayRenderDelegate > rendererDelegate
 由地图添加时,不要手动设置。如果不是使用mapview进行添加,则需要手动设置。(since 5.1.0)
 
id< MAOverlayoverlay
 关联的overlay对象
 
UIImage * strokeImage
 用于生成笔触纹理id的图片(支持非PowerOfTwo图片; 如果您需要减轻绘制产生的锯齿,您可以参考AMap.bundle中的traffic_texture_blue.png的方式,在image两边增加部分透明像素.)。(since 5.3.0)
 
CGFloat alpha
 透明度[0,1],默认为1. 使用MAOverlayRenderer类提供的渲染接口会自动应用此属性。(since 5.1.0)
 
CGFloat contentScale
 overlay渲染的scale。(since 5.1.0)
 

Detailed Description

该类是地图覆盖物Renderer的基类, 提供绘制overlay的接口但并无实际的实现(render相关方法只能在重写后的glRender方法中使用)

Method Documentation

◆ __attribute

- (GLuint strokeTextureID) __attribute ((deprecated("已废弃,since 7.9.0"))) 

笔触纹理id, 修改纹理id参考, 如果strokeImage未指定、尚未加载或加载失败返回0. 注意:仅使用gles环境

◆ deleteTexture:

- (void) deleteTexture: ((deprecated("已废弃,since 7.9.0")))  __attribute

删除纹理. 注意:仅使用gles环境(since 5.1.0)

Parameters
textureId纹理ID

◆ getCommandEncoder

- (id< MTLRenderCommandEncoder >) getCommandEncoder

获取Metal渲染MTLRenderCommandEncoder对象。注意:打开地图MetalEnable时有效,否则为nil(since 7.9.0)

Returns
偏移

◆ getMapZoomLevel

- (CGFloat) getMapZoomLevel

获取当前地图缩放级别,需要添加到地图获取才有效。(since 5.1.0)

Returns
缩放级别

◆ getOffsetPoint

- (MAMapPoint) getOffsetPoint

获取当前地图中心点偏移,用以把地图坐标转换为gl坐标。需要添加到地图获取才有效。(since 5.1.0)

Returns
偏移

◆ getProjectionMatrix

- (float *) getProjectionMatrix

获取当前地图projection矩阵,数组长度为16,无需外界释放. 需要添加至地图后,才能获取有效矩阵数据,否则返回NULL

Returns
矩阵数组

◆ getViewMatrix

- (float *) getViewMatrix

获取当前地图view矩阵,数组长度为16,无需外界释放. 需要添加至地图后,才能获取有效矩阵数据,否则返回NULL

Returns
矩阵数组

◆ glPointForMapPoint:

- (CGPoint) glPointForMapPoint: (MAMapPoint mapPoint

将MAMapPoint转换为opengles可以直接使用的坐标

Parameters
mapPointMAMapPoint坐标
Returns
直接支持的坐标

◆ glPointsForMapPoints:count:

- (CGPoint *) glPointsForMapPoints: (MAMapPoint *)  mapPoints
count: (NSUInteger)  count 

批量将MAMapPoint转换为opengles可以直接使用的坐标

Parameters
mapPointsMAMapPoint坐标数据指针
count个数
Returns
直接支持的坐标数据指针(需要调用者手动释放)

◆ glRender

- (void) glRender

绘制函数(子类需要重载来实现)

◆ glWidthForWindowWidth:

- (CGFloat) glWidthForWindowWidth: (CGFloat)  windowWidth

将屏幕尺寸转换为OpenGLES尺寸

Parameters
windowWidth屏幕尺寸
Returns
OpenGLES尺寸

◆ initWithOverlay:

- (instancetype) initWithOverlay: (id< MAOverlay >)  overlay

初始化并返回一个Overlay Renderer

Parameters
overlay关联的overlay对象
Returns
初始化成功则返回overlay view,否则返回nil

◆ loadTexture:

- (GLuint) loadTexture: ((deprecated("已废弃,since 7.9.0")))  __attribute

加载纹理图片. 注意:仅使用gles环境(since 5.1.0)

Parameters
textureImage纹理图片(需满足:长宽相等,且宽度值为2的次幂)
Returns
openGL纹理ID, 若纹理加载失败返回0

◆ setNeedsUpdate

- (void) setNeedsUpdate

当关联overlay对象有更新时,调用此接口刷新. since 5.0.0

Member Data Documentation

◆ _needsLoadStrokeTexture

- (BOOL) _needsLoadStrokeTexture
protected

◆ _needsUpdate

- (BOOL) _needsUpdate
protected

◆ _strokeTextureID

- (GLuint) _strokeTextureID
protected

◆ _strokeTextureSize

- (CGSize) _strokeTextureSize
protected

Property Documentation

◆ alpha

- (CGFloat) alpha
readwritenonatomicassign

透明度[0,1],默认为1. 使用MAOverlayRenderer类提供的渲染接口会自动应用此属性。(since 5.1.0)

◆ contentScale

- (CGFloat) contentScale
readnonatomicassign

overlay渲染的scale。(since 5.1.0)

◆ overlay

- (id<MAOverlay>) overlay
readnonatomicretain

关联的overlay对象

◆ rendererDelegate

- (id<MAOverlayRenderDelegate>) rendererDelegate
readwritenonatomicweak

由地图添加时,不要手动设置。如果不是使用mapview进行添加,则需要手动设置。(since 5.1.0)

◆ strokeImage

- (UIImage*) strokeImage
readwritenonatomicstrong

用于生成笔触纹理id的图片(支持非PowerOfTwo图片; 如果您需要减轻绘制产生的锯齿,您可以参考AMap.bundle中的traffic_texture_blue.png的方式,在image两边增加部分透明像素.)。(since 5.3.0)


The documentation for this class was generated from the following file:
© 2017 高德信息技术有限公司 版权所有,保留所有权利。