Slope

new mars3d.thing.Slope(options)

坡度坡向分析

参数名称 类型 描述信息
options object 可选

参数对象,包括以下:

参数名称 类型 默认值 描述信息
positions Array.<Array> | Array.<string> | Array.<LngLatPoint> | Array.<Cesium.Cartesian3> 可选

分析区域 坐标位置数组

arrow PolylinePrimitive.StyleOptions | object 可选

箭头线的样式,包括以下:

参数名称 类型 默认值 描述信息
show boolean true 可选

是否显示箭头线

color Cesium.Color Cesium.Color.YELLOW 可选

颜色

width number 15 可选

箭头宽度值

scale number 0.3 可选

箭头长度的比例(网格大小),根据绘制区域的大小和插值数来计算实际长度值。

length number 可选

箭头长度固定值,将覆盖scale参数

tooltip function 可选

可以指定绑定tooltip

tooltipOptions Tooltip.StyleOptions 可选

tooltip弹窗时的配置参数,也支持如pointerEvents等Tooltip构造参数

popup function 可选

可以指定绑定popup

popupOptions Popup.StyleOptions 可选

popup弹窗时的配置参数,也支持如pointerEvents等Popup构造参数

id string | number createGuid() 可选

对象的id标识

enabled boolean true 可选

对象的启用状态

eventParent BaseClass | boolean 可选

指定的事件冒泡对象,默认为所加入的map对象,false时不冒泡事件

参考:

继承

成员(属性)

enabled : boolean

设置对象的启用和禁用状态。

继承自:

enabledEvent : boolean

设置事件的启用和禁用状态

继承自:

readonly id : string|number

对象的id标识

继承自:

readonly isAdded : boolean

是否已添加到地图

继承自:

readonly isDestroy : boolean

是否已经销毁了

继承自:

readonly options : object

当前类的构造参数

继承自:

readonly state : State

当前对象的状态

继承自:

readonly type : string|number

类型

继承自:

方法

static mars3d.thing.Slope.getSlope(options)Promise.<object>

异步计算点的坡度坡向

参数名称 类型 描述信息
options object

参数对象,具有以下属性:

参数名称 类型 默认值 描述信息
map Map

Map地图对象

positions Array.<Cesium.Cartesian3>

坐标数组

endItem getSlope_endItem 可选

异步计算中,每计算完成1个点的坡度坡向后 的回调方法

splitNum number 8 可选

插值数,横纵等比分割的网格个数(概略值,有经纬网网格来插值)

radius number 2 可选

取样分析,点周边半径(单位:米)

count number 4 可选

取样分析,点周边象限内点的数量,共计算 count*4 个点

has3dtiles boolean auto 可选

是否在3dtiles模型上分析(模型分析较慢,按需开启),默认内部根据点的位置自动判断(但可能不准)

objectsToExclude Array.<object> 可选

贴模型分析时,排除的不进行贴模型计算的模型对象,可以是: primitives, entities, 或 3D Tiles features

exact boolean false 可选

是否进行精确计算, 传false时是否快速概略计算方式,该方式计算精度较低,但计算速度快,仅能计算在当前视域内坐标的高度

返回值:

异步计算完成的Promise

add(positions, options)void

添加计算的 位置

参数名称 类型 默认值 描述信息
positions Array.<Array> | Array.<LngLatPoint> | Array.<Cesium.Cartesian3> | LngLatPoint | Cesium.Cartesian3

坐标数组 或 单个坐标

options object {} 可选

控制参数,包括:

参数名称 类型 默认值 描述信息
splitNum number 8 可选

插值数,横纵等比分割的网格个数(概略值,有经纬网网格来插值)

radius number 2 可选

取样分析,点周边半径(单位:米)

count number 4 可选

取样分析,点周边象限内点的数量,共计算 count*4 个点

has3dtiles boolean auto 可选

是否在3dtiles模型上分析(模型分析较慢,按需开启),默认内部根据点的位置自动判断(但可能不准)

objectsToExclude Array.<object> 可选

贴模型分析时,排除的不进行贴模型计算的模型对象,可以是: primitives, entities, 或 3D Tiles features

exact boolean false 可选

是否进行精确计算, 传false时是否快速概略计算方式,该方式计算精度较低,但计算速度快,仅能计算在当前视域内坐标的高度

返回值:

无,计算结果在 end事件中返回

addEventParent(obj)BaseClass

添加抛出事件到父类,它将接收传播的事件

参数名称 类型 描述信息
obj object

父类对象

返回值:

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

继承自:

addTo(map)BaseThing

添加到地图上,同 map.addThing

参数名称 类型 描述信息
map Map

地图对象

返回值:

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

继承自:

clear()void

清除分析

返回值:

destroy(noDel)void

销毁当前对象

参数名称 类型 默认值 描述信息
noDel boolean false 可选

false:会自动delete释放所有属性,true:不delete绑定的变量

返回值:

继承自:

fire(type, data, propagate)BaseClass

触发指定类型的事件。

参数名称 类型 描述信息
type EventType | string

事件类型

data object 可选

传输的数据或对象,可在事件回调方法中event对象中获取进行使用

propagate BaseClass 可选

将事件传播给父类 (用addEventParent设置)

返回值:

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

继承自:

getSlope(c1, c2)number

计算两点之间的坡度

参数名称 类型 描述信息
c1 Cesium.Cartesian3

点1

c2 Cesium.Cartesian3

点2

返回值:

坡度值

hasEventParent(obj)boolean

是否绑定了抛出事件到指定父类

参数名称 类型 描述信息
obj object

父类对象

返回值:

是否绑定了抛出事件

继承自:

listens(type, propagate)boolean

是否有绑定指定的事件

参数名称 类型 描述信息
type EventType | string

事件类型

propagate BaseClass 可选

是否判断指定的父类 (用addEventParent设置的)

返回值:

是否存在

继承自:

off(types, fn, context)BaseClass

解除绑定指定类型事件监听器

参数名称 类型 描述信息
types EventType | string | Array.<EventType> 可选

事件类型,未传值时解绑所有事件

fn function 可选

绑定的监听器回调方法,未传值时解绑所有指定类型对应事件,特殊说明:map.on监听的Cesium相关原生事件时必须传入该参数

context object 可选

侦听器的上下文(this关键字将指向的对象)。

返回值:

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

继承自:

on(types, fn, context)BaseClass

绑定指定类型事件监听器, 支持在监听中调用 event.stopPropagation(); 阻止事件冒泡

参数名称 类型 描述信息
types EventType | string | Array.<EventType> | Array.<string> | object

事件类型

fn function

绑定的监听器回调方法

context object 可选

侦听器的上下文(this关键字将指向的对象)。

返回值:

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

继承自:

once(types, fn, context)BaseClass

绑定一次性执行的指定类型事件监听器 与on类似,监听器只会被触发一次,然后被删除。

参数名称 类型 描述信息
types EventType | string | Array.<EventType>

事件类型

fn function

绑定的监听器回调方法

context object 可选

侦听器的上下文(this关键字将指向的对象)。

返回值:

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

继承自:

remove(destroy)void

从地图上移除,同map.removeThing

参数名称 类型 描述信息
destroy boolean 可选

是否调用destroy释放

返回值:

继承自:

removeEventParent(obj)BaseClass

移除抛出事件到父类

参数名称 类型 描述信息
obj object

父类对象

返回值:

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

继承自:

setOptions(options)BaseThing|BaseControl|object

更新图层参数

参数名称 类型 描述信息
options object

与类的构造方法参数相同

返回值:

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

继承自:

toJSON()object

将对象转为Json简单对象,用于存储后再传参加载

返回值:

Json简单对象

继承自:

定义的类型

mars3d.thing.Slope.EventType

当前类支持的EventType事件类型

属性:
属性名称 类型 描述信息
endItem string

多个数据异步分析时,完成其中一个时的回调事件

end string

多个数据异步分析时,完成所有的回调事件

使用示例:
//绑定监听事件
thing.on(mars3d.EventType.change, function (event) {
  console.log('发送了变化', event)
})
参考: