OsmBuildingsLayer

new mars3d.layer.OsmBuildingsLayer(options)

OSM在线 建筑物模型

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

参数对象,参数包括以下:

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

用于驱动细化细节级别的最大屏幕空间错误。数值加大,能让最终成像变模糊

maxMemory number 1024 可选

最大缓存内存大小(MB), 内部换算给 cacheBytes = maxMemory10241024、maximumCacheOverflowBytes = cacheBytes * 1.5 (另:如果同时配置了cacheBytes、maximumMemoryUsage时改参数无效)

cacheBytes number 可选

如果缓存包含当前视图不需要的块,则块缓存将被修剪到的大小(以字节为单位)。

maximumCacheOverflowBytes number 可选

如果当前视图需要超过Cesium3DTileset#cacheBytes,则允许缓存净空的最大额外内存(以字节为单位)。

maximumMemoryUsage number 可选

【cesium 1.107+弃用】数据集可以使用的最大内存量(以MB计),这个参数要根据当前客户端显卡显存来配置,如果我们场景只显示这一个模型数据,这个可以设置到显存的50% 左右,比如我的显存是4G,这个可以设置到2048左右。那么既保证不超过显存限制,又可以最大利用显存缓存。

style object | Cesium.Cesium3DTileStyle | function 可选

模型样式, 使用3D Tiles Styling language.

marsJzwStyle boolean | string false 可选

开启或设置建筑物特效样式。

customShader Cesium.CustomShader 可选

自定义shader效果

highlight object | OutlineEffect.Options 可选

高亮及其样式配置

参数名称 类型 默认值 描述信息
type string 可选

鼠标移入高亮 或 单击高亮(type:'click')

enabled boolean true 可选

是否启用

all boolean 可选

是否整体高亮, true:模型整体全部高亮,false:单个构件高亮

color string | function '#FFFF00' 可选

颜色,支持rgba字符串

outlineEffect boolean false 可选

默认为修改矢量对象本身的style高亮,true时采用OutlineEffect方式高亮。

filter function 可选

可以设置筛选排除一些构件, 排除的构件在filter方法内返回false

allowDrillPick boolean | function 可选

是否允许鼠标穿透拾取

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 -1 可选

图层父级的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方法参数。

参考:

继承

成员(属性)

allowDrillPick : boolean|function

是否允许鼠标穿透拾取

继承自:

alt : number

调整修改模型高度

继承自:

axis : string|Cesium.Axis

轴方向

继承自:

readonly boundingSphere : Cesium.BoundingSphere

模型的边界球体。

继承自:

center : LngLatPoint

模型当前中心点坐标

继承自:

readonly clip : TilesetClip

模型裁剪 对象

继承自:

readonly colorCorrection : TilesetPlanClip

颜色校正 对象

继承自:

customShader : Cesium.CustomShader

自定义shader效果,
如果默认无customShader,加载模型后动态修改customShader值

继承自:

readonly flat : TilesetFlat

模型压平 对象

继承自:

readonly flood : TilesetFlood

模型淹没 对象

继承自:

hasEdit : boolean

是否可以编辑

继承自:

height : number

调整修改模型高度, 同alt

继承自:

readonly highlight : object

鼠标移入或单击(type:'click')后的对应高亮的部分样式,空值时不高亮

继承自:

readonly inverseMatrix : Cesium.Matrix4

逆变换矩阵。

继承自:

readonly isEditing : boolean

是否正在编辑状态

继承自:

marsJzwStyle : boolean|object|string

开启或设置建筑物特效样式。

继承自:

readonly modelMatrix : Cesium.Matrix4

变换矩阵。

继承自:

readonly modelUpAxis : Cesium.Axis

模型的向上轴,比如Cesium.Axis.Z 或 Cesium.Axis.Y

继承自:

readonly orginCenterPoint : LngLatPoint

模型原始的中心点坐标

继承自:

readonly orginCenterPosition : Cesium.Cartesian3

模型原始的中心点坐标 (笛卡尔坐标)

继承自:

readonly orginMatrix : Cesium.Matrix4

模型原始矩阵

继承自:

readonly orginRotation : object

原始的旋转角度,示例:{ x: 0, y: 0, z: 0 }

继承自:

readonly planClip : TilesetPlanClip

模型裁剪 对象

继承自:

readonly position : Cesium.Cartesian3

模型当前中心点坐标 (笛卡尔坐标)

继承自:

rotation : object

旋转方向,示例:{ x: 0, y: 0, z: 0 }

继承自:

rotation_x : number

X轴上的旋转方向

继承自:

rotation_y : number

Y轴上的旋转方向

继承自:

rotation_z : number

Z轴上的旋转方向

继承自:

scale : number

缩放比例

继承自:

scaleX : number

单独自定义缩放X轴方向比例

继承自:

scaleY : number

单独自定义缩放Y轴方向比例

继承自:

scaleZ : number

单独自定义缩放Z轴方向比例

继承自:

splitDirection : Cesium.SplitDirection

卷帘对比时,设置所在的屏幕,NONE时不分屏

继承自:

style : object|Cesium.Cesium3DTileStyle|function

模型样式, 使用3D Tiles Styling language.

继承自:

readonly tileset : Cesium.Cesium3DTileset

模型对应的 Cesium3DTileset对象

继承自:

readonly transform : boolean

是否存在世界矩阵

继承自:

方法

bindPopup(content, options)TilesetLayer

绑定鼠标单击对象后的弹窗。

参数名称 类型 描述信息
content string | Array | function

弹窗内容html字符串,或者回调方法。

options Popup.StyleOptions 可选

控制参数

返回值:

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

继承自:

clampToGround(addHeight)void

模型自动贴地计算及处理, 因为模型在设计或生产时,模型的视角中心位置不一定在0,0,0点,此方法不是唯一准确的。

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

计算完成的贴地高度基础上增加的高度值。

返回值:

继承自:

closeHighlight()void

清除已选中的高亮,原有style的配置项需要与highlightStyle配置有一一对应关系,否则无法清除

返回值:

继承自:

closePopup()BaseGraphicLayer

关闭弹窗

返回值:

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

继承自:

getHeight(position)number

获取贴当前模型高度值。 PS: 该方法将只考虑已加载的LOD数据,而不一定是LOD集中最详细的最底层数据。 当采样点云时,此函数将始终返回undefined。

参数名称 类型 描述信息
position string | Array | LngLatPoint | Cesium.Cartesian3 | *

坐标位置

返回值:

贴模型的高度

继承自:

getPositionByOrginMatrix(position)Cesium.Cartesian3

获取构件节点位置,现对于原始矩阵变化后的新位置

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

原始位置

返回值:

新位置

继承自:

hasPopup()boolean

是否存在Popup绑定

返回值:

是否存在Popup绑定

继承自:

openHighlight(highlightStyle, closeLast, pickedObject)void

高亮对象。 提示:该方法不支持 outlineEffect: true 高亮,因为outlineEffect需要鼠标拾取构件。

参数名称 类型 默认值 描述信息
highlightStyle object 可选

高亮的样式,具体见各GraphicType矢量数据的style参数。

closeLast boolean true 可选

是否清除地图上上一次的高亮对象

pickedObject Cesium.Cesium3DTileFeature 可选

需要高亮的构件, 如果是mars3d的相关事件内时,可以取 event.pickedObject

返回值:

继承自:

reload()void

重新加载模型

返回值:
继承自:

setOpacity(value)void

设置透明度

参数名称 类型 描述信息
value number

透明度

返回值:

继承自:

startEditing()void

开始编辑对象

返回值:

继承自:

stopEditing()void

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

返回值:

继承自:

unbindPopup()BaseGraphicLayer

解除绑定的鼠标单击对象后的弹窗。

返回值:

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

继承自:

updateMatrix()Cesium.Matrix4|undefined

重新计算当前矩阵(需要是否存在世界矩阵时)

返回值:

计算完成的矩阵

继承自:

updateMatrix2()Cesium.Matrix4

重新计算当前矩阵,普通方式, 此种方式[x,y不能多次更改]

返回值:

计算完成的矩阵

继承自: