com.tencent.map.sdk.utilities.visualization.glmodel

## 类 GLModelOverlayProvider

- java.lang.Object
- - com.tencent.map.sdk.utilities.visualization.BaseOverlayProvider
  - - com.tencent.map.sdk.utilities.visualization.glmodel.GLModelOverlayProvider

- 所有已实现的接口:
    VectorOverlayProvider

      public final class GLModelOverlayProvider
      extends BaseOverlayProvider

  All rights Reserved, Designed By lbs.qq.com

- - ### 嵌套类概要

    嵌套类
    限定符和类型 | 类和说明
    --- | ---
    `static class` | `GLModelOverlayProvider.AnimationType`
    `static class` | `GLModelOverlayProvider.CoordType`

  - ### 字段概要

    - ### 从类继承的字段 com.tencent.map.sdk.utilities.visualization.BaseOverlayProvider

      `mClickEnabled, mDisplayLevel, mMaxZoom, mMinZoom, mOpacity, mVisibility, mZIndex, onVectorOverlayClickListener, onVectorOverlayLoadlistener`

  - ### 构造器概要

    构造器
    构造器和说明
    `GLModelOverlayProvider(java.lang.String modelFilePath, LatLng position)` 构造模型信息

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `GLModelOverlayProvider` | `animateType(GLModelOverlayProvider.AnimationType animate)` 设置动画类型(None(无动画)或FlattenRise(拔起拍平动画))
    `GLModelOverlayProvider` | `coordType(GLModelOverlayProvider.CoordType type)` 模型的坐标类型，影响 Bounds 的取值
    `GLModelOverlayProvider` | `displayLevel(int displayLevel)` 设置修改显示Level，用于控制Overlay与POI的显示层级关系。
    `GLModelOverlayProvider.AnimationType` | `getAnimationType()`
    `GLModelOverlayProvider.CoordType` | `getCoordType()` 获取模型的坐标类型
    `int` | `getDisplayLevel()` 图层展示级别
    `float` | `getExposure()`
    `LatLngBounds` | `getLatLngBounds()` 获取模型的坐标范围边界
    `int` | `getMaxZoom()` 获得最大可显示级别
    `int` | `getMinZoom()` 获得最小可显示级别
    `java.lang.String` | `getModelFilePath()` 获取模型文件的路径
    `float` | `getOpacity()` 获得整体透明度
    `int` | `getPixelHeight()`
    `int` | `getPixelWidth()`
    `LatLng` | `getPosition()` 获取模型的原点经纬度坐标
    `float` | `getRotationX()` 获取模型绕x轴的旋转角度
    `float` | `getRotationY()` 获取模型绕y轴的旋转角度
    `float` | `getRotationZ()` 获取模型绕z轴的旋转角度
    `double` | `getScale()` 获取模型的缩放比例
    `IAnimatorModel.IAnimatorEndListener` | `getTransAnimatorEndListener()`
    `boolean` | `getUnlit()`
    `int` | `getZIndex()` zIndex
    `boolean` | `isBuildingHidden()`
    `boolean` | `isClickEnabled()`
    `boolean` | `isVisibility()` 获得显隐状态
    `GLModelOverlayProvider` | `latLngBounds(java.util.List<LatLng> latLngBounds)` 设置模型的坐标范围边界
    `GLModelOverlayProvider` | `modelFilePath(java.lang.String modelFilePath)` 设置模型文件的路径
    `GLModelOverlayProvider` | `opacity(float opacity)` 设置透明度
    `GLModelOverlayProvider` | `pixelBounds(int width, int height)` 设置模型的像素范围边界 (只在CoordType为PixelType时生效, 基于position为中心点的屏幕像素范围)
    `GLModelOverlayProvider` | `position(LatLng position)` 设置模型的原点经纬度坐标
    `GLModelOverlayProvider` | `rotationX(float rotationX)` 设置模型绕x轴的旋转角度
    `GLModelOverlayProvider` | `rotationY(float rotationY)` 设置模型绕y轴的旋转角度
    `GLModelOverlayProvider` | `rotationZ(float rotationZ)` 设置模型绕z轴的旋转角度
    `GLModelOverlayProvider` | `scale(double scale)` 设置模型的缩放比例
    `GLModelOverlayProvider` | `setBuildingHidden(boolean hidden)` 设置拍平LatLngBounds范围内的地图3D建筑物, 默认为true
    `GLModelOverlayProvider` | `setClickEnable(boolean enable)`
    `GLModelOverlayProvider` | `setExposure(float mExposure)` 设置曝光度
    `void` | `setTransAnimatorEndListener(IAnimatorModel.IAnimatorEndListener transAnimatorEndListener)` 设置模型平移动画结束回调
    `java.lang.String` | `toString()`
    `GLModelOverlayProvider` | `unlit(boolean unlit)` 设置开启无光照模式
    `GLModelOverlayProvider` | `visibility(boolean visibility)` 是否可见
    `GLModelOverlayProvider` | `zIndex(int zIndex)` 设置z轴层级
    `GLModelOverlayProvider` | `zoomRange(int minZoom, int maxZoom)` 设置显示级别范围

    - ### 从类继承的方法 com.tencent.map.sdk.utilities.visualization.BaseOverlayProvider

      `enableClick, getOnVectorOverlayClickListener, getVectorOverlayLoadedListener, maxZoom, minZoom, setVectorOverlayClickListener, setVectorOverlayLoadedListener`

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### 构造器详细资料

    - #### GLModelOverlayProvider

          public GLModelOverlayProvider(@NonNull
                                        java.lang.String modelFilePath,
                                        @NonNull
                                        LatLng position)

      构造模型信息
      参数:
        `modelFilePath` - gltf模型文件的绝对路径，用户要保证这个文件的完整性，并在路径传入地图后，不能再修改这个文件
        `position` - 模型原点的经纬度坐标(可选海拔高度坐标)

  - ### 方法详细资料

    - #### getPixelWidth

          public int getPixelWidth()

    - #### getPixelHeight

          public int getPixelHeight()

    - #### getTransAnimatorEndListener

          public IAnimatorModel.IAnimatorEndListener getTransAnimatorEndListener()

    - #### setTransAnimatorEndListener

          public void setTransAnimatorEndListener(IAnimatorModel.IAnimatorEndListener transAnimatorEndListener)

      设置模型平移动画结束回调
      参数:
        `transAnimatorEndListener` -

    - #### getModelFilePath

          public java.lang.String getModelFilePath()

      获取模型文件的路径
      返回:

    - #### modelFilePath

          public GLModelOverlayProvider modelFilePath(@NonNull
                                                      java.lang.String modelFilePath)

      设置模型文件的路径
      参数:
        `modelFilePath` -
      返回:

    - #### getCoordType

          public GLModelOverlayProvider.CoordType getCoordType()

      获取模型的坐标类型
      返回:

    - #### coordType

          public GLModelOverlayProvider coordType(GLModelOverlayProvider.CoordType type)

      模型的坐标类型，影响 Bounds 的取值
      参数:
        `type` - 取值 `GLModelOverlayProvider.CoordType.PixelType` 或 `GLModelOverlayProvider.CoordType.GeoGraphicType`
      返回:

    - #### getPosition

          public LatLng getPosition()

      获取模型的原点经纬度坐标
      返回:

    - #### position

          public GLModelOverlayProvider position(@NonNull
                                                 LatLng position)

      设置模型的原点经纬度坐标
      参数:
        `position` -
      返回:

    - #### getScale

          public double getScale()

      获取模型的缩放比例
      返回:

    - #### scale

          public GLModelOverlayProvider scale(double scale)

      设置模型的缩放比例
      参数:
        `scale` - (单位: 米的倍数)
      返回:

    - #### getRotationX

          public float getRotationX()

      获取模型绕x轴的旋转角度
      返回:

    - #### rotationX

          public GLModelOverlayProvider rotationX(float rotationX)

      设置模型绕x轴的旋转角度
      参数:
        `rotationX` -
      返回:

    - #### getRotationY

          public float getRotationY()

      获取模型绕y轴的旋转角度
      返回:

    - #### rotationY

          public GLModelOverlayProvider rotationY(float rotationY)

      设置模型绕y轴的旋转角度
      参数:
        `rotationY` -
      返回:

    - #### getRotationZ

          public float getRotationZ()

      获取模型绕z轴的旋转角度
      返回:

    - #### rotationZ

          public GLModelOverlayProvider rotationZ(float rotationZ)

      设置模型绕z轴的旋转角度
      参数:
        `rotationZ` -
      返回:

    - #### getLatLngBounds

          public LatLngBounds getLatLngBounds()

      获取模型的坐标范围边界
      返回:

    - #### latLngBounds

          public GLModelOverlayProvider latLngBounds(@Nullable
                                                     java.util.List<LatLng> latLngBounds)

      设置模型的坐标范围边界
      参数:
        `latLngBounds` -
      返回:

    - #### pixelBounds

          public GLModelOverlayProvider pixelBounds(int width,
                                                    int height)

      设置模型的像素范围边界 (只在CoordType为PixelType时生效, 基于position为中心点的屏幕像素范围)
      参数:
        `width` - 边界宽
        `height` - 边界高
      返回:

    - #### animateType

          public GLModelOverlayProvider animateType(GLModelOverlayProvider.AnimationType animate)

      设置动画类型(None(无动画)或FlattenRise(拔起拍平动画))
      参数:
        `animate` - 默认None 无动画
      返回:

    - #### getAnimationType

          public GLModelOverlayProvider.AnimationType getAnimationType()

    - #### setExposure

          public GLModelOverlayProvider setExposure(float mExposure)

      设置曝光度
      参数:
        `mExposure` - 默认1.0
      返回:

    - #### getExposure

          public float getExposure()

    - #### unlit

          public GLModelOverlayProvider unlit(boolean unlit)

      设置开启无光照模式
      参数:
        `unlit` - 默认false
      返回:

    - #### getUnlit

          public boolean getUnlit()

    - #### zoomRange

          public GLModelOverlayProvider zoomRange(int minZoom,
                                                  int maxZoom)

      设置显示级别范围
      参数:
        `minZoom` - 取值大于等于4, 小于4时设为4
        默认为 4
        `maxZoom` - 取值小于等于22,大于22时设为22
        默认为 22
      返回:
        更新之后的Provider

    - #### getMinZoom

          public int getMinZoom()

      从接口复制的说明: `VectorOverlayProvider`
      获得最小可显示级别
      指定者:
        `getMinZoom` 在接口中 `VectorOverlayProvider`
      覆盖:
        `getMinZoom` 在类中 `BaseOverlayProvider`
      返回:
        最小可显示级别

    - #### getMaxZoom

          public int getMaxZoom()

      从接口复制的说明: `VectorOverlayProvider`
      获得最大可显示级别
      指定者:
        `getMaxZoom` 在接口中 `VectorOverlayProvider`
      覆盖:
        `getMaxZoom` 在类中 `BaseOverlayProvider`
      返回:
        最大可显示级别

    - #### getDisplayLevel

          public int getDisplayLevel()

      从接口复制的说明: `VectorOverlayProvider`
      图层展示级别
      指定者:
        `getDisplayLevel` 在接口中 `VectorOverlayProvider`
      覆盖:
        `getDisplayLevel` 在类中 `BaseOverlayProvider`
      返回:
        显示级别

    - #### displayLevel

          public GLModelOverlayProvider displayLevel(int displayLevel)

      设置修改显示Level，用于控制Overlay与POI的显示层级关系。
      指定者:
        `displayLevel` 在接口中 `VectorOverlayProvider`
      覆盖:
        `displayLevel` 在类中 `BaseOverlayProvider`
      参数:
        `displayLevel` - 默认层级为POI之下 `OverlayLevel.OverlayLevelAboveBuildings`
        相同Level内的显示层级关系通过`zIndex(int)`来控制，zIndex越大越靠上显示。 Level优先级高于zIndex displayLevel必须为如下值之一，否则不生效

        `OverlayLevel.OverlayLevelAboveBuildings`

        `OverlayLevel.OverlayLevelAboveLabels`

      返回:
        更新之后的Provider

    - #### isVisibility

          public boolean isVisibility()

      从接口复制的说明: `VectorOverlayProvider`
      获得显隐状态
      指定者:
        `isVisibility` 在接口中 `VectorOverlayProvider`
      覆盖:
        `isVisibility` 在类中 `BaseOverlayProvider`
      返回:
        显隐状态

    - #### visibility

          public GLModelOverlayProvider visibility(boolean visibility)

      是否可见
      指定者:
        `visibility` 在接口中 `VectorOverlayProvider`
      覆盖:
        `visibility` 在类中 `BaseOverlayProvider`
      参数:
        `visibility` - `true` 可见，否则不可见。(可配合AnimationType使用)
      返回:
        更新之后的Provider

    - #### getOpacity

          public float getOpacity()

      从接口复制的说明: `VectorOverlayProvider`
      获得整体透明度
      指定者:
        `getOpacity` 在接口中 `VectorOverlayProvider`
      覆盖:
        `getOpacity` 在类中 `BaseOverlayProvider`
      返回:
        透明度值 [0-1]

    - #### opacity

          public GLModelOverlayProvider opacity(float opacity)

      设置透明度
      指定者:
        `opacity` 在接口中 `VectorOverlayProvider`
      覆盖:
        `opacity` 在类中 `BaseOverlayProvider`
      参数:
        `opacity` - 透明度，取值范围[0, 1]
        默认为1。 大于1时,设为1; 小于0时, 设为0.
      返回:
        更新之后的Provider

    - #### getZIndex

          public int getZIndex()

      从接口复制的说明: `VectorOverlayProvider`
      zIndex
      指定者:
        `getZIndex` 在接口中 `VectorOverlayProvider`
      覆盖:
        `getZIndex` 在类中 `BaseOverlayProvider`
      返回:
        zIndex

    - #### zIndex

          public GLModelOverlayProvider zIndex(int zIndex)

      设置z轴层级
      指定者:
        `zIndex` 在接口中 `VectorOverlayProvider`
      覆盖:
        `zIndex` 在类中 `BaseOverlayProvider`
      参数:
        `zIndex` - z轴层级 仅限于2D图层使用 默认： 0
        设置相同显示Level下的 `displayLevel(int)`} 的堆叠顺序，相同显示level，zIndex越大越靠上显示 level优先级大于zIndex
      返回:
        更新之后的Provider

    - #### setBuildingHidden

          public GLModelOverlayProvider setBuildingHidden(boolean hidden)

      设置拍平LatLngBounds范围内的地图3D建筑物, 默认为true
      参数:
        `hidden` -
      返回:

    - #### isBuildingHidden

          public boolean isBuildingHidden()

    - #### setClickEnable

          public GLModelOverlayProvider setClickEnable(boolean enable)

    - #### isClickEnabled

          public boolean isClickEnabled()

      指定者:
        `isClickEnabled` 在接口中 `VectorOverlayProvider`
      覆盖:
        `isClickEnabled` 在类中 `BaseOverlayProvider`

    - #### toString

          public java.lang.String toString()

      覆盖:
        `toString` 在类中 `BaseOverlayProvider`