Layers

new Cesium.Layers(scene)

Name Type Description
scene Scene 场景对象

Members

readonly featureLayersMap : HashMap

矢量图层管理容器

readonly geojsonLayersMap : HashMap

geojson图层管理容器

readonly imageryLayersMap : HashMap

影像图层管理容器

readonly m3dLayersMap : HashMap

M3D 图层管理容器

readonly sceneLayerMap : HashMap

SceneLayer 图层管理器

readonly terrainLayersMap : HashMap

地形图层管理容器

readonly vectorLayersMap : HashMap

矢量图层管理容器

Methods

appendCesium3DTilesetLayer(url, options)Number

添加 3DTileset 数据
Name Type Description
url String | Resource
options Object
Name Type Default Description
autoReset Boolean true optional 跳转到模型位置
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange optional 镜头朝向
rectangle Cartesian3 | Rectangle layer.root.boundingVolume.rectangle optional 视野跳转位置,默认值为图层包围盒,可以设置为世界坐标
debugShowBoundingVolume Boolean false optional 包围盒
maximumScreenSpaceError Number 16 optional 几何容错率基准参数
debugWireframe Boolean false optional 线渲染模式
pointCloudShading Object optional 点云数据渲染参数
headers Object optional 数据请求头
loaded function optional 回调函数
errorCallback function optional 异常回调函数
Returns:
返回图层序号

appendFeatureLayer(url, options)

加载MapGIS矢量地图文档
Name Type Description
url String 发布的文档地址,或Igs图层服务地址,对应的layers参数不同,使用Igs图层服务地址通过gdbp仅能加载二维矢量图层,eg:二维地图文档地址:http://[host]:[port]/igs/rest/mrfs/docs/{docName},三维地图文档地址:http://[host]:[port]/igs/rest/g3d/{docName},Igs图层服务地址:http://[host]:[port]/igs/rest/mrfs/layer
options Object 其他附加属性包含以下属性的对象
Name Type Default Description
getDocLayerIndexes function function optional 回调函数,用于获取文档中的所有图层对象
autoReset Boolean true optional 视角是否自动切换到地图文档范围或第一个gdbp图层范围
loadAll Boolean true optional 是否加载所有数据,默认全部加载
setViewToExisting Boolean false optional 视角是否定位到现存要素的范围,仅当loadAll=true时有效,适用于旧版igs服务
layers String optional 图层id,即要加载哪些图层,分为地图文档加载(layer为0,1,2...)和gdbp地址加载(layer为gdbp1,gdbp2,...),分别对应两种url参数,地图文档加载示例:layers=show:0,1 表示只显示 layerIndex 为 0, 1 的图层,layers=hide:0,1 表示只隐藏 layerIndex 为 0, 1 的图层
idField String FID optional id字段名
tileFeaturesCount Number 400 optional 请求的瓦片矢量要素数量
useSystemLib Boolean false optional 是否使用MapGIS桌面端符号系统库
systemLib String 'MapGIS 10' optional 符号系统库guid或名称,默认库为'MapGIS 10'
clampToGround Boolean false optional 是否贴地,当加载三维地图文档或矢量白模时该属性无效
filter Object | Array.<Object> optional 全局过滤条件对象,或过滤条件对象数组,过滤条件数组顺序与图层顺序一致,空对象则使用默认无过滤
Name Type Default Description
orderField String optional 排序字段名称,用于对输出结果进行排序
isAsc boolean false optional 按照字段进行排序时,是否升序排列
objectIds Array optional 需要查询的要素的OID值数组,当objectIds有值时,代表基于objectIds查询,Where、geometry、geometryType、orderField、isAsc等查询参数无效.
geometryType String optional 几何类型,代表空间查询时传入的几何类型
geometry Object optional 几何类型对应的图形信息,也就是构成几何类型的坐标信息
where String optional 要素过滤条件
rule String optional 指定查询规则 {CompareRectOnly:true|false,EnableDisplayCondition:true|false,MustInside:true|false,Intersect:true|false}
renderer Object optional 专题图渲染规则,该属性用于提供专题服务
Name Type Description
type String optional 专题图类型,可选 "simple"|"unique-value"|"class-breaks"
legendOptions Object optional 专题图图例选项,用来在图例中展示符号所表达的信息
Name Type Description
title Object optional 专题图图例标题
field String optional 专题图字段名称,用来确定单值或分段要素,仅在renderer.type="unique-value"|"class-breaks"时使用
symbol Object optional 统一专题图符号样式
Name Type Description
type String optional 专题图符号样式类型,可选 "point-3d"|"line-3d"|"polygon-3d"
symbolLayers String optional 专题图符号图层,可选 "icon"|"line"|"fill"|"extrude"
Name Type Description
material Object optional 专题图符号图层材质设置
Name Type Description
opacity Number optional 专题图符号图层材质设置,控制模型透明度
color Color optional 专题图符号图层材质设置,控制专题图颜色,alpha值控制专题颜色权重
label String optional 统一专题图标签
defaultSymbol Object optional 单值|分段专题图默认符号样式,用来绘制具有与给定中断值不匹配的要素
defaultLabel String optional 单值|分段专题图默认标签,用来描述分配了默认符号的元素
uniqueValueInfos Array.<Object> optional 专题图单值信息,仅在renderer.type="unique-value"时使用
Name Type Description
value String | Number optional 指定字段下的要素值,具有此值的要素将使用给定的符号可视化
symbol Object optional 符号,用来渲染指定要素
label String optional 标签,用来描述符号表示的值
classBreakInfos Array.<Object> optional 专题图分段信息,仅在renderer.type="class-breaks"时使用
Name Type Description
minValue Number optional 设置分段间隔的最小值
maxValue Number optional 设置分段间隔的最大值
symbol Object optional 符号,用来渲染分段间隔最小-最大值之间的要素
label String optional 标签,用来描述符号表示的值
normalizationType String optional 专题图归一化类型,仅在render.type="class-breaks"时使用,可选 "field"|"percent-of-total"
normalizationField String optional 专题图根据字段归一化,即分段字段属性值 / 归一化字段属性值,如果renderer中定义了normalizationField,则优先执行normalizationField按字段归一化,通过归一化出的结果和分段专题图停靠点的值进行比较,若仅定义normalizationType未定义normalizationField,则不进行归一化,使用场景:如 区域人口数 / 该区域面积,返回该区域人口密度,根据人口密度绘制分段专题图
normalizationTotal Number optional 专题图根据属性值总和归一化,即分段字段属性值 / 给定总和,如果renderer中定义了normalizationTotal,则优先执行normalizationTotal按字段值总和归一化,通过归一化出的结果和分段专题图停靠点的值进行比较,若仅定义normalizationType未定义normalizationTotal,则使用 分段字段属性值 / 分段字段属性值总和 进行归一化,使用场景:如 区域GDP总量 / 所有区域GDP总量和,返回该区域GDP占比,根据GDP占比绘制分段专题图
valueExpression String optional 专题图计算表达式,用来对要素中的单/多个属性进行数学计算,属性字段使用"$feature.field"表示,如"[($feature.lg + 2) * 10 - 20 / 2] / 5 + $feature.mpLayer",如果renderer中定义了valueExpression,则优先执行valueExpression表达式,通过表达式计算出来的结果和单值/分段专题图停靠点的值进行比较
valueExpressionTitle String optional 专题图计算表达式标题,在legendOptions属性中没有提供的情况下,将显示为图例中的标题
visualVariables Array.<Object> optional 专题图视觉变量
Name Type Description
type String optional 专题图视觉变量类型,可选 "color"|"opacity"
field String optional 专题图视觉变量字段,用于和停靠点比较来确定绘制符号,只能为数字类型字段
valueExpression String optional 专题图视觉变量计算表达式
valueExpressionTitle String optional 专题图视觉变量计算表达式标题
normalizationType String optional 专题图视觉变量归一化类型,可选 "field"|"percent-of-total"
normalizationField String optional 专题图视觉变量归一化字段,将renderer中对应字段数据值除以归一化字段数据值
normalizationTotal String optional 专题图视觉变量归一化字段,将renderer中对应字段数据值除以所有数据值的总和
stops Array.<Object> optional 专题图视觉变量颜色数组,定义在一系列停靠点中应用于要素的连续色带的颜色
Name Type Description
value Number optional 专题图视觉变量停靠点
color Object optional 专题图视觉变量停靠点颜色,根据相邻停靠点间的值和颜色进行线性插值
style Object | Array.<Object> optional 矢量地图文档的全局style样式对象,或分图层style样式对象数组,样式顺序与图层顺序一致,空对象则使用默认样式
Name Type Description
type String optional style样式类型,可选参数为"point|line|polygon|building",对应点,线,区,区矢量白模
styleOptions Object optional style具体参数对象
Name Type Default Description
color Color Cesium.Color.GHOSTWHITE optional 通用参数,颜色
size Number optional 点符号大小,仅当options.style.type="point"时生效
outlineColor Color Cesium.Color.BLACK optional 边框线颜色,仅当options.style.type="point|polygon|building"时生效,当传入边框线颜色或边框线宽度参数时启用边框线
outlineWidth Number 1.0 optional 边框线宽度,仅当options.style.type="point"时生效,当传入边框线颜色或边框线宽度参数时启用边框线,"polygon|building"边框线宽度仅能为默认值1。
width Number 1 optional 线宽,仅当options.style.type="line"时生效
heightField Number | String optional 用作区矢量白模高程的属性字段名称,不设置则高程为零,仅当options.style.type="building"时生效
heightRatio Number optional 区矢量白模高程放缩比例,默认1.0,仅当options.style.type="building"时生效
minimumLevel Number 0 optional 瓦片最小级别
maximumLevel Number 0 optional 瓦片最大级别
gdbps String optional gdbps地址,多个图层用','隔开
proxy String optional 转发代理
Example:
var options1 = {
       autoReset: true,
       filter: {
             where: 'OBJECTID>500'
       },
       renderer: {
             type: 'simple',
             symbol: {
                 type: 'point-3d',
                 symbolLayers: {
                     type: 'icon',
                     material: { color: new Cesium.Color(1.0, 1.0, 1.0, 1.0) },
                     resource: {herf: "http://localhost:8085/Apps/SampleData/icon/Hotel.png", scale: 1.5, distanceDisplayCondition: new Cesium.DistanceDisplayCondition(10, 100000), sizeInMeters: false},
                     size: 20.0
                 }
             },
             label: "svg点符号"
       }
   }
   //java IGServer二维地图文档加载示例
   var layerIndexs;
   url = 'http://localhost:8089/igs/rest/services/二维矢量/FeatureServer/1';
   options = {
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
   }
   viewer.scene.layers.appendFeatureLayer(url, options);
   //.net IGServer二维地图文档加载示例
   var layerIndexs;
   url = 'http://localhost:6163/igs/rest/mrfs/docs/二维矢量/0/1';
   options = {
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
   }
   viewer.scene.layers.appendFeatureLayer(url, options);
   //gdbp地址加载示例
   url_gdbp = 'http://localhost:6163/igs/rest/mrfs/layer';
   option_gdbp={
       layers:'gdbp1,gdbp2,gdbp3'
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
   }
   viewer.scene.layers.appendFeatureLayer(url_gdbp, option_gdbp);
   //通过ID获取MapGISFeatureLayer图层
   var layerIndexs;
   for(var i = 0; i < layerIndexs; i++){
       viewer.scene.layers.getFeatureLayer(layerIndexs[i]);
   }
   //通过ID移除MapGISFeatureLayer图层
   for(var i = 0; i < layerIndexs; i++){
       viewer.scene.layers.removeFeatureLayerByID(layerIndexs[i]);
   }

appendGeojsonLayer(data, options)

加载GeoJSON数据
Name Type Description
data String | Object 数据类型,可选 url | GeoJSON Object | TopoJSON Object
options Object 其他附加属性包含以下属性的对象
Name Type Default Description
getDocLayerIndexes function function optional 回调函数,用于获取文档中的所有图层对象索引
loaded function function optional 回调函数,用于获取文档中的图层对象
proxy String optional 转发代理
setViewToExisting Boolean true optional 是否视图跳转
autoReset Boolean true optional 视角是否自动切换到geojson数据的中心
clampToGround Boolean false optional 是否贴地
renderer Object optional 专题图渲染规则,该属性用于提供专题服务
Name Type Description
type String optional 专题图类型,可选 "simple"|"unique-value"|"class-breaks"
legendOptions Object optional 专题图图例选项,用来在图例中展示符号所表达的信息
Name Type Description
title Object optional 专题图图例标题
field String optional 专题图字段名称,用来确定单值或分段要素,仅在renderer.type="unique-value"|"class-breaks"时使用
symbol Object optional 统一专题图符号样式
Name Type Description
type String optional 专题图符号样式类型,可选 "point-3d"|"line-3d"|"polygon-3d"
symbolLayers String optional 专题图符号图层,可选 "icon"|"line"|"fill"|"extrude"
Name Type Description
material Object optional 专题图符号图层材质设置
Name Type Description
opacity Number optional 专题图符号图层材质设置,控制模型透明度
color Color optional 专题图符号图层材质设置,控制专题图颜色,alpha值控制专题颜色权重
label String optional 统一专题图标签
defaultSymbol Object optional 单值|分段专题图默认符号样式,用来绘制具有与给定中断值不匹配的要素
defaultLabel String optional 单值|分段专题图默认标签,用来描述分配了默认符号的元素
uniqueValueInfos Array.<Object> optional 专题图单值信息,仅在renderer.type="unique-value"时使用
Name Type Description
value String | Number optional 指定字段下的要素值,具有此值的要素将使用给定的符号可视化
symbol Object optional 符号,用来渲染指定要素
label String optional 标签,用来描述符号表示的值
classBreakInfos Array.<Object> optional 专题图分段信息,仅在renderer.type="class-breaks"时使用
Name Type Description
minValue Number optional 设置分段间隔的最小值
maxValue Number optional 设置分段间隔的最大值
symbol Object optional 符号,用来渲染分段间隔最小-最大值之间的要素
label String optional 标签,用来描述符号表示的值
normalizationType String optional 专题图归一化类型,仅在render.type="class-breaks"时使用,可选 "field"|"percent-of-total"
normalizationField String optional 专题图根据字段归一化,即分段字段属性值 / 归一化字段属性值,如果renderer中定义了normalizationField,则优先执行normalizationField按字段归一化,通过归一化出的结果和分段专题图停靠点的值进行比较,若仅定义normalizationType未定义normalizationField,则不进行归一化,使用场景:如 区域人口数 / 该区域面积,返回该区域人口密度,根据人口密度绘制分段专题图
normalizationTotal Number optional 专题图根据属性值总和归一化,即分段字段属性值 / 给定总和,如果renderer中定义了normalizationTotal,则优先执行normalizationTotal按字段值总和归一化,通过归一化出的结果和分段专题图停靠点的值进行比较,若仅定义normalizationType未定义normalizationTotal,则使用 分段字段属性值 / 分段字段属性值总和 进行归一化,使用场景:如 区域GDP总量 / 所有区域GDP总量和,返回该区域GDP占比,根据GDP占比绘制分段专题图
valueExpression String optional 专题图计算表达式,用来对要素中的单/多个属性进行数学计算,属性字段使用"$feature.field"表示,如"[($feature.lg + 2) * 10 - 20 / 2] / 5 + $feature.mpLayer",如果renderer中定义了valueExpression,则优先执行valueExpression表达式,通过表达式计算出来的结果和单值/分段专题图停靠点的值进行比较
valueExpressionTitle String optional 专题图计算表达式标题,在legendOptions属性中没有提供的情况下,将显示为图例中的标题
visualVariables Array.<Object> optional 专题图视觉变量
Name Type Description
type String optional 专题图视觉变量类型,可选 "color"|"opacity"
field String optional 专题图视觉变量字段,用于和停靠点比较来确定绘制符号,只能为数字类型字段
valueExpression String optional 专题图视觉变量计算表达式
valueExpressionTitle String optional 专题图视觉变量计算表达式标题
normalizationType String optional 专题图视觉变量归一化类型,可选 "field"|"percent-of-total"
normalizationField String optional 专题图视觉变量归一化字段,将renderer中对应字段数据值除以归一化字段数据值
normalizationTotal String optional 专题图视觉变量归一化字段,将renderer中对应字段数据值除以所有数据值的总和
stops Array.<Object> optional 专题图视觉变量颜色数组,定义在一系列停靠点中应用于要素的连续色带的颜色
Name Type Description
value Number optional 专题图视觉变量停靠点
color Object optional 专题图视觉变量停靠点颜色,根据相邻停靠点间的值和颜色进行线性插值
minimumLevel Number 0 optional 瓦片最小级别
maximumLevel Number 0 optional 瓦片最大级别
Example:
//Geojson数据加载示例
   var layerIndexs;
   data = 'http://localhost:8895/buildings.geojson';
   var options1 = {
       autoReset: true,
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
       renderer: {
             type: 'simple',
             symbol: {
                 type: 'point-3d',
                 symbolLayers: {
                     type: 'icon',
                     material: { color: new Cesium.Color(1.0, 1.0, 1.0, 1.0) },
                     resource: {herf: "http://localhost:8085/Apps/SampleData/icon/Hotel.png", scale: 1.5, distanceDisplayCondition: new Cesium.DistanceDisplayCondition(10, 100000), sizeInMeters: false},
                     size: 20.0
                 }
             },
             label: "svg点符号"
       }
   }
   viewer.scene.layers.appendFeatureLayer(data, options);
   //通过ID获取MapGISGeojsonLayer图层
   var layerIndexs;
   for(var i = 0; i < layerIndexs; i++){
       viewer.scene.layers.getFeatureLayer(layerIndexs[i]);
   }
   //通过ID移除MapGISGeojsonLayer图层
   var layerIndexs;
   for(var i = 0; i < layerIndexs; i++){
       viewer.scene.layers.removeFeatureLayerByID(layerIndexs[i]);
   }

appendGraphicsLayer(graphicsLayer)

添加标绘图层
Name Type Description
graphicsLayer GraphicsLayer 标绘图层对象

appendGraphicsLayerFromJson(viewer, json)

添加标绘图层
Name Type Description
viewer Viewer 视图对象
json String json格式的字符串

appendImageryLayer(url, options)Number

添加影像图层
Name Type Description
url String 服务地址
options Object 可选参数
Returns:
layerIndex 返回图层序号
Example:
//添加影像图层,仅支持旧版IGS的.net服务
//返回图层序号
var layerIndex = viewer.scene.layers.appendImageryLayer("http://webclient.smaryun.com:6163/igs/rest/mrms/tile/北京市Tile");
//根据index获取图层
var layer =  viewer.scene.layers.getImageryLayer(index);
//根据序号删除图层,并销毁内存
viewer.scene.layers.removeLayerByID(layerIndex , true);

appendM3DLayer(url, options)Number

添加 M3D 数据
Name Type Description
url String | Resource
options Object
Name Type Default Description
autoReset Boolean true optional 跳转到模型位置
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange optional 镜头朝向
rectangle Cartesian3 | Rectangle layer.root.boundingVolume.rectangle optional 视野跳转位置,默认值为图层包围盒,可以设置为世界坐标
debugShowBoundingVolume Boolean false optional 包围盒
maximumScreenSpaceError Number 16 optional 几何容错率基准参数
debugWireframe Boolean false optional 线渲染模式
pointCloudShading Object optional 点云数据渲染参数
headers Object optional 数据请求头
loaded function optional 回调函数
errorCallback function optional 异常回调函数
gltfParsedCallback function optional gltf解析完成回调,提供修改gltf对象能力,一个M3D图层包含多个gltf,对所有的gltf应用同一个回调可能不合适
fillClip Boolean false optional 是否需要填充M3D2.0数据剖面,在appendM3DLayer函数中给而不是设置裁剪面给的原因是,要想支持剖面选取高亮必须统计primitive的oid列表,为了节省内存,原始数据在加载完成后就会释放,后续没有时机统计oid列表
hasSectionGeometry Boolean false optional 是否会存在剖面几何,如果后续该图层通过MapGISM3DSet#addSectionGeometry接口给m3d图层添加了剖切面则此属性设置为true,同时设置MapGISM3DSet#sectionOnly为true时,则会只显示剖面。
translucency Number 1 optional MapGISM3DSet的透明度参数
Returns:
返回图层序号
Example:
var url = 'http://localhost:8086/M3D/1.0/school_all/school_all.mcj';
 var options = {
     autoReset: true,
     duration: 2
     loaded: function (layer) {
         console.log(layer);
     }
 };

 var layerIndex = viewer.scene.layers.appendM3DLayer(url, options);

appendSceneLayer(url, options)

添加场景图层
Name Type Description
url String
options Object 针对不同的图层,有不同的传入参数options。具体可参考MapGISLabelLayer MapGISM3DSet MapGISTerrainProvider
Name Type Default Description
autoReset Boolean true optional 是否自动定位
synchronous Boolean true optional 是否异步请求
loaded function function optional 回调函数,获取单图层信息
getDocLayerIndexes function function optional 回调函数,用于获取文档中的所有图层对象
showBoundingVolume Boolean false optional 是否显示包围盒
maximumScreenSpaceError Number 16 optional 用于控制模型显示细节 值较大将会渲染更少的贴图,进而可以提高性能,而较低的值将提高视觉质量
layers String optional 图层过滤功能
useIDB String false optional 是否使用前端缓存
maxCacheLevel Number optional 前端最大缓存级别
tileFeaturesCount Number 400 optional 矢量图层单个瓦片加载的矢量要素数量
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange new HeadingPitchRange(0.0, -0.5, mergeBoundingSphere.radius * 2.5 optional 镜头朝向
requestVertexNormals Boolean false optional 是否请求法向(地形)
proxy DefaultProxy optional 代理
fillClip Boolean false optional 是否需要填充M3D2.0数据剖面,在appendM3DLayer函数中给而不是设置裁剪面给的原因是,要想支持剖面选取高亮必须统计primitive的oid列表,为了节省内存,原始数据在加载完成后就会释放,后续没有时机统计oid列表
hasSectionGeometry Boolean false optional 是否会存在剖面几何,如果后续该图层通过MapGISM3DSet#addSectionGeometry接口给m3d图层添加了剖切面则此属性设置为true,同时设置MapGISM3DSet#sectionOnly为true时,则会只显示剖面。
renderer Object optional 场景图层专题图,当专题图参数为对象时,表示将专题图应用再场景图层中的所有M3DSet对象上;当专题图参数为数组时,则可以根据M3DSet的id指定专题图
Examples:
viewer.scene.layers.appendSceneLayer('http://192.168.90.102:6163/igs/rest/g3d/1218示例', {
     autoReset:false,
     synchronous:true,
     layers: 'show:0',
     loaded:callBackfunction
 });

 viewer.scene.layers.appendSceneLayer('http://192.168.90.102:6163/igs/rest/g3d/1218示例', {
     autoReset:false,
     synchronous:true,
     layers: 'hide:0',
     getDocLayerIndexes: function (indexes) { console.log(indexes); }
 });

 
// 单值专题图
 var uniqueRenderer = {
     // 字段名
    "field": "OID",
    // 专题图类型
    "type": "unique-value",
    // 专题图参数
    "uniqueValueInfos": [
      {
        // 单值
        "value": 1,
        // 符号样式
        "symbol": {
          // 符号类型
          "type": "mesh-3d",
          // 可添加的符号图层,暂时仅支持fill类型
          "symbolLayers": [
              {
                // 符号图层类型
                "type": "fill",
                // 材质信息
                "material": {
                     // 颜色参数
                    "color": {
                        "red": 0,
                        "green": 0,
                        "blue": 1,
                        "alpha": 0.5
                    }
                }
              }
          ]
        }
      }
    ]
 }
 // 添加场景图层
 viewer.scene.layers.appendSceneLayer('服务基地址', {
   // 设置专题图参数
   renderer: uniqueRenderer
 });
// 分段专题图
renderer_range = {
  //专题图字段
  field: '体积',
  //专题图类型
  type: 'class-breaks',
  //专题图参数
  classBreakInfos: [
    {
      // 最大分段值
      maxValue: 0.5,
      // 最小分段值
      minValue: 0.1,
      // 符号样式
      symbol: {
        // 符号类型
        type: 'mesh-3d',
        // 可添加的符号图层,暂时仅支持fill类型
        symbolLayers: [
          {
            // 符号图层类型
            type: 'fill',
            // 材质信息
            material: {
              // 颜色参数
              color: new Cesium.Color(1.0, 0.0, 1.0, 0.7)
            }
          }
        ]
      }
    },
    {
      // 最大分段值
      maxValue: 1.0,
      // 最小分段值
      minValue: 0.5,
      // 符号样式
      symbol: {
        // 符号类型
        type: 'mesh-3d',
        // 可添加的符号图层,暂时仅支持fill类型
        symbolLayers: [
          {
            // 符号图层类型
            type: 'fill',
            // 材质信息
            material: {
              // 颜色参数
              color: new Cesium.Color(0.0, 1.0, 0.0, 0.7)
            }
          }
        ]
      }
    }
  ]
};
// 添加场景图层
viewer.scene.layers.appendSceneLayer('服务基地址', {
  // 设置专题图参数
  renderer: uniqueRenderer
});
// 根据M3DSet的id设置专题图
var renderer = [
  {
    // 根据M3DSet的id指定要生效的专题图
    layerId: 'M3DSet的id,即IGS提供的layerIndex参数',
    // 专题图参数
    renderer: {}
  }
]
// 添加场景图层
viewer.scene.layers.appendSceneLayer('服务基地址', {
  // 设置专题图参数
  renderer: renderer
});

appendTerrainLayer(url, optionsParam)MapGISTerrainProvider|TerrainProvider

添加地形图层(内部)
Name Type Description
url String 服务地址
optionsParam Object 可选参数
Name Type Default Description
requestVertexNormals Boolean false optional 是否请求法向(地形)
autoReset Boolean true optional 是否自动跳转
Returns:
terrainLayer 返回图层对象

appendVectorLayer(url, options)

加载MapGIS矢量地图文档
Name Type Description
url String 发布的文档地址,或Igs图层服务地址,对应的layers参数不同,使用Igs图层服务地址通过gdbp仅能加载二维矢量图层,eg:二维地图文档地址:http://[host]:[port]/igs/rest/mrfs/docs/{docName},三维地图文档地址:http://[host]:[port]/igs/rest/g3d/{docName},Igs图层服务地址:http://[host]:[port]/igs/rest/mrfs/layer
options Object 其他附加属性包含以下属性的对象
Name Type Default Description
getDocLayerIndexes function function optional 回调函数,用于获取文档中的所有图层对象
autoReset Boolean true optional 视角是否自动切换到地图文档范围或第一个gdbp图层范围
loadAll Boolean false optional 是否加载所有数据,默认以矢量瓦片形式动态加载
setViewToExisting Boolean false optional 视角是否定位到现存要素的范围,仅当loadAll=true时有效,适用于旧版igs服务
layers String optional 图层id,即要加载哪些图层,分为地图文档加载(layer为0,1,2...)和gdbp地址加载(layer为gdbp1,gdbp2,...),分别对应两种url参数,地图文档加载示例:layers=show:0,1 表示只显示 layerIndex 为 0, 1 的图层,layers=hide:0,1 表示只隐藏 layerIndex 为 0, 1 的图层
idField String FID optional id字段名
tileFeaturesCount Number 400 optional 请求的瓦片矢量要素数量
useSystemLib Boolean false optional 是否使用MapGIS桌面端符号系统库
systemLib String 'MapGIS 10' optional 符号系统库guid或名称,默认库为'MapGIS 10'
clampToGround Boolean false optional 是否贴地,当加载三维地图文档或矢量白模时该属性无效
filter Object | Array.<Object> optional 全局过滤条件对象,或过滤条件对象数组,过滤条件数组顺序与图层顺序一致,空对象则使用默认无过滤
Name Type Default Description
orderField String optional 排序字段名称,用于对输出结果进行排序
isAsc boolean false optional 按照字段进行排序时,是否升序排列
objectIds Array optional 需要查询的要素的OID值数组,当objectIds有值时,代表基于objectIds查询,Where、geometry、geometryType、orderField、isAsc等查询参数无效.
geometryType String optional 几何类型,代表空间查询时传入的几何类型
geometry Object optional 几何类型对应的图形信息,也就是构成几何类型的坐标信息
where String optional 要素过滤条件
rule String optional 指定查询规则 {CompareRectOnly:true|false,EnableDisplayCondition:true|false,MustInside:true|false,Intersect:true|false}
style Object | Array.<Object> optional 矢量地图文档的全局style样式对象,或分图层style样式对象数组,样式顺序与图层顺序一致,空对象则使用默认样式
Name Type Description
type String optional style样式类型,可选参数为"point|line|polygon|building",对应点,线,区,区矢量白模
styleOptions Object optional style具体参数对象
Name Type Default Description
color Color Cesium.Color.GHOSTWHITE optional 通用参数,颜色
size Number optional 点符号大小,仅当options.style.type="point"时生效
outlineColor Color Cesium.Color.BLACK optional 边框线颜色,仅当options.style.type="point|polygon|building"时生效,当传入边框线颜色或边框线宽度参数时启用边框线
outlineWidth Number 1.0 optional 边框线宽度,仅当options.style.type="point"时生效,当传入边框线颜色或边框线宽度参数时启用边框线,"polygon|building"边框线宽度仅能为默认值1。
width Number 1 optional 线宽,仅当options.style.type="line"时生效
heightField Number | String optional 用作区矢量白模高程的属性字段名称,不设置则高程为零,仅当options.style.type="building"时生效
heightRatio Number optional 区矢量白模高程放缩比例,默认1.0,仅当options.style.type="building"时生效
minimumLevel Number 0 optional 瓦片最小级别
maximumLevel Number 0 optional 瓦片最大级别
gdbps String optional gdbps地址,多个图层用','隔开
proxy String optional 转发代理
Example:
var options1 = {
       autoReset: false,
       tileFeaturesCount: 400,
       filter: {
             where: 'OBJECTID>500'
       },
       style: {
             type: 'building',
             styleOptions: {
                 heightField: 'HEIGHT',
                 heightRatio: 10,
                 color: Cesium.Color.WHITE,
                 outline: true
             }
       }
   }
   //多图层style设置,多图层filter同理
   var options2 = {
       style: [
           {
               type: 'line',
               styleOptions: {
                   color: Cesium.Color.WHITE,
                   width: 1.0
               }
           },
           //空对象,即使用默认样式
           {},
           {
               type: 'line',
               styleOptions: {
                   color: Cesium.Color.RED,
                   width: 1.0
           }
               }
       ]
   }
   //地图文档加载示例
   var layerIndexs;
   url = 'http://localhost:6163/igs/rest/mrms/docs/二维矢量';
   options = {
       layers: 'layers=show:0,1'
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
   }
   viewer.scene.layers.appendVectorLayer(url, options);

   //gdbp地址加载示例
   url_gdbp = 'http://localhost:6163/igs/rest/mrfs/layer';
   option_gdbp={
       layers:'gdbp1,gdbp2,gdbp3'
       getDocLayerIndexes: function (indexs) {
             console.log(indexs);
             layerIndexs = indexs;
       },
   }
   viewer.scene.layers.appendVectorLayer(url_gdbp, option_gdbp);
   //移除
   for(var i = 0; i < layerIndexs; i++){
       viewer.scene.layers.removeVectorLayerByID(layerIndexs[i]);
   }

getAllCesium3DTilesetLayers()Array.<Cesium3DTileset>

获取全部 Cesium3DTileset 图层对象
Returns:
返回所有的M3D图层对象

getAllImageryLayers()Array.<ImageryLayer>

获取全部影像图层
Returns:
获取全部影像图层

getAllM3DLayers()Array.<MapGISM3DSet>

获取全部 M3D 图层对象
Returns:
返回所有的M3D图层对象

getAllSceneLayers()Array.<SceneLayer>

获取全部 SceneLayer 图层
Returns:
获取全部 SceneLayer 图层

getCesium3DTilesetLayer(layerIndex)Cesium3DTileset

根据图层索引号,获取 Cesium3DTileset 图层对象
Name Type Description
layerIndex Number
Returns:
返回 Cesium3DTileset 图层对象
Example:
var layer = viewer.scene.layers.getCesium3DTilesetLayer(layerIndex);

getFeatureLayer(layerIndex)MapGISFeatureLayer

根据图层索引号,获取矢量图层对象
Name Type Description
layerIndex Number
Returns:
featureLayer 返回矢量图层对象
Example:
var layer = viewer.scene.layers.getFeatureLayer(layerIndex);

getGeojsonLayer(layerIndex)MapGISGeojsonLayer

根据图层索引号,获取geojson图层对象
Name Type Description
layerIndex Number
Returns:
geojsonLayer 返回geojson图层对象
Example:
var layer = viewer.scene.layers.getGeojsonLayer(layerIndex);

getGraphicsLayer(layerIndex)GraphicsLayer

根据图层索引号,获取 标绘图层对象
Name Type Description
layerIndex Number 图层序号
Returns:
graphicsLayer返回标绘图层对象

getImageryLayer(layerIndex)ImageryLayer

根据图层索引号,获取影像图层对象
Name Type Description
layerIndex Number
Returns:
ImageryLayer 返回影像图层对象
Example:
var layer = viewer.scene.layers.getImageryLayer(layerIndex);
按照图层索引号获取图层对象
Name Type Description
index Number 图层索引号
Returns:
返回图层对象

getM3DLayer(layerIndex)MapGISM3DSet

根据图层索引号,获取 M3D 图层对象
Name Type Description
layerIndex Number
Returns:
m3dLayer 返回 M3D 图层对象
Example:
var layer = viewer.scene.layers.getM3DLayer(layerIndex);

getSceneLayer(layerIndex)SceneLayer

按索引号获取 SceneLayer 图层
Name Type Description
layerIndex Number 图层索引号
Returns:
返回 SceneLayer 图层

getTerrainLayer(layerIndex)TerrainProvider

根据图层索引号,获取 地形图层对象
Name Type Description
layerIndex Number 图层序号
Returns:
terrainLayer返回地形对象

getVectorLayer(layerIndex)MapGISVectorLayer

根据图层索引号,获取矢量图层对象
Name Type Description
layerIndex Number
Returns:
vectorLayer 返回矢量图层对象
Example:
var layer = viewer.scene.layers.getVectorLayer(layerIndex);

removeAllCesium3DTilesetLayers(destroy)

删除全部 Cesium3DTileset 图层
Name Type Default Description
destroy Boolean true optional 销毁内存
Example:
viewer.scene.removeAllCesium3DTilesetLayers(true);

removeAllFeatureLayers(destroy)

移除所有featureLayer矢量图层
Name Type Description
destroy Boolean 是否销毁内存

removeAllGeojsonLayers(destroy)

移除所有geojson图层
Name Type Description
destroy Boolean 是否销毁内存

removeAllGraphicsLayers()

移除所有标绘图层

removeAllImageryLayers(destroy)

移除所有影像图层
Name Type Description
destroy Boolean 是否销毁内存

removeAllLayers(destroy)

移除所有图层
Name Type Default Description
destroy Boolean true optional 是否销毁内存

removeAllM3DLayers(destroy)

删除全部 M3D 图层
Name Type Default Description
destroy Boolean true optional 销毁内存
Example:
viewer.scene.removeAllM3DLayers(true);

removeAllSceneLayers(destroy)

移除全部 SceneLayer 图层
Name Type Description
destroy Boolean 是否清理内存

removeAllTerrainLayers()

移除所有地形图层

removeAllVectorLayers(destroy)

移除所有矢量图层
Name Type Description
destroy Boolean 是否销毁内存

removeCesium3DTilesetLayerByID(layerIndex, destroy)

按照图层号移除 Cesium3DTileset 图层
Name Type Default Description
layerIndex Number
destroy Boolean true optional 销毁内存
Example:
viewer.scene.layers.removeCesium3DTilesetLayerByID(layerIndex, true);

removeFeatureLayerByID(layerIndex, destroy)

移除featureLayer矢量图层
Name Type Description
layerIndex Number 图层序号
destroy Boolean 是否销毁内存

removeGeojsonLayerByID(layerIndex, destroy)

移除geojson图层
Name Type Description
layerIndex Number 图层序号
destroy Boolean 是否销毁内存

removeGraphicsLayerByIndex(layerIndex)

移除标绘图层
Name Type Description
layerIndex Number 图层序号

removeImageryLayerByID(layerIndex, destroy)

移除影像图层
Name Type Description
layerIndex Number 图层序号
destroy Boolean 是否销毁内存

removeLayerByID(index, destroy)

按图层索引号删除图层
Name Type Default Description
index Number 图层索引
destroy Boolean true optional 是否销毁内存

removeM3DLayerByID(layerIndex, destroy)

按照图层号移除图层
Name Type Default Description
layerIndex Number
destroy Boolean true optional 销毁内存
Example:
viewer.scene.layers.removeM3DLayerByID(layerIndex, true);

removeSceneLayerByID(layerIndex, destroy)

按索引号移除 SceneLayer 图层
Name Type Description
layerIndex Number 图层序号
destroy Boolean 是否销毁内存

removeTerrainLayerByID(layerIndex)

移除地形图层
Name Type Description
layerIndex Number 图层序号

removeVectorLayerByID(layerIndex, destroy)

移除矢量图层
Name Type Description
layerIndex Number 图层序号
destroy Boolean 是否销毁内存

zoomToImageryLayer(layer, options)

图层跳转
Name Type Description
layer ImageryLayer 影像图层对象
options Object
Name Type Default Description
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5) optional 镜头朝向

zoomToM3DLayer(layer, options)

图层跳转
Name Type Description
layer MapGISM3DSet M3D 图层对象
options Object
Name Type Default Description
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5) optional 镜头朝向

zoomToSceneLayer(layer, options)

图层跳转
Name Type Description
layer SceneLayer G3D 图层对象
options Object
Name Type Default Description
duration Number 0 optional 跳转时间,以秒为单位
orientation HeadingPitchRange new HeadingPitchRange(0.0, -0.5, boundingSphere.radius * 2.5) optional 镜头朝向

zoomToTerrainLayer(layer, options)

图层跳转,地形
Name Type Description
layer TerrainProvider 地形 图层对象
options Object
Name Type Default Description
duration Number 0 optional 跳转时间,以秒为单位
destination Cartesian3 | Rectangle optional 视野跳转位置