public class CameraWindowRenderer
extends java.lang.Object
限定符和类型 | 类和说明 |
---|---|
static interface |
CameraWindowRenderer.RayTestStatusListener
射线检测监听事件
在renderer启用后,
若
|
static class |
CameraWindowRenderer.RenderType
渲染类型
|
static class |
CameraWindowRenderer.TaskManager
CameraWindowRenderer 的刷新管理器
用一个单例,来管理所有CameraWindowRenderer的刷新
这样做的好处是,当存在多个CameraWindowRenderer时,统一刷新,避免存在多个Timer刷新造成的卡顿。 |
构造器和说明 |
---|
CameraWindowRenderer(EffectView arView,
DynamicView dynamicView)
构造函数
|
CameraWindowRenderer(EffectView arView,
Map map,
CameraWindowRenderer.RenderType renderType)
构造函数
|
限定符和类型 | 方法和说明 |
---|---|
void |
clipBounds(Rect rect)
根据边界范围裁剪可视域检测范围
使用此方法可将可视域的检测范围始终限制在一个矩形区域
|
void |
dispose()
销毁
释放native层的内存
|
DynamicPolygon |
getDynamicResult()
获取与可视域关联的动态对象
|
GeoRegion |
getGeoRegion()
获取多边形对象
|
float |
getMaxDistance()
获取渲染的最远距离
|
float |
getPlaneHeight()
获取地面高度,默认-1.3米
|
java.util.List<android.graphics.Point> |
getRangePixelVertices()
获取视图view的检测范围像素顶点坐标集
|
CameraWindowRenderer.RenderType |
getRenderType()
获取当前的渲染类型
|
boolean |
isEnabled()
获取启用状态
|
boolean |
isVisible()
获取对象的显示状态
|
void |
refresh()
刷新
|
void |
refresh(long ms)
刷新
|
void |
setDynamicPolygon(DynamicPolygon dynamicPolygon)
设置与可视域关联的动态对象
|
void |
setEnabled(boolean enabled)
设置启用状态
|
void |
setMaxDistance(float maxDistance)
设置渲染的最远距离,小于或等于远裁剪平面距离,默认值为5
|
void |
setPlaneHeight(float planeHeight)
设置地面高度
|
void |
setRangePixelVertices(java.util.List<android.graphics.Point> vertices)
设置视图view的检测范围像素顶点集(单位:像素px)
须有序的首尾相连的点集构成
|
void |
setRayTestStatusListener(CameraWindowRenderer.RayTestStatusListener rayTestStatusListener)
设置射线检测的监听事件
|
void |
setVisiblity(boolean status)
设置动态对象的显示状态,true正常显示,false隐藏
|
boolean |
updateVertices()
更新可视域顶点
仅更新可视域碰撞检测的顶点和动态对象形状,不会刷新动态层
|
public CameraWindowRenderer(EffectView arView, DynamicView dynamicView)
arView
- dynamicView
- public CameraWindowRenderer(EffectView arView, Map map, CameraWindowRenderer.RenderType renderType)
arView
- map
- renderType
- 渲染类型CameraWindowRenderer.RenderType
public float getPlaneHeight()
public void setPlaneHeight(float planeHeight)
planeHeight
- public java.util.List<android.graphics.Point> getRangePixelVertices()
public void setRangePixelVertices(java.util.List<android.graphics.Point> vertices)
vertices
- public float getMaxDistance()
public void setMaxDistance(float maxDistance)
maxDistance
- public boolean isEnabled()
public void setEnabled(boolean enabled)
enabled
- public DynamicPolygon getDynamicResult()
public void refresh(long ms)
ms
- 刷新的间隔时间public void refresh()
public void setVisiblity(boolean status)
status
- public boolean isVisible()
public void setDynamicPolygon(DynamicPolygon dynamicPolygon)
dynamicPolygon
- public boolean updateVertices()
仅更新可视域碰撞检测的顶点和动态对象形状,不会刷新动态层
public GeoRegion getGeoRegion()
public void clipBounds(Rect rect)
使用此方法可将可视域的检测范围始终限制在一个矩形区域
rect
- 边界范围public CameraWindowRenderer.RenderType getRenderType()
public void dispose()
释放native层的内存
public void setRayTestStatusListener(CameraWindowRenderer.RayTestStatusListener rayTestStatusListener)
rayTestStatusListener
- 监听事件