# WebSceneControl

WebSceneControl 三维视图的主要类

#### new Cesium.WebSceneControl(elementId, options)
MapGIS/WebSceneControl.js 255

Name | Type | Description
--- | --- | ---
`elementId` | Element | String | 放置视图的div的id

`options`

Object

optional 包含以下属性的对象

Name | Type | Default | Description
--- | --- | --- | ---
`viewerMode` | String | `‘3D’` | optional 初始视图模式默认为三维球视图 '2D'表示二维视图 'COLUMBUS_VIEW' 表示三维平面视图
`showInfo` | Boolean | `false` | optional 是否显示默认的属性信息框
`animation` | Boolean | `true` | optional 默认动画控制不显示
`baseLayerPicker` | Boolean | `true` | optional If set to false, the BaseLayerPicker widget will not be created.
`fullscreenButton` | Boolean | `true` | optional If set to false, the FullscreenButton widget will not be created.
`vrButton` | Boolean | `false` | optional If set to true, the VRButton widget will be created.

##### Example:

    var webGlobe = new WebSceneControl('GlobeView');

      var webGlobe = new WebSceneControl('GlobeView',{showInfo:true});
      //或者如下
      var  options ={
          showInfo:false,
          viewerMode:'3D',
          keyEventEnable:false
      };
      var webGlobe = new WebSceneControl('GlobeView',options);

### Members

#### readonlyellipsoid : Ellipsoid
MapGIS/WebSceneControl.js 538

当前椭球

#### readonlylayers
MapGIS/WebSceneControl.js 526

图层

#### readonlypopupContain
MapGIS/WebSceneControl.js 504

气泡

#### readonlyscene : Scene
MapGIS/WebSceneControl.js 493

场景

#### readonlyscreenSpaceEventHandler
MapGIS/WebSceneControl.js 515

事件句柄

#### tileGridShow : Boolean
MapGIS/WebSceneControl.js 549

是否显示瓦片网格信息

#### readonlyviewer : Viewer
MapGIS/WebSceneControl.js 481

视图

### Methods

#### addImageLayer(google等图层)
MapGIS/WebSceneControl.js 2301

通用添加影像图层

Name | Type | Description
--- | --- | ---
`google等图层` | imagelayer |

##### See:

- removeAllImageLayers 说明：在图层需要频繁切换的情况下，与removeImageLayer配合使用

#### addSceneEffect()
MapGIS/WebSceneControl.js 5232

添加场景特效

#### append(url, options, 代理)
MapGIS/WebSceneControl.js 1375

添加地图文档

Name | Type | Description
--- | --- | ---
`url` | String | 文档地址

`options`

Object

Name | Type | Default | Description
--- | --- | --- | ---
`autoReset` | Boolean | `true` | optional 是否自动定位
`synchronous` | Boolean | `true` | optional 是否异步请求
`loaded` | function | `function` | optional 回调函数
`showBoundingVolume` | Boolean | `false` | optional 是否显示包围盒
`maximumScreenSpaceError` | Number | `16` | optional 用于控制模型显示细节 值较大将会渲染更少的贴图,进而可以提高性能,而较低的值将提高视觉质量
`layers` | String |  | optional 图层过滤功能
`useIDB` | String | `false` | optional 是否使用前端缓存

`代理` | DefaultProxy |

##### Example:

    function callBackfunction(layer){
    console.log(layer)
    }

    // layers 属性类似二维服务
    // layers=show:0,1 表示只显示 layerIndex 为 0, 1 的图层
    // layers=hide:0,1 表示只隐藏 layerIndex 为 0, 1 的图层
        支持添加g3d注记服务层,扩展注记层可配置参数 参数见 Label类
        webGlobe.append('http://192.168.88.122:6163/igs/rest/g3d/label',{
                  scaleByDistance:new Cesium.NearFarScalar(1.5e5, 1.0, 1.5e9, 1.0),
                  fillColor:Cesium.Color.ROYALBLUE  ,
                  heightReference: Cesium.HeightReference.NONE,
                  translucencyByDistance:new NearFarScalar(1.5e5, 1.0, 1.5e9, 0.5)
              });

    webGlobe.append('http://192.168.90.102:6163/igs/rest/g3d/1218示例', {
     autoReset:false,
     synchronous:true,
     layers: 'layers=show:0',
     loaded:callBackfunction
    });

#### append2DDocTile(url, options) → object
MapGIS/WebSceneControl.js 1195

加载二维地图文档瓦片

Name | Type | Description
--- | --- | ---
`url` | String | 发布的文档地址

`options`

Object

其他附加属性包含以下属性的对象

Name | Type | Description
--- | --- | ---
`tileRange` | Rectangle | optional Rectangle.fromDegrees(-180,-90,180,90) 默认范围为全球范围
`colNum` | Number | optional 瓦片初始级的列数 默认为2
`rowNum` | Number | optional 瓦片初始级的列数 默认为1
`maxLevel` | Number | optional 瓦片最大显示级数 默认为19
`proxy` | String | optional 转发代理
`gdbps` | Array | optional gdbps地址数组
`layers` | String | optional layers参数，用于过滤图层

##### Returns:

瓦片对象

##### Example:

    //如果裁瓦片的时候是按照经纬度裁剪的瓦片则只设置最大级数即可
       // var otherOptions ={
       //  maxLevel:10
       //};
      var otherOptions ={
          tileRange:webRoot.Rectangle.fromDegrees(73.4625656504558,9.7218626686719958,139.249771965239,53.5800002118608),
          colNum:3,
          rowNum:2,
          maxLevel:10,
          proxy:'/Handler.ashx'//不存在跨域可不设置
        };
      var mapGisTile = webGlobe.append2DDocTile('http://localhost:6163/igs/rest/mrms/docs/二维矢量',otherOptions);

#### append3DDocTile(url, sceneIndex, layerIndex, options) → object
MapGIS/WebSceneControl.js 1148

加载三维地图文档瓦片

Name | Type | Description
--- | --- | ---
`url` | String | 发布的文档地址
`sceneIndex` | Number | 图层所在场景索引
`layerIndex` | Number | 图层索引

`options`

Object

其他附加属性包含以下属性的对象

Name | Type | Default | Description
--- | --- | --- | ---
`options.tileRange=` | Rectangle |  | Rectangle.fromDegrees(-180,-90,180,90) 默认范围为全球范围
`colNum` | Number | `2` | 瓦片初始级的列数 默认为2
`rowNum` | Number | `1` | 瓦片初始级的列数 默认为1
`maxLevel` | Number | `19` | 瓦片最大显示级数 默认为19
`proxy` | String |  | 转发代理

##### Returns:

瓦片对象

##### Example:

    //如果裁瓦片的时候是按照经纬度裁剪的瓦片则只设置最大级数即可
       // var otherOptions ={
       //  maxLevel:10
       //};
      var otherOptions ={
          tileRange:webRoot.Rectangle.fromDegrees(73.4625656504558,9.7218626686719958,139.249771965239,53.5800002118608),
          colNum:3,
          rowNum:2,
          maxLevel:10,
          proxy:'/Handler.ashx'//不存在跨域可不设置
        };
      var mapGisTile = webGlobe.append3DDocTile('http://54.222.218.173:6163/igs/rest/g3d/lcmap/',0,0,otherOptions);

#### append3DTile(url, onsuccess)
MapGIS/WebSceneControl.js 2399

加载3DTile数据

Name | Type | Description
--- | --- | ---
`url` | String | 数据url
`onsuccess` | function | 加载成功回调

##### Returns:

kml数据对象

#### appendBaiduMap(options)
MapGIS/WebSceneControl.js 2105

添加baidu地图服务:提供ptype='tile'和ptype='sate'、 'traffic'三种百度地图（瓦片和卫星、交通）

Name | Type | Description
--- | --- | ---
`options` | object | {ptype:'sate'}

#### appendBillboard(lat, lon, height, name, bImageUrl, bWidth, bHeight, options) → entity
MapGIS/WebSceneControl.js 2839

添加图片标签

Name | Type | Description
--- | --- | ---
`lat` | Number | 经度
`lon` | Number | 纬度
`height` | Number | 高度
`name` | String | 名称
`bImageUrl` | String | 图片地址
`bWidth` | Number | 图片宽度
`bHeight` | Number | 图片高度

`options`

Object

扩展参数

Name | Type | Description
--- | --- | ---
`description` | String | 描述信息

##### Returns:

添加的公告板对象 移除通过removeEntity(entity)

##### Example:

    var options = {
         id:125,
         description:'描述'
       };
       var billBoard = webGlobe.appendBillboard(113.2, 31, 200, 'name','http://localhost:8088/car.png', 64, 64,options);

#### appendCacheLayer()
MapGIS/WebSceneControl.js 1675

添加缓存服务图层（地形模型 通用接口 主要用于mongodb的服务） 图层的返回值必须在回调函数中 异步获取添加成功的图层

#### appendCZML(url, successCall)
MapGIS/WebSceneControl.js 2568

添加czml文件

Name | Type | Description
--- | --- | ---
`url` | String | 文件地址
`successCall` | function | 成功后的回调

##### Example:

    var czml = webGlobe.addCZML('SampleData/model.czml');

#### AppendEntityWithVideo(videoContainID, geomGraphic, options) → Entity
MapGIS/WebSceneControl.js 4074

添加带视频的几何实体

Name | Type | Description
--- | --- | ---
`videoContainID` | string | 视频（video）的dom元素id
`geomGraphic` | Graphic | 几何图形
`options` | object | 材质参数 example：

##### Returns:

返回添加成功的几何实体

#### appendGaodeMap(options)
MapGIS/WebSceneControl.js 2062

添加高德地图服务

Name | Type | Description
--- | --- | ---

`options`

Object

Name | Type | Default | Description
--- | --- | --- | ---
`type` | String | `'vec'` | optional 'raod', 'img'
`maximumLevel` | Number | `16` | optional

#### appendGeoJson(url)
MapGIS/WebSceneControl.js 2585

添加GeoJson文件

Name | Type | Description
--- | --- | ---
`url` | String | 文件地址

##### Example:

    var gjson = webGlobe.appendGeoJson('SampleData/china.topojson');

#### appendGoogleMap(type)
MapGIS/WebSceneControl.js 2018

添加谷歌地图服务

Name | Type | Description
--- | --- | ---
`type` | String | 地图类型 矢量‘m@207000000’ 影像‘s@130’ 栅格‘t@130,r@207000000 道路‘h@207000000’

#### appendGoogleMapExt(options)
MapGIS/WebSceneControl.js 2051

添加google地图服务(扩展)： ptype为以下： h： skeleton map light m：全地图 p： terrain+map r： skeleton map dark t：地形图 s：卫星地图 也可以进行组合，例如：s,r 或者 t,h

Name | Type | Description
--- | --- | ---
`options` | object | {ptype:'s'}

#### appendGraphics(entityOption) → entity
MapGIS/WebSceneControl.js 2703

添加

Name | Type | Description
--- | --- | ---
`entityOption` | object | 包含entity中相关选项设置 { id: name: availability: show: description: position: orientation: viewFrom: parent: }

##### Returns:

返回点对象 移除通过removeEntity(entity)

#### appendGroundLine(pnts, color) → Object
MapGIS/WebSceneControl.js 3384

绘制贴地线

Name | Type | Description
--- | --- | ---
`pnts` | Array.<Number> |
`color` | Color |

##### Returns:

primitive

##### Example:

    var pnts = [-115.0, 37.0, -107.0, 33.0]; //不加高程 应该加高程这里也没意义 所以修改了接口去掉高程
    var color = new Cesium.Color(red, green, blue, alpha);

#### appendGroundPolygon(outPnts, Array<Array<>>, color)
MapGIS/WebSceneControl.js 3410

根据给定点画贴地多边形

Name | Type | Description
--- | --- | ---
`outPnts` | Array | 外圈坐标数组（经纬度）
`Array<Array<>>` | Array | inerPnts 内圈坐标数组（经纬度）
`color` | Color | 填充颜色(默认不指定时为蓝色) 通过getColor(red, green, blue, alpha)

#### appendHolePolygon(name, latLons_out, latLons_in, options) → entity
MapGIS/WebSceneControl.js 3177

添加带洞多边形（二维）

Name | Type | Description
--- | --- | ---
`name` | String | 名称
`latLons_out` | Array | 外圈坐标 ：[x1,y1,x2,y2,x3,y3]
`latLons_in` | Array | 内圈Array<[x1,y1,x2,y2,x3,y3]>
`options` | object | 参数对象

##### Returns:

绘制的多边形区对象 移除通过removeEntity(entity)

#### appendImageByUrl(url, west, south, east, north)
MapGIS/WebSceneControl.js 2349

通过地址添加图片，包括本地图片和网络图片

Name | Type | Description
--- | --- | ---
`url` | String | 图片地址
`west` | float | 西经
`south` | float | 南纬
`east` | float | 东经
`north` | float | 北纬

##### Example:

    var earthface = webGlobe.appendImageByUrl('../Mapgis/img/earthface.jpg', -180.0, -90, 180.0, 90);

#### appendKml(url, options)
MapGIS/WebSceneControl.js 2521

加载Kml、kmz数据

Name | Type | Description
--- | --- | ---
`url` | String |
`options` | String |

##### Returns:

kml数据对象

#### appendLabel(lat, lon, height, lText, options) → entity
MapGIS/WebSceneControl.js 2736

添加文字标签

Name | Type | Description
--- | --- | ---
`lat` | Number | 经度
`lon` | Number | 纬度
`height` | Number | 高程
`lText` | String | 标签内容

`options`

Object

Name | Type | Default | Description
--- | --- | --- | ---
`font` | String | `'14pt monospace'` | optional 字体
`fillColor` | Color | `Cesium.Color.WHITE` | optional 字体的填充色
`outlineColor` | Color | `Cesium.Color.WHITE` | optional 字体的填充色
`style` | LabelStyle | `Cesium.LabelStyle.FILL_AND_OUTLINE` | optional 样式
`outlineWidth` | Number | `1` | optional 外边线宽度
`heightReference` | Number | `Cesium.HeightReference.NONE` | optional 外边线宽度
`verticalOrigin` | VerticalOrigin | `Cesium.VerticalOrigin.CENTER` | optional 标签位置 Cesium.VerticalOrigin.Cesium.VerticalOrigin.LEFT Cesium.VerticalOrigin.RIGHT
`horizontalOrigin` | HorizontalOrigin | `Cesium.HorizontalOrigin.CENTER` | optional 标签位置 Cesium.HorizontalOrigin.Cesium.HorizontalOrigin.LEFT Cesium.HorizontalOrigin.RIGHT
`description` | String |  | optional 属性描述

##### Returns:

标签对象 移除通过removeEntity(entity)

##### Example:

    var label = webGlobe.appendLabel(114.2, 31, 200, '这是一个标签', {
         font:'14pt 楷体',
         style:Cesium.LabelStyle.FILL_AND_OUTLINE,
         verticalOrigin:Cesium.VerticalOrigin.BOTTOM,
         pixelOffset:new Cesium.Cartesian2(0, -9)});

#### appendLabelIcon(text, lon, lat, height, font, fillColor, iconUrl, iconWidth, iconHeight, farDist, nearDist, txtPos, attribute) → entity
MapGIS/WebSceneControl.js 2893

添加图标注记

Name | Type | Description
--- | --- | ---
`text` | String | 注记文字内容
`lon` | Number | 经度
`lat` | Number | 纬度
`height` | Number | 高程
`font` | String | 字体 这里将字体和大小放在一起 eg:'14pt 楷体'
`fillColor` | Color | 字体的填充色
`iconUrl` | String | 图标路径
`iconWidth` | Number | 图标宽度
`iconHeight` | Number | 图标高度
`farDist` | Number | 最远显示距离
`nearDist` | Number | 最近显示距离
`txtPos` | String | 位置 'center','top','bottom'
`attribute` | String | 其他属性信息

##### Returns:

labelIcon 图标注记对象 移除通过removeEntity(entity)

##### Example:

    var labelIcon = webGlobe.appendLabelIcon('注记文本',110,33,0,'14pt 楷体','/car.png',64,64,10000000,1,bottom,'这是属性信息查询时可以看到');

#### appendLabelIconComm(name, description, position, billboardGraphics, labelGraphics)
MapGIS/WebSceneControl.js 3106

添加图标注记

Name | Type | Description
--- | --- | ---
`name` | String | 注记文字内容
`description` | String | 描述
`position` | Cartesian3 | 位置
`billboardGraphics` | BillboardGraphics | 图片对象
`labelGraphics` | LabelGraphics | 文本对象

##### Example:

    var labelGraphics = { //文字标签
       text: "文字标签内容",
       font: '14pt monospace',
       fillColor: Cesium.Color.WHITE,
       style: Cesium.LabelStyle.FILL_AND_OUTLINE,
       outlineWidth: 1,
       outlineColor: Cesium.Color.WHITE,
       verticalOrigin: Cesium.VerticalOrigin.CENTER, //垂直方向以底部来计算标签的位置
       horizontalOrigin: Cesium.HorizontalOrigin.CENTER,
       pixelOffset: new Cesium.Cartesian2(0.0, 0.0), //偏移量
       heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
       pixelOffsetScaleByDistance: new Cesium.NearFarScalar(1.5e2, 3.0, 1.5e7, 0.5), //随远近缩放
       translucencyByDistance: new Cesium.NearFarScalar(1.5e5, 1.0, 1.5e7, 0.0) //随远近隐藏
    };
    var billboardGraphics ={
    //图标
      image: iconUrl,
      width: iconWidth,
      height: iconHeight,
      //heightReference: this.root.HeightReference.CLAMP_TO_GROUND,
      //随远近缩放
      //pixelOffset:new this.root.Cartesian2(0.0, -image.height),
      pixelOffsetScaleByDistance: new Cesium.NearFarScalar(1.5e5, 3.0, 1.5e7, 0.5),
      //随远近隐藏
      translucencyByDistance: new Cesium.NearFarScalar(1.5e5, 1.0, 1.5e7, 0.0),
      //定位点
      //verticalOrigin: Cesium.VerticalOrigin.BOTTOM
      horizontalOrigin: Cesium.HorizontalOrigin.TOP
     };
      var labelIcon = webGlobe.appendLabelIcon('注记文本','这是属性信息查询时可以看到',Cesium.Cartesian3.fromDegrees(110,33,0),billboardGraphics,labelGraphics);

#### appendLabelIconEx(lon, lat, height, options) → entity
MapGIS/WebSceneControl.js 2977

添加图标注记

Name | Type | Description
--- | --- | ---
`lon` | Number | 经度
`lat` | Number | 纬度
`height` | Number | 高程

`options`

Object

optional 可配置参数

Name | Type | Description
--- | --- | ---
`iconUrl` | String | optional 图标路径，默认值: undefined
`text` | String | optional 注记文字内容，默认值: undefined
`disableDepthTestDistance` | Number | optional 图片和文字注记的深度测试
`translucencyByDistance` | NearFarScalar | optional 透明显示参数 默认值: new NearFarScalar(1.5e5, 1.0, 1.5e9, 0.0)
`scaleByDistance` | NearFarScalar | optional 缩放距离参数 默认值: new Cesium.NearFarScalar(1.5e2, 1.5, 1.5e7, 0.0)
`iconWidth` | Number | optional 图标宽度 默认值: 64
`iconHeight` | Number | optional 图标高度 默认值: 64
`icoPixelOffset` | Cartesian2 | optional 图标偏移 默认值: Cartesian2.ZERO
`icoPixelOffsetScaleByDistance` | NearFarScalar | optional 图标偏移值缩放距离参数 默认值: undefined
`icoVerticalOrigin` | Number | optional 图标相对于原点的竖直位置 默认值: VerticalOrigin.CENTER
`icoHorizontalOrigin` | Number | optional 图标相对于原点的水平位置 默认值: HorizontalOrigin.TOP
`font` | String | optional 字体 这里将字体和大小放在一起 eg:'14pt 楷体'
`labelPixelOffset` | Cartesian2 | optional 默认值: new Cartesian2(0.0, -iconHeight / 4)
`labelPixelOffsetScaleByDistance` | NearFarScalar | optional 文字注记偏移值缩放距离参数默认值: new NearFarScalar(1.5e5, 1.5, 1.5e7, 0.0)
`labelFillColor` | Color | optional 默认值: Color.WHITE
`labelBackgroundColor` | Color | optional 默认值: new Color(0.165, 0.165, 0.165, 0.8)
`labelShow` | Bool | optional 默认值: true
`labelShowBackground` | BOOL | optional 默认值: false
`labelStyle` | Number | optional 默认值: LabelStyle.FILL_AND_OUTLINE
`labelOutlineWidth` | Color | optional 默认值: 1
`labelVerticalOrigin` | String | optional 文字注记相对于原点的竖直位置 默认值: VerticalOrigin.BOTTOM
`labelHorizontalOrigin` | String | optional 文字注记相对于原点的水平位置 默认值: HorizontalOrigin.BOTTOM
`attribute` | String | optional 属性参数 默认值: undefined

##### Returns:

labelIcon 图标注记对象 移除通过removeEntity(entity)

##### Example:

    var options = { iconUrl: '/car.png', text: '注记文本', font: '14pt 楷体', labelShowBackground: true, attribute: '这是属性信息查询时可以看到' }
     var labelIcon = webGlobe.appendLabelIconEx(110, 33, 0, options);

#### appendLabels(info, scene, options)
MapGIS/WebSceneControl.js 1311

Name | Type | Description
--- | --- | ---
`info` | Object | 请求到的注记信息
`scene` | Object | 场景对象
`options` | Object | 注记可配置参数 注记对象参数 `Label`

#### appendLine(name, pointsArray, width, color, isGround, options) → entity
MapGIS/WebSceneControl.js 3303

根据给定点画线

Name | Type | Description
--- | --- | ---
`name` | String | 名称
`pointsArray` | Array | 点数组
`width` | Number | 线的宽度
`color` | Color | 线颜色(默认不指定时为蓝色) 通过getColor(red, green, blue, alpha)
`isGround` | Boolean | 设置为是否贴地(可识别带高度的坐标)
`options` | Object | 包含的附加属性

##### Returns:

绘制的线 移除通过removeEntity(entity)

##### Example:

    //不带高度
      var arrayp =[104.0, 28.0,
                 106.0, 27.0,
                107.0, 28.0,
                 108.0, 29.0];
    //带高程 并且isGround设置为true
     var arrayp =[104.0, 28.0,1000,
                  106.0, 27.0,1000,
                  107.0, 28.0,1000,
                  108.0, 29.0,800];
      var lineByPoints =   webGlobe.drawLine('1',arrayp,2);

##### See:

- getColor
- removeEntity

#### appendLineOnTerrain(name, pointsArray, step, level, callback) → entity
MapGIS/WebSceneControl.js 3343

根据给定点绘制贴地线(可编辑)

Name | Type | Description
--- | --- | ---
`name` | String | 名称
`pointsArray` | Array | 点数组
`step` | Number | 离散步长
`level` | Number | 地形级别
`callback` | function | 回调函数

##### Returns:

绘制的线 移除通过removeEntity(entity)

##### Example:

    var arrayp =[104.0, 28.0,
                 106.0, 27.0,
                107.0, 28.0,
                 108.0, 29.0];

##### See:

- removeEntity

#### appendM3dCache(baseUrl, options)
MapGIS/WebSceneControl.js 1744

添加m3d缓存服务(支持地形、模型等图层)

Name | Type | Description
--- | --- | ---
`baseUrl` | String | 服务地址（发布的m3d缓存服务）
`options` | Object | optional

##### Example:

    webGlobe.appendM3dCache('http://localhost:8089//terrain-tiles', {});

#### appendM3dLayer(url, options, 代理)
MapGIS/WebSceneControl.js 1692

添加m3d服务图层（mongodb）

Name | Type | Description
--- | --- | ---
`url` | String | 服务地址（发布的m3d缓存服务）

`options`

Object

Name | Type | Default | Description
--- | --- | --- | ---
`autoReset` | Boolean | `true` | optional
`loaded` | Boolean | `function` | optional

`代理` | DefaultProxy |

##### Example:

    function callBackfunction(layer){
    }
    webDlobe.appendM3dLayer('http://localhost:6163/igs/rest/g3d/cache/jg', {
    autoReset:false
    loaded:callBackfunction
    });

#### appendMapGISTerrain(url, sceneIndex, layerIndex, proxy) → object
MapGIS/WebSceneControl.js 1039

添加mapgis地形数据

Name | Type | Description
--- | --- | ---
`url` | String | 地形服务地址
`sceneIndex` | Number | 场景索引
`layerIndex` | Number | 图层render索引
`proxy` | String | 代理地址

##### Returns:

terrain 地形图层对象

#### appendMapGISTile(url, options)
MapGIS/WebSceneControl.js 1095

添加Mapgis发布的瓦片服务

Name | Type | Description
--- | --- | ---
`url` | String | 瓦片服务地址

`options`

Object

其他附加属性包含以下属性的对象

Name | Type | Description
--- | --- | ---
`tileRange` | Rectangle | optional 默认范围为全球范围 (-180,-90,180,90)
`colNum` | Number | optional 瓦片初始级的列数 默认为2
`rowNum` | Number | optional 瓦片初始级的列数 默认为1
`maxLevel` | Number | optional 瓦片最大显示级数 默认为19
`proxy` | String | optional 转发代理
`headers` | Object | optional 请求头信息

##### Example:

    //如果裁瓦片的时候是按照经纬度裁剪的瓦片则只设置最大级数即可
       // var otherOptions ={
       //  maxLevel:10
       //};
      var otherOptions ={
          tileRange:webRoot.Rectangle.fromDegrees(73.4625656504558,9.7218626686719958,139.249771965239,53.5800002118608),
          colNum:3,
          rowNum:2,
          maxLevel:10,
          proxy:'/Handler.ashx'//不存在跨域可不设置
        };
      var mapGisTile = webGlobe.appendMapGISTile('http://54.222.218.173:6163/igs/rest/mrms/tile/YX_TILE',otherOptions);

#### appendModel(id, url, lon, lat, height, scale) → object
MapGIS/WebSceneControl.js 2434

添加模型（gltf文件）

Name | Type | Description
--- | --- | ---
`id` | Number | 模型id
`url` | String | 模型url路径
`lon` | Number | 模型所在经度
`lat` | Number | 模型坐在纬度
`height` | Number | 高度
`scale` | Number | 缩放比

##### Returns:

model 移除通过 removeModel()

#### appendModels(modelsString, successCall)
MapGIS/WebSceneControl.js 2504

批量添加模型

Name | Type | Description
--- | --- | ---
`modelsString` | String | 模型组织
`successCall` | function | 成功后的回调

#### appendModelsByFile(filePath, successCall)
MapGIS/WebSceneControl.js 2487

通过文件批量添加模型

Name | Type | Description
--- | --- | ---
`filePath` | String | 模型组织文件
`successCall` | function | 成功后的回调

##### See:

- removeModels

#### appendOpenWeatherMap()
MapGIS/WebSceneControl.js 2114

添加OpenWeather服务:免费的天气预报云图 type Pressure Temperature Windspeed Clouds Label

#### appendPoint(lat, lon, height, pName, pPixelSize, pColor, pOutlineColor, pOutlineWidth, description) → entity
MapGIS/WebSceneControl.js 2648

添加点

Name | Type | Description
--- | --- | ---
`lat` | Number | 经度
`lon` | Number | 纬度
`height` | Number | 高程
`pName` | String | 名称
`pPixelSize` | Number | 像素大小
`pColor` | Color | (webGlobe.getColor(1,0,0,1))颜色
`pOutlineColor` | Color | 外边线颜色
`pOutlineWidth` | Number | 边线宽度
`description` | string | 属性描述信息

##### Returns:

返回点对象 移除通过removeEntity(entity)

##### Example:

    var point = webGlobe.appendPoint(115.2, 31, 200, '点', 100, webGlobe.getColor(1,0,0,1), webGlobe.getColor(1,1,0,1), 2);

##### See:

- getColor

#### appendPointComm(lat, lon, height, pName, description, options)
MapGIS/WebSceneControl.js 2674

通用添加点

Name | Type | Description
--- | --- | ---
`lat` | Number | 经度
`lon` | Number | 纬度
`height` | Number | 高程
`pName` | String | 名称
`description` | string | 属性描述信息
`options` | object | entity参数信息对象

#### appendPolygon(name, points, fillColor, outlineColor) → entity
MapGIS/WebSceneControl.js 3134

画多边形区

Name | Type | Description
--- | --- | ---
`name` | String | 名称
`points` | Array | 点数组（顺序是逆时针）
`fillColor` | Color | 区填充色 默认白色半透明 通过webSceneControl.getColor(red, green, blue, alpha)
`outlineColor` | Color | 外框线颜色 默认红色半透明

##### Returns:

绘制的多边形区对象 移除通过removeEntity(entity)

##### Example:

    var arryp =[-108.0, 25.0, 100000,
                 -100.0, 25.0, 100000,
                 -100.0, 30.0, 100000,
                -108.0, 30.0, 300000];
       var webGlobe = new webSceneControl('GlobeView');
       webGlobe.appendPolygon('1',arryp,webGlobe.getColor(1,0,0,1),webGlobe.getColor(0,0,1,1));

##### See:

- getColor
- removeEntity

#### AppendPopUp(containID, content, posion, offset, closeCallback, options)
MapGIS/WebSceneControl.js 3499

添加PopUP:需考虑相机的高度对PopUp大小、透明度、偏移值的影响

Name | Type | Description
--- | --- | ---
`containID` | string | 容器的div id（注意该容器不能放在球容器中）
`content` | string | popup的内容，可以为带html标签的字符串
`posion` | Posion:Cartesian3 | popup的位置（地图单位）
`offset` | Array | [x,y]偏移值，像素单位
`closeCallback` | function | popup的close按钮点击回调函数
`options` | Object |

##### Example:

    AppendPopUp('aaa','测试1测试1测试1<br/>测试1测试2<br/>',entity._position._value,[95,0],webGlobe.removePopUp)

#### appendTDTuMap(})
MapGIS/WebSceneControl.js 2160

添加天地图(经纬度)

Name | Type | Description
--- | --- | ---
`}` | object | options
`options.type` | String | 地图类型 'vec'矢量 'img'影像 'ter'地形
`options.token` | String | 开发token （请到天地图官网申请自己的开发token，自带token仅做功能验证随时可能失效） example ： {url:'http://t0.tianditu.com/DataServer?T=vec_c&X={x}&Y={y}&L={l}'} //天地图经纬度数据 {url:'http://glcdata.tianditu.com/DataServer?T=glc_c&X={x}&Y={y}&L={l}'} //30米全球地表覆盖数据服务

#### appendTDTuMapByWMTS(}, options)
MapGIS/WebSceneControl.js 2226

通过wmts服务添加天地图

Name | Type | Description
--- | --- | ---
`}` | String | layerType {'img':影像 'ter':地形 'cta':注记}

`options`

Object

Name | Type | Description
--- | --- | ---
`token` | String | = ''; 天地图的token

#### appendTerrain(url, west, south, east, north) → object
MapGIS/WebSceneControl.js 2324

添加地形

Name | Type | Description
--- | --- | ---
`url` | String | 地形服务地址
`west` | Number | 西经
`south` | Number | 南纬
`east` | Number | 东经
`north` | Number | 北纬

##### Returns:

terrain 地形对象

#### appendTileMapServiceImage(url, options) → Object
MapGIS/WebSceneControl.js 2378

添加自定义瓦片服务

Name | Type | Description
--- | --- | ---
`url` | String | 地形
`options` | Object |

##### Returns:

自定义瓦片服务对象

#### appendWMSTile(tileUrl, layerName, options)
MapGIS/WebSceneControl.js 1243

添加WMS服务图层

Name | Type | Description
--- | --- | ---
`tileUrl` | String | 服务地址
`layerName` | String | 图层名

`options`

Object

附加选项

Name | Type | Default | Description
--- | --- | --- | ---
`version` | String | `'1.1.0'` | 版本 默认1.1.0
`proxy` | String | `null` | 代理

#### appendWMTSTile(tileUrl, layerName, tileMatrixSetID, maximumLevel, startLevel)
MapGIS/WebSceneControl.js 1268

添加WMTS(WebMapTileService) 标准的瓦片

Name | Type | Description
--- | --- | ---
`tileUrl` | String | 瓦片服务地址
`layerName` | String | 图层名称
`tileMatrixSetID` | String |
`maximumLevel` | Number | 最大级数
`startLevel` | Number | 初始级别 正常默认为0 有的为1

#### appendWMTSTileExt(wmtsBaseUrl, options)
MapGIS/WebSceneControl.js 1852

添加WMTS(WebMapTileService) 标准的瓦片(扩展)

Name | Type | Description
--- | --- | ---
`wmtsBaseUrl` | String | wmts服务基地址 ：localhost:6163/igs/rest/ogc/WMTSServer

`options`

Object

optional 包含以下属性的对象

Name | Type | Default | Description
--- | --- | --- | ---
`serverName` | String |  | optional 服务名
`proxy` | String |  | optional 代理服务器地址
`from` | String | `'jiwei'` | optional 哪家公司的服务

##### Example:

    var imagelayer;
    function callBackfunction(layer){
       imagelayer = layer;
    }
    var wmtsLayer = new webGlobe.appendWMTSTileExt('localhost:6163/igs/rest/ogc/WMTSServer',{
    serverName:'dd',
    proxy:'/Handler.ashx',
    synchronous:true,
    loaded:callBackfunction,
    from:'jiwei'});
                    //异步的方式
              // webGlobe.appendWMTSTileExt("http://59.252.165.22:8066/ime-cloud/rest/2016qgfdqrjszy/wmts", {
              //     from: 'jiwei',
              //     loaded:function(layer){
             //         jw = layer;
             //     }
             // });
             //同步方式
             jw = webGlobe.appendWMTSTileExt("http://59.252.165.22:8066/ime-cloud/rest/2016qgfdqrjszy/wmts", {
                  from: 'jiwei'
             });

#### caculHeadingFromCartographic(center, target) → Number
MapGIS/WebSceneControl.js 4553

计算两点间的heading 航向角

Name | Type | Description
--- | --- | ---
`center` | Cartographic | 中心点 （第一个点） 坐标为弧度
`target` | Cartographic | 目标点 （第二个点）坐标为弧度

##### Returns:

heading

#### calcParabola()
MapGIS/WebSceneControl.js 5189

#### changeSceneMode(sceneMode, duration)
MapGIS/WebSceneControl.js 3860

切换场景模式

Name | Type | Description
--- | --- | ---
`sceneMode` | String | 场景模式'3D', '2D','COLUMBUS_VIEW'(平面三维)
`duration` | Number | 动画持续时间，<=0时，保持场景范围不变

#### changeSkyBox(skybox)
MapGIS/WebSceneControl.js 3915

修改场景的天空盒

Name | Type | Description
--- | --- | ---
`skybox` | SkyBox | 天空和对象

##### Example:

    var skybox = new Cesium.SkyBox({
                       sources : {
                         positiveX : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/front.jpg',
                         negativeX : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/back.jpg',
                         positiveY : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/left.jpg',
                         negativeY : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/right.jpg',
                         positiveZ : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/top.jpg',
                         negativeZ : 'Mapgis/MapgisPlugin/Assets/Textures/SkyBox2/bottom.jpg'
                    }
               });

#### clearCruiseModel()
MapGIS/WebSceneControl.js 4325

清除模型漫游

#### clearPopUps()
MapGIS/WebSceneControl.js 3761

清空所有的PopUP

Type | Description
--- | ---

#### closeRotation()
MapGIS/WebSceneControl.js 3837

关闭自转

#### covertEllipsoid2World(ellipsoidPosition, height, worldPosition)
MapGIS/WebSceneControl.js 5656

经纬度坐标转为世界坐标

Name | Type | Description
--- | --- | ---
`ellipsoidPosition` | Cartesian2 |
`height` | Number |
`worldPosition` | Cartesian3 |

#### createDrawHelper(elementId, iconUrlOptions, isVertical)
MapGIS/WebSceneControl.js 879

创建二维交互绘图工具

Name | Type | Description
--- | --- | ---
`elementId` | String | 工具容器
`iconUrlOptions` | object | 工具的图片json对象
`isVertical` | bool | 工具是否垂直排列，默认情况下为水平排列

##### Example:

    var toolImgURL = {
          markerIcon: './css/images/glyphicons_242_google_maps.png',
          polylineIcon: './css/images/glyphicons_097_vector_path_line.png',
          polygonIcon: './css/images/glyphicons_096_vector_path_polygon.png',
          circleIcon: './css/images/glyphicons_095_vector_path_circle.png',
          extentIcon: './css/images/glyphicons_094_vector_path_square.png',
          clearIcon: './css/images/glyphicons_067_cleaning.png'
      };
     var eventCallbacks = {
          created: {marker:function(){},polyline:function(){}},
          edited: {marker:function(){},polyline:function(){}},
      };

#### createDynamicCutting(tileSet, planes, interaction)
MapGIS/WebSceneControl.js 4753

Name | Type | Description
--- | --- | ---
`tileSet` | Object |
`planes` | Object |
`interaction` | Boolean | 交互

#### createExcavateAnalysis()
MapGIS/WebSceneControl.js 4685

图层

Name | Type | Description
--- | --- | ---
`option.tileSet` | Object | 开挖面的形状
`option.planes` | Object | 裁剪面材质
`option.material` | Object | 边界线颜色
`option.edgeColor` | Object | 边界线宽度
`option.edgeWidth` | Object | 裁减法线方向，默认值为 false
`option.unionClippingRegions` | Object | 开挖面定位点经度
`option.longitude` | Object | 开挖面定位点纬度
`option.latitude` | Object | 开挖面定位点高度
`option.height` | Object |

#### createExplosion()
MapGIS/WebSceneControl.js 5436

Name | Type | Description
--- | --- | ---
`option.children` | Array.<child> | 当前图层子节点，如果为空则返回undefined
`option.center` | Cartesian3 | 爆炸中心中心
`option.direction` | Cartesian3 | 图层整体爆炸方向，默认值为 Cartesian3(1.0, 0.0, 0.0)
`option.distance` | Number | 沿当前方向移动距离，默认值为 50

#### createHeatMap(bounds, maxValue, minValue, data) → object
MapGIS/WebSceneControl.js 4153

创建热力图

Name | Type | Description
--- | --- | ---
`bounds` | object | ：WGS84 bounding box {north, east, south, west}
`maxValue` | Number | 最大值
`minValue` | Number | 最小值
`data` | Array.<Array> | Array<[{'x':,'y':,'value':}]>

##### Returns:

热力图实例

#### createNavigationTool(options) → Position
MapGIS/WebSceneControl.js 4061

创建导航控件

Name | Type | Description
--- | --- | ---
`options` | object | 导航控件参数 example： var options = {}; //用于在使用重置导航重置地图视图时设置默认视图控制。接受的值是Cesium.Cartographic 和 Cesium.Rectangle options.defaultResetView = Cesium.Rectangle.fromDegrees(71, 3, 90, 14); //用于启用或禁用罗盘 options.enableCompass= true; //用于启用或禁用缩放控件 options.enableZoomControls= false; //用于启用或禁用距离图例 options.enableDistanceLegend= false; //用于启用或禁用指南针外环 options.enableCompassOuterRing= true;

##### Returns:

三维笛卡尔坐标点

#### cruiseModel(modelURL, positionArr, isShowPath, clockFrequency) → Array
MapGIS/WebSceneControl.js 4266

模型漫游

Name | Type | Description
--- | --- | ---
`modelURL` | string | 模型url
`positionArr` | Array.<Array> | 漫游线路节点坐标数组 Array<[x,y]>
`isShowPath` | bool | 是否显示线路和节点
`clockFrequency` | Number | 漫游时钟频率

##### Returns:

entities 模型对象Array<entity>

#### delete3DTile(tileset)
MapGIS/WebSceneControl.js 2421

删除3DTile数据

Name | Type | Description
--- | --- | ---
`tileset` | object | 添加返回的primitive

#### deleteTerrain()
MapGIS/WebSceneControl.js 1065

删除地形图层

#### flyTo(lon, lon, height, duration)
MapGIS/WebSceneControl.js 780

跳转到

Name | Type | Description
--- | --- | ---
`lon` | Number | 经度
`lon` | Number | 纬度
`height` | Number | 视角高度
`duration` | Number | 跳转持续时间

#### flyToComm(lon, lat, height, options)
MapGIS/WebSceneControl.js 847

通用跳转接口

Name | Type | Description
--- | --- | ---
`lon` | Number | 经度
`lat` | Number | 纬度
`height` | Number | 视角高度
`options` | object | 扩展参数 兼容原生

#### flyToEx(lon, lon, options)
MapGIS/WebSceneControl.js 807

跳转到

Name | Type | Description
--- | --- | ---
`lon` | Number | 经度
`lon` | Number | 纬度

`options`

Object

optional 跳转持续时间

Name | Type | Description
--- | --- | ---
`height` | Number | optional 视角高度
`duration` | Number | optional 持续时间
`heading` | Number | optional 方位角
`pitch` | Number | optional 俯仰角
`roll` | Number | optional 翻滚角

#### getColor(red, green, blue, alpha) → Color
MapGIS/WebSceneControl.js 4142

获取颜色 这里所有接口中的Color都通过此接口获取

Name | Type | Description
--- | --- | ---
`red` | Number | 红色分量（0-1.0）
`green` | Number | 绿色分量（0-1.0）
`blue` | Number | 蓝色分量（0-1.0）
`alpha` | Number | 透明度 （0-1.0）

##### Returns:

颜色对象

#### getContourResult(worldPositions, terrainLayer, options, precision, density, numPrecision)
MapGIS/WebSceneControl.js 6171

获取高程图的结果

Name | Type | Description
--- | --- | ---
`worldPositions` | Array | 世界坐标点集
`terrainLayer` | Object | 地形图层对象
`options` | Onject | 可选参数
`precision` | Number | 数据采样精度
`density` | Number | 范围内等值点密度
`numPrecision` | Number | 最高点最低点精度

#### getDistanceByPointToLine(point, pnt1, pnt2)
MapGIS/WebSceneControl.js 6308

点到线的距离

Name | Type | Description
--- | --- | ---
`point` | Object | 点位置
`pnt1` | Object | 直线的第一个点
`pnt2` | Object | 直线的第二个点

#### getHeadingFromCartesian3(center, target) → Number
MapGIS/WebSceneControl.js 4564

计算两点间的heading 航向角

Name | Type | Description
--- | --- | ---
`center` | Cartesian3 | 中心点 （第一个点）
`target` | Cartesian3 | 目标点 （第二个点）

##### Returns:

heading

#### getHeightFromDegrees()
MapGIS/WebSceneControl.js 4124

根据经纬度计算高程

#### getSceneRange() → Array.<Array>
MapGIS/WebSceneControl.js 4165

计算场景的二维范围

##### Returns:

场景范围（单位：经纬度）Array<[lon,lat]>

#### getSlopePolygon(terrainLayer, worldPositions, slopes, options)
MapGIS/WebSceneControl.js 5706

获取坡度分析对象

Name | Type | Description
--- | --- | ---
`terrainLayer` | Object | 地形对象
`worldPositions` | Array | 世界点集
`slopes` | Array | 坡度值

`options`

Object

可配置参数

Name | Type | Description
--- | --- | ---
`count` | Number | optional 采样精度
`isHeightLightOneSlope` | Boolean | optional 启用单一坡度上色，所有这个坡度之上的区域全部填充红色
`heightLightSlopeIndex` | Number | optional 指定单一坡度索引号

#### getTransform(longitude, latitude, height) → Matrix4
MapGIS/WebSceneControl.js 6515

通过角度制经纬度坐标获取该点的转换矩阵

Name | Type | Description
--- | --- | ---
`longitude` | Number | 角度制经度
`latitude` | Number | 角度制纬度
`height` | Number | 高程

##### Returns:

modelMatrix 转换矩阵

#### goHome()
MapGIS/WebSceneControl.js 3849

复位

##### Returns:

#### moveModel(tileset, direction)
MapGIS/WebSceneControl.js 6530

根据方向向量移动模型位置

Name | Type | Description
--- | --- | ---
`tileset` | Object |
`direction` | Cartesian3 | 方向向量，将模型按照该值进行移动

##### Returns:

matrix 移动结束后的转换矩阵

#### openRotation()
MapGIS/WebSceneControl.js 3823

开启自转

#### outputImageFile()
MapGIS/WebSceneControl.js 4113

#### outputImageObj()
MapGIS/WebSceneControl.js 4105

输出屏幕截图：需使用reimg.js toImg() toBase64() toCanvas() toPng() toJpeg() downloadPng(filename) 可以根据图像对象保存为不同类型的图片。

##### Returns:

返回图像对象

#### pauseRotationView()
MapGIS/WebSceneControl.js 4417

暂停围绕旋转

#### registerMouseEvent(eventType, callbackFun, handler) → handler
MapGIS/WebSceneControl.js 3933

注册鼠标事件

Name | Type | Description
--- | --- | ---
`eventType` | String | 事件类型 LEFT_CLICK RIGHT_CLICK MOUSE_MOVE LEFT_DOUBLE_CLICK RIGHT_DOUBLE_CLICK WHEEL(鼠标滚轮)
`callbackFun` | function | 回调函数
`handler` | Object | 回调函数

##### Returns:

事件句柄

#### removeAllDataSource(isDestroy)
MapGIS/WebSceneControl.js 2624

删除所有数据源：与以上几个接口配合使用

Name | Type | Description
--- | --- | ---
`isDestroy` | Bool | 是否销毁

#### removeAllEntities()
MapGIS/WebSceneControl.js 3446

移除所有实体

#### removeAllImageLayers(isdestroy,是否销毁图层)
MapGIS/WebSceneControl.js 2288

清空影像图层

Name | Type | Description
--- | --- | ---
`isdestroy,是否销毁图层` | boolean | 说明：在图层需要频繁切换的情况下，isdestroy最好取false

#### removeAllPrimitives()
MapGIS/WebSceneControl.js 3469

移除全部实体

#### removeAllSceneEffect()
MapGIS/WebSceneControl.js 5249

移除全部场景特效

#### removeDataSource(datasource, isDestroy)
MapGIS/WebSceneControl.js 2610

删除数据源：与以上几个接口配合使用

Name | Type | Description
--- | --- | ---
`datasource` | Cesium.DataSource | 数据源
`isDestroy` | Bool | 是否销毁

#### removeDoc()
MapGIS/WebSceneControl.js 1794

移除添加的文档

#### removeEntity(entity)
MapGIS/WebSceneControl.js 3454

移除实体

Name | Type | Description
--- | --- | ---
`entity` | entity | 实体对象

#### removeImage(ImageryLayer, isDestroy)
MapGIS/WebSceneControl.js 2366

删除图片，与appendImageByUrl对应

Name | Type | Description
--- | --- | ---
`ImageryLayer` | ImageryLayer | 图片地址
`isDestroy` | bool | 是否销毁

#### removeImageLayer(google等图层,其为addImageryProvider返回的值, isdestroy,是否销毁图层)
MapGIS/WebSceneControl.js 2275

通用删除影像图层

Name | Type | Description
--- | --- | ---
`google等图层,其为addImageryProvider返回的值` | imagelayer |
`isdestroy,是否销毁图层` | boolean | 说明：在图层需要频繁切换的情况下，isdestroy最好取false

#### removeImageryLayer(imageryLayer)
MapGIS/WebSceneControl.js 3462

移除瓦片图层

Name | Type | Description
--- | --- | ---
`imageryLayer` | imageryLayer | 图层对象

#### removeModel(model)
MapGIS/WebSceneControl.js 2547

移除模型

Name | Type | Description
--- | --- | ---
`model` | model | 模型对象

#### removeModels(models)
MapGIS/WebSceneControl.js 2557

移除通过appendModelsByFile()和appendModels()添加的模型

Name | Type | Description
--- | --- | ---
`models` | DataSource | 模型组

##### See:

- appendModelsByFile,appendModels

#### removePopUp(popID)
MapGIS/WebSceneControl.js 3728

删除PopUP

Name | Type | Description
--- | --- | ---
`popID` | string | popup的的div id

#### removeRotationView()
MapGIS/WebSceneControl.js 4407

移除绕点自旋转事件

#### removeSceneEffect()
MapGIS/WebSceneControl.js 5241

移除场景特效

#### removeTerrainFlatten()
MapGIS/WebSceneControl.js 6504

移除地形压平

#### resetColorTable(layer)
MapGIS/WebSceneControl.js 6467

重置网格剖分数据的色表，恢复至初始状态

Name | Type | Description
--- | --- | ---
`layer` | String | 待修改的网格剖分数据

#### rotationView(type, options)
MapGIS/WebSceneControl.js 4356

绕点旋转 相机绕点飞行一周 或者相机绕自身旋转一周

Name | Type | Default | Description
--- | --- | --- | ---
`type` | Number | `'rotationAroundPos'` | optional 旋转类型 默认绕相机自身旋转

`options`

Object

optional 附加参数系信息

Name | Type | Default | Description
--- | --- | --- | ---
`position` | Cartesian3 |  | 要进行围绕旋转的点
`pitch` | Number | `-30` | optional 相机的俯仰角 单位（度）
`distance` | Number | `5000` | optional 相机距离点的距离 单位（米）
`duration` | Number | `8` | optional 绕点飞行一周所用的时间 单位（秒）
`ClockRange` | Number | `Cesium.ClockRange.CLAMPED` | optional 循环方式

Author:
  - hys

#### scalePolygon(worldPositions, distance, scaleWorldPositions)
MapGIS/WebSceneControl.js 6333

缩放多边形

Name | Type | Description
--- | --- | ---
`worldPositions` | Array | 原始世界坐标集
`distance` | Number | 距离边距离
`scaleWorldPositions` | Array | 缩放后的世界坐标集

#### screenPositionToCartesian(position) → Position
MapGIS/WebSceneControl.js 4027

屏幕坐标转为笛卡尔坐标

Name | Type | Description
--- | --- | ---
`position` | Position | 屏幕坐标点

##### Returns:

三维笛卡尔坐标点

#### screenPositionToCartographic(position) → Position
MapGIS/WebSceneControl.js 4005

屏幕坐标转为经纬度坐标

Name | Type | Description
--- | --- | ---
`position` | Position | 屏幕坐标点

##### Returns:

三维经纬度坐标点(单位弧度)

#### setView(lon, lat, height, curHeading, curPitch, curRoll)
MapGIS/WebSceneControl.js 3795

设置当前视图范围

Name | Type | Description
--- | --- | ---
`lon` | Number | 经度
`lat` | Number | 纬度
`height` | Number | 高度
`curHeading` | Number | 绕垂直于地心的轴旋转的度数
`curPitch` | Number | 绕纬度线旋转度数
`curRoll` | Number | 绕经度线旋转度数

#### showPosition(elementId, options) → Element
MapGIS/WebSceneControl.js 615

显示经纬度 高程 视角高度

Name | Type | Description
--- | --- | ---
`elementId` | Element | String | 要显示的div的id

`options`

Object

附加属性

Name | Type | Default | Description
--- | --- | --- | ---
`showHpr` | Boolean | `false` | optional
`showSelectTileInfo` | Boolean | `false` | optional 显示当前鼠标所在位置拾取到的级别
`showViewLevelInfo` | Boolean | `false` | optional 显示视图级别

##### Returns:

element 状态栏的element @ deprecated 该接口即将弃用 请用show替换

##### Example:

    webGlobe.showPosition('', {
    showHpr: true,
    showSelectTileInfo:true,
    showViewLevelInfo:true
    });

#### showTileGrid(isVisible)
MapGIS/WebSceneControl.js 4509

显示瓦片网格信息

Name | Type | Description
--- | --- | ---
`isVisible` | Boolean | 是否可见

#### simplifyLine(positions) → Array.<Cartesian3>
MapGIS/WebSceneControl.js 5159

化简抽稀(用于折线路绘制)

Name | Type | Description
--- | --- | ---
`positions` | Array.<Cartesian3> | 坐标点序列

##### Returns:

抽稀后的坐标点序列

#### startCruiseModel()
MapGIS/WebSceneControl.js 4335

开始模型漫游

#### startCustomDisplay(layerList, idList, options)
MapGIS/WebSceneControl.js 4910

Name | Type | Description
--- | --- | ---
`layerList` | Array.<Object> | 图层列表
`idList` | Array.<Object> | id列表

`options`

Object

扩展属性

Name | Type | Default | Description
--- | --- | --- | ---
`color` | Color | `new Cesium.Color(1.0, 0, 0, 0.5)` | optional 高亮颜色
`colorBlendMode` | Cesium3DTileColorBlendMode | `Cesium.Cesium3DTileColorBlendMode.HIGHLIGHT` | optional 高亮模式
`colorBlendAmount` | Number | `0.5` | optional 混合系数
`applyForLayer` | Boolean | `false` | optional 是否应用至图层
`negate` | Color | `true` | optional 是否取反 ——意思是除了id列表中的要素应用color
`negateColor` | Color | `new Cesium.Color.WHITE` | optional 取反的颜色,只有在negate=true 的时候才起作用
`style` | String | `'Edge'` | optional 高亮模式,'Edge':描边;'EdgeHighlight':高亮+描边
`edgeColor` | Color | `new Cesium.Color(0, 0, 1, 1.0)` | optional 描边颜色 默认红色

#### startRotationAroundPos()
MapGIS/WebSceneControl.js 4423

开始围绕旋转

#### startTerrainFlatten(isTerrainFlatten, positions, flattenHeight)
MapGIS/WebSceneControl.js 6477

地形压平

Name | Type | Description
--- | --- | ---
`isTerrainFlatten` | Boolean | 是否执行地形压平
`positions` | Array.<Cartesian3> | 指定压平区域
`flattenHeight` | Number | 压平到指定高度

#### stopCruiseModel()
MapGIS/WebSceneControl.js 4341

结束模型漫游

#### stopCustomDisplay()
MapGIS/WebSceneControl.js 4998

停止全部高亮

#### stopCustomDisplayByIds()
MapGIS/WebSceneControl.js 5020

根据id停止高亮

#### unRegisterMouseEvent(eventType) → handler
MapGIS/WebSceneControl.js 3980

注销鼠标事件

Name | Type | Description
--- | --- | ---
`eventType` | String | 事件类型

##### Returns:

事件句柄

#### updateColorTable(layer, imageUrl)
MapGIS/WebSceneControl.js 6431

更新网格剖分数据的色表

Name | Type | Description
--- | --- | ---
`layer` | Object | 待修改的网格剖分数据
`imageUrl` | String | 图片地址

#### updateImageryLayer(layer)
MapGIS/WebSceneControl.js 1219

更新二维地图文档瓦片

Name | Type | Description
--- | --- | ---
`layer` | ImageryProvider | 二维文档图层对象

##### Example:

    var mapGisTile = webGlobe.append2DDocTile('http://localhost:6163/igs/rest/mrms/docs/二维矢量',otherOptions);
         mapGisTile.imageryProvider.layers = 'show:1,2';
         webGlobe.updateImageryLayer(mapGisTile);

#### zoomIn()
MapGIS/WebSceneControl.js 3895

缩小

#### zoomOut()
MapGIS/WebSceneControl.js 3887

放大

#### zoomtoM3dLayer(layer)
MapGIS/WebSceneControl.js 1815

缩放到图层

Name | Type | Description
--- | --- | ---
`layer` | Object |