# WfsSingleLayer
查阅Cesium API

#### new mars3d.layer.WfsSingleLayer(options)
layer/graphicLayer/WfsSingleLayer.js 8

简单WFS服务图层， 一次性请求加载，适合少量数据时使用（小于1000条）。

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数对象，包括以下：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`url` | string |  | WFS服务地址
`parameters` | object |  | 可选 要在URL中 传递给WFS服务GetFeature请求的其他参数。
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`maxFeatures` | number |  | 可选 返回结果最大数量
`cql_filter` | string |  | 可选 筛选服务数据的SQL语句
`sortBy` | string |  | 可选 排序的属性名称，默认升序，降序时+D
`service` | string | `'WFS'` | 可选 服务类型
`version` | string | `'1.0.0'` | 可选 服务版本
`geometryName` | string | `'the_geom'` | 可选 geometry字段名称, 比如：geom 或 the_geom
`headers` | object |  | 可选 将被添加到HTTP请求头。
`proxy` | string | Cesium.DefaultProxy |  | 可选 加载资源时使用的代理。
`layer` | string |  | 图层名称（命名空间:图层名称），多个图层名称用逗号隔开
`format` | function |  | 可选 可以对加载的geojson数据进行格式化或转换操作
`onCreateGraphic` | function |  | 可选 解析geojson后，外部自定义方法来创建Graphic对象
`filter` | function | string |  | 可选 数据筛选方法，方法时，方法体内返回false时排除数据 filter:function(feature){return true}；支持字符串基于attr属性进行筛选的JS语句字符串，比如： attr.name=='安徽省' || attr.code=='340000'
`mask` | boolean | object |  | 可选 标识是否绘制区域边界的反选遮罩层，也可以传入object配置范围： { xmin: 73.0, xmax: 136.0, ymin: 3.0, ymax: 59.0 }
`allowDrillPick` | boolean | function |  | 可选 是否允许鼠标穿透拾取
`toPrimitive` | boolean |  | 可选 是否将entity类型转为primivate类型渲染（比如数据的point改为pointP展示）
`opacity` | number | `1.0` | 可选 透明度（部分图层），取值范围：0.0-1.0
`zIndex` | number |  | 可选 控制图层的叠加层次（部分图层），默认按加载的顺序进行叠加，但也可以自定义叠加顺序，数字大的在上面。
`symbol` | object | function |  | 可选 矢量数据的style样式,为Function时是完全自定义的回调处理 symbol(attr, style, feature)
参数名称 | 类型 | 描述信息
--- | --- | ---
`type` | GraphicType | string | 可选 标识数据类型，默认是根据数据生成 point、polyline、polygon
`styleOptions` | object | Style样式，每种不同类型数据都有不同的样式，具体见各`GraphicType`矢量数据的style参数。
`styleField` | string | 可选 按 styleField 属性设置不同样式。
`styleFieldOptions` | object | 可选 按styleField值与对应style样式的键值对象。键支持对attr的JS语法字符串，如 "attr.floors>10 && attr.floors<20": { color: "#ff0000" } 或 "floors>10 && floors<20": { color: "#ff0000" } ，默认与styleOptions合并，可以设置merge:false不合并。
`merge` | boolean | 可选 是否合并并覆盖json中已有的style，默认不合并。
`callback` | function | 可选 自定义判断处理返回style ，示例：callback: function (attr, styleOpt){ return { color: "#ff0000" }; }
`graphicOptions` | object |  | 可选 默认的graphic的构造参数，每种不同类型数据都有不同的属性，具体见各`GraphicType`矢量数据的构造参数。
`simplify` | object |  | 可选 是否简化坐标点位，为空时不简化
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`tolerance` | number | `0.0001` | 可选 简化的程度，传值是经纬度的小数位
`highQuality` | boolean | `true` | 可选 是否花更多的时间用不同的算法创建更高质量的简化
`mutate` | boolean | `true` | 可选 是否允许对输入进行变异（如果为true，则显著提高性能）
`buildings` | object |  | 可选 标识当前图层为建筑物白膜类型数据
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`bottomHeight` | string |  | 可选 建筑物底部高度（如:0） 属性字段名称（如:{bottomHeight}）
`cloumn` | string | `1` | 可选 层数，楼的实际高度 = height*cloumn
`height` | string | number | `3.5` | 可选 层高的 固定层高数值（如:10） 或 属性字段名称（如:{height}）
`popup` | string | Array.<Globe.getTemplateHtml_template> | function |  | 可选 绑定的popup弹窗值，也可以bindPopup方法绑定，支持：'all'、数组、字符串模板
`popupOptions` | Popup.StyleOptions |  | 可选 popup弹窗时的配置参数，也支持如pointerEvents等`Popup`构造参数,还包括：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`title` | string |  | 可选 固定的标题名称
`titleField` | string |  | 可选 标题对应的属性字段名称
`noTitle` | string |  | 可选 不显示标题
`showNull` | string | `false` | 可选 是否显示空值
`tooltip` | string | Array.<Globe.getTemplateHtml_template> | function | object |  | 可选 绑定的tooltip弹窗值，也可以bindTooltip方法绑定，参数与popup属性完全相同。
`tooltipOptions` | Tooltip.StyleOptions |  | 可选 tooltip弹窗时的配置参数，也支持如pointerEvents等`Tooltip`构造参数,还包括：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`title` | string |  | 可选 固定的标题名称
`titleField` | string |  | 可选 标题对应的属性字段名称
`noTitle` | string |  | 可选 不显示标题
`showNull` | string | `false` | 可选 是否显示空值
`contextmenuItems` | object |  | 可选 绑定的右键菜单值，也可以bindContextMenu方法绑定
`id` | string | number | `mars3d.Util.createGuid()` | 可选 图层id标识
`pid` | string | number |  | 可选 图层父级的id，一般图层管理中使用
`name` | string |  | 可选 图层名称
`show` | boolean | `true` | 可选 图层是否显示
`eventParent` | BaseClass | boolean |  | 可选 指定的事件冒泡对象，默认为map对象，false时不冒泡
`center` | object |  | 可选 图层自定义定位视角 `Map#setCameraView`
参数名称 | 类型 | 描述信息
--- | --- | ---
`lng` | number | 经度值, -180至180
`lat` | number | 纬度值, -90至90
`alt` | number | 可选 高度值
`heading` | number | 可选 方向角度值，绕垂直于地心的轴旋转角度, 0至360
`pitch` | number | 可选 俯仰角度值，绕纬度线旋转角度, -90至90
`roll` | number | 可选 翻滚角度值，绕经度线旋转角度, -90至90
`extent` | object |  | 可选 图层自定义定位的矩形区域，与center二选一即可。 `Map#flyToExtent`
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`xmin` | number |  | 最小经度值, -180 至 180
`xmax` | number |  | 最大经度值, -180 至 180
`ymin` | number |  | 最小纬度值, -90 至 90
`ymax` | number |  | 最大纬度值, -90 至 90
`height` | number | `0` | 可选 矩形高度值
`flyTo` | boolean |  | 可选 加载完成数据后是否自动飞行定位到数据所在的区域。
`flyToOptions` | object |  | 可选 加载完成数据后是否自动飞行定位到数据所在的区域的对应 `BaseLayer#flyTo`方法参数。

### 继承自

- GeoJsonLayer

### 属性值

#### allowDrillPick : boolean|function
layer/graphicLayer/GraphicLayer.js 680

是否允许鼠标穿透拾取

继承自:
  - GraphicLayer#allowDrillPick

#### attr : object|BaseGraphic.AjaxAttr
layer/graphicLayer/GraphicLayer.js 727

属性信息 【用于对矢量数据统一绑定动态属性】

继承自:
  - GraphicLayer#attr

#### clusterEnabled : boolean
layer/graphicLayer/GraphicLayer.js 257

是否开启聚合，如果修改聚合属性请调用setOptions方法

继承自:
  - GraphicLayer#clusterEnabled

#### collisionEnabled : boolean
layer/graphicLayer/GraphicLayer.js 270

是否开启碰撞检测，如果修改聚合属性请调用setOptions方法

继承自:
  - GraphicLayer#collisionEnabled

#### 只读 container : HTMLDivElement
layer/graphicLayer/GraphicLayer.js 440

当加载 DivGraphic 数据的内部DOM容器 `DivGraphic`

继承自:
  - GraphicLayer#container

#### 只读 dataSource : Cesium.CustomDataSource
layer/graphicLayer/GraphicLayer.js 284

当加载Entity类型数据的内部Cesium容器 `BaseEntity`

继承自:
  - GraphicLayer#dataSource

#### 只读 graphics : Array.<BaseGraphic>|Array
layer/graphicLayer/GraphicLayer.js 628

图层内的Graphic集合对象

继承自:
  - GraphicLayer#graphics

#### 只读 hasZIndex : boolean
layer/graphicLayer/GraphicLayer.js 515

是否可以调整图层顺序（在同类型图层间）

继承自:
  - GraphicLayer#hasZIndex

#### isAutoEditing : boolean
layer/graphicLayer/GraphicLayer.js 641

是否自动激活编辑（true时，单击后自动激活编辑）

继承自:
  - GraphicLayer#isAutoEditing

#### isContinued : boolean
layer/graphicLayer/GraphicLayer.js 199

是否连续标绘

继承自:
  - GraphicLayer#isContinued

#### 只读 isDrawing : boolean
layer/graphicLayer/GraphicLayer.js 663

是否正在绘制状态

继承自:
  - GraphicLayer#isDrawing

#### 只读 isEditing : boolean
layer/graphicLayer/GraphicLayer.js 672

是否正在编辑状态

继承自:
  - GraphicLayer#isEditing

#### 只读 length : number
layer/graphicLayer/GraphicLayer.js 618

图层内的Graphic矢量数据个数

继承自:
  - GraphicLayer#length

#### 只读 objectsToExclude : Array.<object>|undefined
layer/graphicLayer/GraphicLayer.js 479

获取当前图层中所有对象，用于贴模型分析时，排除的不进行贴模型计算的模型对象

继承自:
  - GraphicLayer#objectsToExclude

#### pointerEvents : boolean
layer/graphicLayer/GraphicLayer.js 460

当加载 DivGraphic 数据的DIV是否可以鼠标交互，为false时可以穿透操作及缩放地图，但无法进行鼠标交互及触发相关事件。

继承自:
  - GraphicLayer#pointerEvents

#### primitiveCollection : Cesium.PrimitiveCollection
layer/graphicLayer/GraphicLayer.js 303

当加载普通 primitive类型数据的内部Cesium容器 `BasePrimitive`

继承自:
  - GraphicLayer#primitiveCollection

#### splitDirection : Cesium.SplitDirection
layer/graphicLayer/GraphicLayer.js 692

卷帘对比时，设置所在的屏幕，NONE时不分屏[仅对Model小模型矢量数据有效]

继承自:
  - GraphicLayer#splitDirection

#### 只读 timeRange : object
layer/graphicLayer/GraphicLayer.js 2260

获取当前时序坐标的开始时间和结束时间,返回的是Cesium.JulianDate格式

继承自:
  - GraphicLayer#timeRange

#### 只读 timeRangeStr : object
layer/graphicLayer/GraphicLayer.js 2269

获取当前时序坐标的开始时间和结束时间,返回的是时间字符串

继承自:
  - GraphicLayer#timeRangeStr

#### zIndex : number
layer/graphicLayer/GraphicLayer.js 525

图层顺序，数字大的在上面。
只对 同类型(Entity/Primitive) + 贴地(clampToGround: true) 矢量对象间有效

继承自:
  - GraphicLayer#zIndex

### 方法

#### addGraphic(graphic) → BaseGraphic|Array.<BaseGraphic>
layer/graphicLayer/GraphicLayer.js 1471

添加Graphic矢量数据

参数名称 | 类型 | 描述信息
--- | --- | ---
`graphic` | BaseGraphic | Array.<BaseGraphic> | object | Array.<object> | 矢量数据 或 对应的构造参数对象(需要有type值)

##### 返回值:

添加后的Graphic对象

继承自:
  - GraphicLayer#addGraphic

#### autoSurfaceHeight(options) → Promise.<(BaseGraphic|*)>
layer/graphicLayer/GraphicLayer.js 1984

异步计算更新坐标进行贴地(或贴模型)

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`options` | object | `{}` | 可选 参数对象:
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`filter` | function |  | 可选 数据筛选方法，方法体内返回false时排除不进行贴地计算的数据 filter:function(feature){return true}
`has3dtiles` | boolean | `auto` | 可选 是否在3dtiles模型上分析（模型分析较慢，按需开启）,默认内部根据点的位置自动判断（但可能不准）
`objectsToExclude` | Array.<object> |  | 可选 贴模型分析时，排除的不进行贴模型计算的模型对象，可以是： primitives, entities, 或 3D Tiles features
`exact` | boolean | `false` | 可选 是否进行精确计算， 传false时是否快速概略计算方式，该方式计算精度较低，但计算速度快，仅能计算在当前视域内坐标的高度
`endItem` | function |  | 每计算完成1个graphic高度后 的回调方法
`end` | function |  | 异步计算高度完成所有graphic后 的回调方法

##### 返回值:

绘制创建完成的Promise

继承自:
  - GraphicLayer#autoSurfaceHeight

#### clear(hasDestroy) → void
layer/graphicLayer/GraphicLayer.js 1909

清除图层内所有矢量数据

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`hasDestroy` | boolean | `true` | 可选 是否释放矢量对象

##### 返回值:

无

继承自:
  - GraphicLayer#clear

#### clearDrawing() → boolean
layer/graphicLayer/GraphicLayer.js 2132

清除正在绘制的对象

##### 返回值:

是否清除了对象

继承自:
  - GraphicLayer#clearDrawing

#### eachGraphic(method, context, reverse) → GraphicLayer
layer/graphicLayer/GraphicLayer.js 1726

遍历所有矢量数据并将其作为参数传递给回调函数

参数名称 | 类型 | 描述信息
--- | --- | ---
`method` | function | 回调方法
`context` | object | 可选 侦听器的上下文(this关键字将指向的对象)。
`reverse` | boolean | 可选 是否倒序执行

##### 返回值:

当前对象本身,可以链式调用。

继承自:
  - GraphicLayer#eachGraphic

#### endDraw() → boolean
layer/graphicLayer/GraphicLayer.js 2098

完成绘制和编辑，如有未完成的绘制会自动完成。 在移动端需要调用此方法来类似PC端双击结束。

##### 返回值:

是否正常结束了矢量对象绘制

继承自:
  - GraphicLayer#endDraw

#### getClusterList() → Array
layer/graphicLayer/GraphicLayer.js 1411

获取当前图层聚合点列表

##### 返回值:

聚合点列表

继承自:
  - GraphicLayer#getClusterList

#### getGraphicByAttr(attrValue, attrName) → BaseGraphic|*
layer/graphicLayer/GraphicLayer.js 1687

根据 指定属性 获取 单个矢量数据对象（多个匹配时取首个）

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`attrValue` | string | number |  | 属性值
`attrName` | string | `'id'` | 可选 属性键

##### 返回值:

矢量数据对象

继承自:
  - GraphicLayer#getGraphicByAttr

#### getGraphicById(id) → BaseGraphic|*
layer/graphicLayer/GraphicLayer.js 1677

根据id取矢量数据对象

参数名称 | 类型 | 描述信息
--- | --- | ---
`id` | string | number | 矢量数据id

##### 返回值:

矢量数据对象

继承自:
  - GraphicLayer#getGraphicById

#### getGraphics(hasPrivate) → Array.<BaseGraphic>|Array
layer/graphicLayer/GraphicLayer.js 1736

获取图层内 所有矢量数据

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`hasPrivate` | boolean | `false` | 可选 是否取私有的graphic

##### 返回值:

矢量数据数组

继承自:
  - GraphicLayer#getGraphics

#### getGraphicsByAttr(attrValue, attrName) → Array.<BaseGraphic>
layer/graphicLayer/GraphicLayer.js 1697

根据 指定属性 获取 矢量数据对象 数组

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`attrValue` | string | number |  | 属性值
`attrName` | string | `'id'` | 可选 属性键

##### 返回值:

矢量数据对象

继承自:
  - GraphicLayer#getGraphicsByAttr

#### getGraphicsByIds(ids) → Array.<BaseGraphic>
layer/graphicLayer/GraphicLayer.js 1760

根据 id集合列表 取 矢量数据对象列表

参数名称 | 类型 | 描述信息
--- | --- | ---
`ids` | Array.<string> | Array.<number> | 矢量数据id列表

##### 返回值:

矢量数据对象列表

继承自:
  - GraphicLayer#getGraphicsByIds

#### getGraphicsByStyle(styleName, styleVal) → Array.<BaseGraphic>
layer/graphicLayer/GraphicLayer.js 1708

根据 指定style样式 获取 矢量数据对象 数组

参数名称 | 类型 | 描述信息
--- | --- | ---
`styleName` | string | style内的字段名称
`styleVal` | string | number | boolean | * | 属性值

##### 返回值:

矢量数据对象

继承自:
  - GraphicLayer#getGraphicsByStyle

#### getGraphicsTree(options) → object
layer/graphicLayer/GraphicLayer.js 1780

获取所有矢量数据的配置信息，通常用于配置 数据列表树

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数对象，包括以下：
参数名称 | 类型 | 描述信息
--- | --- | ---
`filter` | function | 可选 筛选方法，方法体内返回false时排除数据 filter:function(feature){return true}
`forEach` | function | 可选 递归调用对象配置信息，可以对导出的对象数据进行格式化或转换键值操作
`autoGroup` | function | string | 可选 自动分组处理方法(string时指定属性进行分组，比如传 autoGroup:"type")，注意：如果图层内有group对象时，该参数无效。

##### 返回值:

返回值包括 { list: [id与pid关联的原始数组], tree: [按children组织好的上下级树数组]}

继承自:
  - GraphicLayer#getGraphicsTree

#### getMaxHeight() → number
layer/graphicLayer/GraphicLayer.js 1122

获取图层内所有数据的 最大高度

##### 返回值:

高度

继承自:
  - GraphicLayer#getMaxHeight

#### getNoClusterGraphics(options) → Array
layer/graphicLayer/GraphicLayer.js 1423

获取当前图层未聚合的grpahic对象列表

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`isInView` | boolean | `false` | 可选 是否判断是否在屏幕内,默认不计算判断，可以按需开启

##### 返回值:

未聚合的grpahic对象列表

继承自:
  - GraphicLayer#getNoClusterGraphics

#### getPlotScale() → number
layer/graphicLayer/GraphicLayer.js 2328

获取当前图层的JB基准比例尺（依赖 mars3d-plot 插件）

##### 返回值:

比例尺值

继承自:
  - GraphicLayer#getPlotScale

#### getRectangle(isFormat) → Cesium.Rectangle|object
layer/graphicLayer/GraphicLayer.js 1092

获取图层内所有数据的 矩形边界值

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`isFormat` | boolean | `false` | 可选 是否格式化，格式化时示例： { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 }

##### 返回值:

isFormat：true时，返回格式化对象，isFormat：false时返回Cesium.Rectangle对象

继承自:
  - GraphicLayer#getRectangle

#### load(newOptions) → GeoJsonLayer
layer/graphicLayer/GeoJsonLayer.js 190

加载新数据 或 刷新数据

参数名称 | 类型 | 描述信息
--- | --- | ---
`newOptions` | object | 可选 新设定的参数，会与类的构造参数合并。
参数名称 | 类型 | 描述信息
--- | --- | ---
`url` | string | 可选 geojson文件或服务url地址
`data` | object | 可选 geojson格式规范数据对象，与url二选一即可。
`类参数` | object | 可选 包含当前类支持的所有参数

##### 返回值:

当前对象本身，可以链式调用

继承自:
  - GeoJsonLayer#load

#### loadGeoJSON(geojson, options) → Array.<BaseGraphic>
layer/graphicLayer/GraphicLayer.js 1284

加载转换GeoJSON格式规范数据为Graphic后加载到图层中。

参数名称 | 类型 | 描述信息
--- | --- | ---
`geojson` | string | object | GeoJSON格式规范数据
`options` | object | 可选 加载控制参数,包含：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`clear` | boolean | `false` | 可选 是否清除图层已有数据
`flyTo` | boolean | `false` | 可选 是否加载完成后进行飞行到数据区域
`type` | GraphicType | string |  | 可选 转为指定的类型
`toPrimitive` | boolean |  | 可选 是否将entity类型转为primivate类型渲染（比如数据的point改为pointP展示，同类型大于10条时自动改为合并渲染类型展示）
`style` | object |  | 可选 可以设置指定style样式,每种不同类型数据都有不同的样式，具体见各矢量数据的style参数。`GraphicType` // * @param {boolean} [options.style.merge] 是否合并并覆盖json中已有的style，默认不合并，仅适用style配置。
`crs` | string |  | 可选 原始数据的坐标系，如'EPSG:3857' （可以从 http://epsg.io查询）
`simplify` | object |  | 可选 是否简化坐标点位，为空时不简化
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`tolerance` | number | `0.0001` | 可选 简化的程度，传值是经纬度的小数位
`highQuality` | boolean | `true` | 可选 是否花更多的时间用不同的算法创建更高质量的简化
`mutate` | boolean | `true` | 可选 是否允许对输入进行变异（如果为true，则显著提高性能）
`hasGroup` | boolean | `true` | 可选 MultiLineString、MultiPolygon时是否使用GroupGraphic对象包一层。
`onEachFeature` | function |  | 可选 创建每个Graphic前的回调
`filter` | function | string |  | 可选 数据筛选方法，方法时，方法体内返回false时排除数据 filter:function(feature){return true}；支持字符串基于attr属性进行筛选的JS语句字符串，比如： attr.name=='安徽省' || attr.code=='340000' 。

##### 返回值:

转换后的Graphic对象数组

继承自:
  - GraphicLayer#loadGeoJSON

#### async loadJSON(json, options) → Promise.<(Array.<BaseGraphic>|*)>
layer/graphicLayer/GraphicLayer.js 1212

参数方式添加矢量对象, 同addGraphic

参数名称 | 类型 | 描述信息
--- | --- | ---
`json` | object | Array.<object> | string | 矢量数据构造参数，可以用toJSON方法导出的值； 传string时对应的值存放的json路径地址。
`options` | object | 可选 加载控制参数,包含：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`clear` | boolean | `false` | 可选 是否清除图层已有数据
`flyTo` | boolean | `false` | 可选 是否加载完成后进行飞行到数据区域
`toPrimitive` | boolean |  | 可选 是否将entity类型转为primivate类型渲染（比如数据的point改为pointP展示，同类型大于10条时自动改为合并渲染类型展示）
`onEachFeature` | function |  | 可选 创建每个Graphic前的回调
`filter` | function | string |  | 可选 数据筛选方法，方法时，方法体内返回false时排除数据 filter:function(item,attr){return true}；支持字符串基于attr属性进行筛选的JS语句字符串，比如： attr.name=='安徽省' || attr.code=='340000' 。

##### 返回值:

绘制创建完成的Promise 添加后的Graphic对象

继承自:
  - GraphicLayer#loadJSON

#### loadSML(strSml, options) → Promise.<(Array.<BaseGraphic>|*)>
layer/graphicLayer/GraphicLayer.js 2346

加载SML格式文件（依赖 mars3d-plot 插件）

参数名称 | 类型 | 描述信息
--- | --- | ---
`strSml` | string | ArrayBuffer | SML文件规范的内容字符串
`options` | object | 可选 加载控制参数,包含：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`clear` | boolean | `false` | 可选 是否清除图层已有数据
`flyTo` | boolean | `false` | 可选 是否加载完成后进行飞行到数据区域
`toPrimitive` | boolean |  | 可选 是否将entity类型转为primivate类型渲染（比如数据的point改为pointP展示，同类型大于10条时自动改为合并渲染类型展示）
`onEachFeature` | function |  | 可选 创建每个Graphic前的回调
`filter` | function | string |  | 可选 数据筛选方法，方法时，方法体内返回false时排除数据 filter:function(item,attr){return true}；支持字符串基于attr属性进行筛选的JS语句字符串，比如： attr.name=='安徽省' || attr.code=='340000' 。

##### 返回值:

绘制创建完成的Promise 添加后的Graphic对象

继承自:
  - GraphicLayer#loadSML

#### refreshCluster() → void
layer/graphicLayer/GraphicLayer.js 1032

手动刷新聚合

##### 返回值:

无

继承自:
  - GraphicLayer#refreshCluster

#### refreshCollision() → void
layer/graphicLayer/GraphicLayer.js 1040

手动刷新碰撞检测

##### 返回值:

无

继承自:
  - GraphicLayer#refreshCollision

#### removeGraphic(graphic, hasDestroy) → GraphicLayer
layer/graphicLayer/GraphicLayer.js 1648

移除Graphic矢量数据

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`graphic` | BaseGraphic | * |  | 矢量数据
`hasDestroy` | boolean | `true` | 可选 是否释放矢量对象

##### 返回值:

当前对象本身，可以链式调用

继承自:
  - GraphicLayer#removeGraphic

#### setOpacity(value) → void
layer/graphicLayer/GraphicLayer.js 1449

设置整体透明度(globalAlpha值) , 非全部矢量数据都支持，具体需要对应Graphic支持才有效 对象本身透明度请修改 graphic.setStyle({ opacity: value })

参数名称 | 类型 | 描述信息
--- | --- | ---
`value` | number | 透明度

##### 返回值:

无

继承自:
  - GraphicLayer#setOpacity

#### setPlotScale(scale, redraw) → void
layer/graphicLayer/GraphicLayer.js 2316

设置JB基准比例尺（依赖 mars3d-plot 插件）

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`scale` | number |  | 基准比例尺值
`redraw` | number | `true` | 可选 是否按新基准比例尺重绘所有标号

##### 返回值:

继承自:
  - GraphicLayer#setPlotScale

#### startDraw(options) → Promise.<(BaseGraphic|*)>
layer/graphicLayer/GraphicLayer.js 2076

开始绘制矢量数据，绘制的数据会加载在当前图层。

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | * | 绘制参数，包含：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`type` | GraphicType | string |  | 类型
`style` | object |  | 可选 矢量数据样式，具体参考支持 `GraphicType`查询对应type的类
`attr` | object |  | 可选 矢量数据的 属性信息，可以任意附加属性。
`success` | function |  | 可选 绘制创建完成的回调方法，同drawCreated事件，例如： success: function (graphic){ } //以下为Entity支持的构造参数
`name` | string |  | 可选 矢量数据名称
`minPointNum` | number |  | 可选 线面数据时限定的最小坐标个数
`maxPointNum` | number |  | 可选 线面数据时限定的最大坐标个数
`validDrawPosition` | function |  | 可选 外部自定义校验坐标,比如判断限定在指定区域内绘制。
`updateDrawPosition` | function |  | 可选 外部自定义更新坐标,可以自定义处理特殊业务返回修改后的新坐标。
`drawShow` | boolean | `true` | 可选 绘制时，是否自动隐藏entity，可避免拾取坐标存在问题。
`addHeight` | number |  | 可选 在绘制时，在绘制点的基础上增加的高度值
`availability` | Cesium.TimeIntervalCollection | Cesium.TimeInterval | Array | object |  | 可选 指定时间范围内显示该对象
`description` | Cesium.Property | string |  | 可选 指定此实体的HTML描述的字符串属性（infoBox中展示）。

##### 返回值:

绘制创建完成的Promise,等价于success参数

继承自:
  - GraphicLayer#startDraw

##### 使用示例:

    //写法一，使用Promise
        graphicLayer.startDraw({
          type: "point",
          style: { pixelSize: 12, color: "#3388ff" },
        })
        .then(function (graphic) {
          console.log("绘制矢量对象完成", graphic);
        });

        //写法二，使用success回调方法参数
        graphicLayer.startDraw({
          type: "point",
          style: { pixelSize: 12, color: "#3388ff" },
          success: function (graphic){
            console.log("绘制矢量对象完成", graphic);
          }
        })

        //写法三，在图层全局监听完成事件
        graphicLayer.on(mars3d.EventType.drawCreated, function (e) {
          console.log("绘制矢量对象完成", e);
        });
        graphicLayer.startDraw({
          type: "point",
          style: { pixelSize: 12, color: "#3388ff" }
        })

#### startEditing(graphic, event) → GraphicLayer
layer/graphicLayer/GraphicLayer.js 2222

激活编辑指定的矢量数据

参数名称 | 类型 | 描述信息
--- | --- | ---
`graphic` | BaseGraphic | * | 需要激活编辑的矢量数据
`event` | object | 可选 内部使用，传递事件

##### 返回值:

当前对象本身,可以链式调用

继承自:
  - GraphicLayer#startEditing

#### stopDraw() → boolean
layer/graphicLayer/GraphicLayer.js 2115

停止绘制（不够最少点的对象和未开始绘制的对象会自动删除，已绘制了最少点的对象会完成在最后一个点位） 如果需要清除正在绘制的对象，请用 clearDrawing() 方法

##### 返回值:

是否清除了未完成的对象

继承自:
  - GraphicLayer#stopDraw

#### stopEditing() → GraphicLayer
layer/graphicLayer/GraphicLayer.js 2246

停止编辑，释放正在编辑的对象。

##### 返回值:

当前对象本身,可以链式调用

继承自:
  - GraphicLayer#stopEditing

#### toBottom() → void
layer/graphicLayer/GraphicLayer.js 601

将当前图层在map中层级进行 置底 (只对同类型图层间+贴地对象 有效)。

##### 返回值:

无

继承自:
  - GraphicLayer#toBottom

#### toGeoJSON(options) → object
layer/graphicLayer/GraphicLayer.js 1143

将图层数据导出为GeoJSON格式规范对象。

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 可选 参数对象:
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`noAlt` | boolean |  | 可选 不导出高度值
`closure` | boolean |  | 可选 是否闭合，true时增加第1个点 【仅对Polygon类型有效】
`noStyle` | boolean |  | 可选 不导出style样式，后期使用时在图层配置symbol
`standard` | boolean |  | 可选 不导出options等mars3d属性，仅导出坐标和attr属性的标准简洁GeoJSON
`stopEdit` | boolean | `false` | 可选 是否停止绘制或编辑

##### 返回值:

GeoJSON格式规范对象

继承自:
  - GraphicLayer#toGeoJSON

#### toSML() → string
layer/graphicLayer/GraphicLayer.js 2337

转为可以保存SML格式文件字符串（依赖 mars3d-plot 插件）

##### 返回值:

SML文件规范的内容字符串

继承自:
  - GraphicLayer#toSML

#### toTop() → void
layer/graphicLayer/GraphicLayer.js 586

将当前图层在map中层级进行 置顶 (只对同类型图层间+贴地对象 有效)。

##### 返回值:

无

继承自:
  - GraphicLayer#toTop