ModelPrimitive

new mars3d.graphic.ModelPrimitive(options)

gltf小模型 Primitive图元矢量对象

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

参数对象,包括以下:

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

坐标位置

orientation Cesium.Property 可选

实体方向,仅position是回调属性时有效

modelMatrix Cesium.Matrix4 可选

将图元(所有几何实例)从模型转换为世界坐标的4x4变换矩阵,可以替代position。

style ModelPrimitive.StyleOptions

样式信息

attr object | BaseGraphic.AjaxAttr 可选

附件的属性信息,可以任意附加属性,导出geojson或json时会自动处理导出。

colorCorrection object 可选

颜色校正 对象, 可传入TilesetColorCorrection构造参数

frameRate number 1 可选

当postion为CallbackProperty时,多少帧获取一次数据。用于控制效率,如果卡顿就把该数值调大一些。

appearance Cesium.Appearance 可选

[cesium原生]用于渲染图元的外观。

attributes Cesium.Appearance 可选

[cesium原生]每个实例的属性。

fixedFrameTransform Cesium.Transforms.LocalFrameToFixedFrame Cesium.Transforms.eastNorthUpToFixedFrame 可选

参考系

maxCacheCount number 50 可选

当使用addDynamicPosition设置为动画轨迹位置时,保留的坐标点数量,传-1时不限制

forwardExtrapolationType Cesium.ExtrapolationType Cesium.ExtrapolationType.NONE 可选

当使用addDynamicPosition设置为动画轨迹位置时,在任何可用坐标之后一次请求值时要执行的推断类型,默认不显示,Cesium.ExtrapolationType.HOLD时最后一个坐标位置。

backwardExtrapolationType Cesium.ExtrapolationType Cesium.ExtrapolationType.NONE 可选

当使用addDynamicPosition设置为动画轨迹位置时, 在任何可用坐标之前一次请求值时要执行的推断类型,默认不显示,Cesium.ExtrapolationType.HOLD时为第一个坐标位置。

clampToTileset boolean 可选

当使用addDynamicPosition设置为动画轨迹位置时,是否进行贴模型。

frameRateHeight number 30 可选

当使用addDynamicPosition设置为动画轨迹位置时,并clampToTileset:true时,多少帧计算一次贴模型高度

referenceFrame Cesium.ReferenceFrame Cesium.ReferenceFrame.FIXED 可选

当使用addDynamicPosition设置为动画轨迹位置时,position位置被定义的参考系。

numberOfDerivatives number 0 可选

当使用addDynamicPosition设置为动画轨迹位置时,每个位置的导数的数量;即速度、加速度等。

autoMiddleDynamicPosition boolean 可选

当使用addDynamicPosition设置为动画轨迹位置时,如果中间缺少数据时是否自动添加中间点。

popup string | Array | function 可选

绑定的popup弹窗值,也可以bindPopup方法绑定

popupOptions Popup.StyleOptions 可选

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

tooltip string | Array | function 可选

绑定的tooltip弹窗值,也可以bindTooltip方法绑

tooltipOptions Tooltip.StyleOptions 可选

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

contextmenuItems object 可选

当矢量数据支持右键菜单时,也可以bindContextMenu方法绑定

id string | number createGuid() 可选

矢量数据id标识

name string 可选

矢量数据名称

show boolean true 可选

矢量数据是否显示

availability Cesium.TimeIntervalCollection | Cesium.TimeInterval | Array | object 可选

指定时间范围内显示该对象

eventParent BaseClass | boolean 可选

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

allowDrillPick boolean | function 可选

是否允许鼠标穿透拾取

flyTo boolean 可选

加载完成数据后是否自动飞行定位到数据所在的区域。

flyToOptions object 可选

加载完成数据后是否自动飞行定位到数据所在的区域的对应 BaseGraphic#flyTo方法参数。

参考:

继承

成员(属性)

allowDrillPick : boolean|function

是否允许鼠标穿透拾取

继承自:

attr : object

属性信息

继承自:

availability : Cesium.TimeIntervalCollection

指定时间范围内显示该对象 [提示:仅部分子类实现,非所有对象都支持]

继承自:
使用示例:
// 普通传值方式,多个【建议】
graphic.availability = [
  { start: "2017-08-25 08:00:00", stop: "2017-08-25 08:01:20", isStartIncluded: true, isStopIncluded: false },
  { start: "2017-08-25 09:00:00", duration: 10 } //支持不配置stop,直接配置duration秒数时长
]
// 也支持相对时间的 秒数 传值(相对于map.clock.startTime)
graphic.availability = [
  { start: 0, stop: 10, isStartIncluded: true, isStopIncluded: false },
  { start:30, duration: 10 } //支持不配置stop,直接配置duration秒数时长
]

// 普通传值方式,单个
graphic.availability = { start: "2017-08-25 08:00:00", stop: "2017-08-25 08:01:20", isStartIncluded: true, isStopIncluded: false }

// cesium原生写法, 多个
graphic.availability = new Cesium.TimeIntervalCollection([
  new Cesium.TimeInterval({
    start: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:00")),
    stop: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:20")),
    isStartIncluded: true,
    isStopIncluded: false
  }),
])

// cesium原生写法,单个
graphic.availability = new Cesium.TimeInterval({
  start: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:00")),
  stop: Cesium.JulianDate.fromDate(new Date("2017-08-25 08:00:20")),
  isStartIncluded: true, //等于start时,是否显示
  isStopIncluded: false  //等于stop时,是否显示
})

readonly center : Cesium.Cartesian3

中心点坐标 (笛卡尔坐标)

继承自:

readonly centerPoint : LngLatPoint

中心点坐标

继承自:

readonly colorCorrection : TilesetColorCorrection

颜色校正 对象

readonly coordinate : Array

位置坐标(数组对象),示例[113.123456,31.123456,30.1]

继承自:

readonly czmObject : Cesium.Entity|Cesium.Primitive|Cesium.GroundPrimitive|Cesium.ClassificationPrimitive|*

矢量数据对应的 Cesium内部对象 (不同子类中实现)

继承自:

debugAxis : boolean

是否显示3个方向轴,用于对比测试

继承自:

debugAxisLength : number

显示3个方向轴时的对应轴长度,用于对比测试

继承自:

readonly ellipsoid : Cesium.Ellipsoid

当前地图的ellipsoid

继承自:

enabledEvent : boolean

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

继承自:

readonly fixedFrameTransform : Cesium.Transforms.LocalFrameToFixedFrame

从参考系到所提供椭球体的固定参考系的4x4变换矩阵

继承自:

readonly geometryInstanceAttributes : object

返回实例可修改的属性。Cesium.GeometryInstance

继承自:
使用示例:
var attributes = primitiveGraphic.geometryInstanceAttributes;
attributes.color = Cesium.ColorGeometryInstanceAttribute.toValue(Cesium.Color.AQUA);
attributes.show = Cesium.ShowGeometryInstanceAttribute.toValue(true);

readonly groundPrimitiveCollection : Cesium.PrimitiveCollection

当加载贴地primitive数据的内部Cesium容器

继承自:

readonly hasAjaxAttr : boolean

是否 后端动态属性

继承自:

readonly hasAjaxPostion : boolean

是否 后端动态坐标

继承自:

readonly hasCluster : boolean

是否支持聚合

继承自:

hasEdit : boolean

是否判断内部是否允许编辑(可外部传入禁用编辑,但不允许编辑的对象传入是无效的)

继承自:

readonly hasOpacity : boolean

是否可以调整透明度

继承自:

heading : number

四周方向角,0-360度角度值
提示:父类属性,非所有子类都具备

继承自:

height : number

坐标对应的高度值(单位:米)

继承自:

readonly id : string|number

对象的id标识

继承自:

readonly isAdded : boolean

是否已添加到图层

继承自:

readonly isCluster : boolean

是否被聚合

继承自:

readonly isDestroy : boolean

是否已经销毁了

继承自:

readonly isDrawing : boolean

是否正在绘制状态

继承自:

readonly isEditing : boolean

是否正在编辑状态,不是所有子类均支持编辑

继承自:

readonly isPoint : boolean

是否为点状数据 true: 点状,有position坐标 false:线面,有positions坐标

继承自:

readonly isPrivate : boolean

是否Mars3D内部的私有对象,如标绘拖拽点等

继承自:

readonly label : Cesium.Label|*

附加的label文本对象

继承自:

readonly modelMatrix : Cesium.Matrix4

将图元(所有几何实例)从模型转换为世界坐标的4x4变换矩阵。
提示:父类属性,非所有子类都具备

继承自:

name : string

名称

继承自:

objectsToExclude : Array.<object>|undefined

贴模型分析时,排除的不进行贴模型计算的模型对象,默认是当前本身,可以是: primitives, entities 等

继承自:

offsetHeight : number

平移指定偏移高度(相对于原始坐标值),【提示:仅部分子类支持,如 PolygonPrimitiveRectanglePrimitiveBoxPrimitiveCylinderPrimitiveEllipsoidPrimitiveCorridorPrimitive

继承自:

readonly options : object

当前类的构造参数

继承自:

readonly orientation : Cesium.Quaternion

三维空间中的旋转 【仅部分对象支持】

继承自:

pid : string|number

对象的pid标识

继承自:

pitch : number

俯仰角,上下摇摆的角度,0-360度角度值
提示:父类属性,非所有子类都具备

继承自:

readonly point : LngLatPoint

位置坐标

继承自:

position : Cesium.Cartesian3|LngLatPoint

位置坐标 (笛卡尔坐标), 赋值时可以传入LatLngPoint对象

继承自:

readonly positionShow : Cesium.Cartesian3

当前实时位置坐标(笛卡尔坐标)

继承自:

readonly positionsShow : Array.<Cesium.Cartesian3>

同 positions只是为了兼容entity的同名属性

继承自:

readonly primitive : Cesium.Primitive|Cesium.GroundPrimitive|Cesium.ClassificationPrimitive|*

矢量数据对应的 Cesium内部对象

继承自:

readonly primitiveCollection : Cesium.PrimitiveCollection|Cesium.LabelCollection|Cesium.BillboardCollection|Cesium.PointPrimitiveCollection|Cesium.CloudCollection

当加载primitive数据的内部Cesium容器

继承自:

property : Cesium.SampledPositionProperty|Cesium.CallbackProperty

动态位置坐标

继承自:

readonly ready : boolean

矢量数据对应的渲染是否完成

继承自:

readonly readyPromise : Promise.<Cesium.Model>

获取模型完成解析加载完成的Promise承诺, 等价于load事件(区别在于load事件必须在load完成前绑定才能监听)。

roll : number

滚转角,左右摆动的角度,0-360度角度值
提示:父类属性,非所有子类都具备

继承自:

scale : number

模型整体的缩放比例

scaleX : number

X轴方向缩放比例

scaleY : number

Y轴方向缩放比例

scaleZ : number

Z轴方向缩放比例

show : boolean

显示隐藏状态(属性值)

继承自:

splitDirection : Cesium.SplitDirection

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

readonly state : State

当前对象的状态

继承自:

style : object

样式信息

继承自:

readonly trackedEntity : Cesium.Entity|*

用于 map.trackedEntity 追踪的

继承自:

readonly type : string

矢量数据类型

继承自:

readonly uniforms : object|undefined

对应材质的uniforms(当赋有材质时), 一个对象,它的属性被用来设置片段着色器shader。

对象属性值可以是常量或函数。这个函数将在每一帧后处理阶段执行之前被调用。

常量值也可以是图像的URI、数据URI,或者可以用作纹理的HTML元素,如HTMLImageElement或HTMLCanvasElement。

继承自:

zIndex : number

图层顺序,数字大的在上面。
只对 同类型 + 贴地(clampToGround: true) 的部分线面矢量对象间有效

继承自:

方法

abstract _mountedHook()void

对象添加到图层前创建一些对象的钩子方法, 只会调用一次

返回值:

继承自:

addDynamicPosition(point, currTime)BasePointPrimitive

设置并添加动画轨迹位置,按“指定时间”运动到达“指定位置”。 【仅LabelPrimitive、PointPrimitive、BillboardPrimitive、ModelPrimitive 等部分子类支持】

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

指定位置坐标

currTime Cesium.JulianDate | Date | string | number Cesium.JulianDate.now() 可选

指定时间。当为String时,可以传入'2021-01-01 12:13:00'; 当为Number时,可以传入当前时间延迟的秒数。

返回值:

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

继承自:

addEventParent(obj)BaseClass

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

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

父类对象

返回值:

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

继承自:

addTo(layer)BaseGraphic|*

添加到图层上,同 layer.addGraphic

参数名称 类型 描述信息
layer GraphicLayer

图层对象

返回值:

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

继承自:

autoSurfaceHeight(options)Promise.<object>

异步计算更新坐标高度进行贴地(或贴模型),内部自动调用PointUtil#getSurfaceHeight方法处理。

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

参数对象:

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

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

objectsToExclude Array.<object> 可选

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

返回值:

异步计算完成的Promise

继承自:

bindContextMenu(content, options)BaseGraphic|*

绑定右键菜单

参数名称 类型 默认值 描述信息
content Array.<object>

右键菜单配置数组,数组中每一项包括:

参数名称 类型 描述信息
text string | function 可选

菜单文字

icon string 可选

图标,可以是:图片url路径、base64字符串、svg字符串、字体图标class名

show function | boolean 可选

菜单项是否显示的回调方法

callback function 可选

菜单项单击后的回调方法

children Array.<object> 可选

当有二级子菜单时,配置数组。

options object {} 可选

控制参数

参数名称 类型 描述信息
offsetX number 可选

用于非规则对象时,横向偏移的px像素值

offsetY number 可选

用于非规则对象时,垂直方向偏移的px像素值

返回值:

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

继承自:
使用示例:
graphic.bindContextMenu([
        {
          text: '删除对象',
          icon: 'fa fa-trash-o',
          callback: function (e) {
            let graphic = e.graphic
            if (graphic) {
              graphic.remove()
            }
          },
        },
      ])

bindHighlight(options)void

绑定鼠标移入或单击后的 对象高亮

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

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

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

事件类型,默认为鼠标移入高亮,也可以指定'click'单击高亮.

返回值:

继承自:

bindPickId(item)BaseGraphic|*

绑定Cesium内部对象进行相关管理。

参数名称 类型 描述信息
item *

Cesium对象

返回值:

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

继承自:

bindPopup(content, options)BaseGraphic|*

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

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

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

options Popup.StyleOptions 可选

控制参数

返回值:

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

继承自:

bindTooltip(content, options)BaseGraphic|*

绑定鼠标移入的弹窗

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

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

options Tooltip.StyleOptions 可选

控制参数

返回值:

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

继承自:

clearAjaxPostion()void

清除 后端动态坐标

返回值:
继承自:

closeContextMenu()BaseGraphic|*

关闭右键菜单

返回值:

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

继承自:

closeHighlight()void

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

返回值:

继承自:

closePopup()BaseGraphic|*

关闭弹窗

返回值:

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

继承自:

closeSmallTooltip()BaseGraphic|*

关闭小提示窗

返回值:

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

继承自:

closeTooltip()BaseGraphic|*

关闭弹窗

返回值:

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

继承自:

destroy(noDel)void

销毁当前对象

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

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

返回值:

继承自:

enableControl(value)void

启用或禁用所有内部控件(含tooltip、popup、contextmenu)

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

是否启用

返回值:

继承自:

endDraw()boolean

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

返回值:

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

继承自:

fire(type, data, propagate)BaseClass

触发指定类型的事件。

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

事件类型

data object 可选

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

propagate BaseClass 可选

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

返回值:

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

继承自:

flyTo(options)Promise.<boolean>

飞行定位至 数据所在的视角

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

参数对象:

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

点状数据时,相机距离目标点的距离(单位:米)

scale number 1.2 可选

线面数据时,缩放比例,可以控制视角比矩形略大一些,这样效果更友好。

minHeight number 可选

定位时相机的最小高度值,用于控制避免异常数据

maxHeight number 可选

定位时相机的最大高度值,用于控制避免异常数据

heading number 可选

方向角度值,绕垂直于地心的轴旋转角度, 0至360

pitch number 可选

俯仰角度值,绕纬度线旋转角度, -90至90

roll number 可选

翻滚角度值,绕经度线旋转角度,-90至90

duration number 可选

飞行时间(单位:秒)。如果省略,SDK内部会根据飞行距离计算出理想的飞行时间。

complete Cesium.Camera.FlightCompleteCallback 可选

飞行完成后要执行的函数。

cancel Cesium.Camera.FlightCancelledCallback 可选

飞行取消时要执行的函数。

endTransform Cesium.Matrix4 可选

变换矩阵表示飞行结束时相机所处的参照系。

maximumHeight number 可选

飞行高峰时的最大高度。

pitchAdjustHeight number 可选

如果相机飞得比这个值高,在飞行过程中调整俯仰以向下看,并保持地球在视口。

flyOverLongitude number 可选

地球上的两点之间总有两条路。这个选项迫使相机选择战斗方向飞过那个经度。

flyOverLongitudeWeight number 可选

仅在通过flyOverLongitude指定的lon上空飞行,只要该方式的时间不超过flyOverLongitudeWeight的短途时间。

convert boolean true 可选

是否将目的地从世界坐标转换为场景坐标(仅在不使用3D时相关)。

easingFunction Cesium.EasingFunction.Callback 可选

控制在飞行过程中如何插值时间。

返回值:

如果飞行成功则解析为true的承诺,如果当前未在场景中可视化目标或取消飞行,则为false的Promise

继承自:

async getAjaxAttr()object

获取后端动态属性,当存在attr是动态属性配置时可用【attr.type === "ajax" && attr.url】

返回值:

实时获取当前的动态属性值

继承自:

getAvailabilityJson()Array.<object>

获取时间范围的简单对象数组(转为相对map.clock.startTime的相对数字)

返回值:

时间对象列表

继承自:

getAvailabilityShow(time)boolean

获取指定时间下的时序对应的 显示隐藏 状态

参数名称 类型 描述信息
time Cesium.JulianDate

指定时间

返回值:

显示隐藏 状态

继承自:

getContextMenu(hasLayer)Array.<object>

获取绑定的右键菜单数组

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

是获取图层上的右键菜单

返回值:

右键菜单数组

继承自:

getCoordinate(noAlt)Array

位置坐标(数组对象),示例[113.123456,31.123456,30.1]

参数名称 类型 描述信息
noAlt boolean

true时不导出高度值

返回值:

位置坐标(数组对象)

继承自:

getMaxHeight()number

获取数据的最大高度

返回值:

高度

继承自:

getPopup()Popup

获取当前对象打开的Popup对象

返回值:

当前对象打开的Popup对象

继承自:

getRealShow(time)boolean

获取当前对象真实实际的显示状态

参数名称 类型 描述信息
time Cesium.JulianDate 可选

当前时间,不传时不做availability判断

返回值:

真实的实时显示状态,当时序范围外,被聚合时返回的是false

继承自:

getRectangle(options)Cesium.Rectangle|object

获取数据的矩形边界

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

控制参数

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

是否格式化,格式化时示例: { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 }

onePoint boolean true 可选

一个点位时是否返回边界值

返回值:

isFormat:true时,返回格式化对象,isFormat:false时返回Cesium.Rectangle对象

继承自:

getTooltip()Tooltip

获取当前对象打开的Tooltip对象

返回值:

当前对象打开的Tooltip对象

继承自:

hasContextMenu(hasLayer)boolean

是否有绑定的右键菜单

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

是否判断图层上的右键菜单

返回值:

是否有绑定

继承自:

hasEventParent(obj)boolean

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

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

父类对象

返回值:

是否绑定了抛出事件

继承自:

hasPopup(hasLayer)boolean

是否存在Popup绑定

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

是否判断图层上的Popup

返回值:

是否存在Popup绑定

继承自:

hasTooltip(hasLayer)boolean

是否绑定了tooltip

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

是否判断图层上的tooltip

返回值:

是否绑定

继承自:

isInView(position, options)boolean

判断点坐标是否在球的背面 或当前视域屏幕内

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

坐标

options object 可选

参数

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

是否判断是否在屏幕内,默认不计算判断,可以按需开启

返回值:

是否后端动态坐标

继承自:

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关键字将指向的对象)。

返回值:

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

继承自:

openContextMenu(position)BaseGraphic|*

打开右键菜单

参数名称 类型 默认值 描述信息
position Cesium.Cartesian3 this.center 可选

矢量对象 或 显示的位置

返回值:

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

继承自:

openHighlight(highlightStyle, closeLast)void

高亮对象。

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

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

closeLast boolean true 可选

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

返回值:

继承自:

openPopup(position, event)BaseGraphic|*

打开绑定的弹窗

参数名称 类型 默认值 描述信息
position LngLatPoint | Cesium.Cartesian3 | Array.<number> | * this.center 可选

矢量对象 或 显示的位置

event object 可选

用于抛出事件时的相关额外属性

返回值:

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

继承自:

openSmallTooltip(position, message)BaseGraphic|*

显示小提示窗,一般用于鼠标操作的提示。

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

显示的屏幕坐标位置 或 笛卡尔坐标位置

message *

显示的内容

返回值:

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

继承自:

openTooltip(position, event)BaseGraphic|*

打开绑定的tooltip弹窗

参数名称 类型 默认值 描述信息
position LngLatPoint | Cesium.Cartesian3 | Array.<number> this.center 可选

显示的位置,默认为矢量对象所在点或中心点位置

event object 可选

用于抛出事件时的相关额外属性

返回值:

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

继承自:

redraw(style)BasePrimitive

重新渲染

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

新的样式信息

返回值:

当前对象本身

继承自:

remove(hasDestroy)void

从图层上移除,同 layer.removeGraphic

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

是否调用destroy释放

返回值:

继承自:

removeEventParent(obj)BaseClass

移除抛出事件到父类

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

父类对象

返回值:

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

继承自:

setAjaxPostion(position)boolean

设置后端动态坐标,当存在点状对象是动态属性配置时可用【position.type === "ajax" && position.url)】

参数名称 类型 描述信息
position BaseGraphic.AjaxPosition

动态坐标配置

返回值:

是否后端动态坐标

继承自:

setOffsetHeight(height, index)void

平移指定偏移高度(相对于原始坐标值),【提示:仅部分子类支持】

参数名称 类型 描述信息
height number 可选

平移的高度值(单位:米),为空时取每个对象的offsetHeight值

index number | undefined 可选

Combine大数据对象中,更新的instances对象index值,为空时更新所有对象。

返回值:

继承自:

setOpacity(value)void

设置整体透明度(globalAlpha值), 不是所有类型均支持,主要看数据类型和材质类型决定。 对象本身透明度请用 graphic.setStyle({ opacity: value })

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

透明度

返回值:

setOptions(options, funOptions)BaseGraphic|*

重新赋值参数,同构造方法参数一致。

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

参数,与类的构造方法参数相同

funOptions object 可选

方法参数

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

是否合并参数, 如是完整覆盖不合并老的options,请传入fasle

返回值:

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

继承自:

setStyle(newStyle, funOptions)BaseGraphic|*

设置 样式信息 的钩子方法

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

本次更新的部分样式信息,内部会合并属性

funOptions object 可选

方法参数

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

是否合并参数, 如是完整覆盖不合并老的options,请传入fasle

返回值:

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

继承自:

startDraw(layer)void

开始绘制矢量数据,绘制的数据会加载在layer图层。

参数名称 类型 描述信息
layer GraphicLayer

图层

返回值:

继承自:

startEditing()void

开始编辑对象

返回值:

继承自:

startFlicker(options)FlickerEntity

高亮闪烁

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

参数

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

闪烁的总时长(秒),未设置时不自动停止。

step number 10 可选

闪烁增量, 控制速度

color Cesium.Color | string 可选

高亮的颜色

maxAlpha number 0.3 可选

闪烁的最大透明度,从 0 到 maxAlpha 渐变

onEnd function 可选

播放完成后的回调方法

返回值:

高亮闪烁控制 对象

stopDraw()void

停止绘制

返回值:

继承自:

stopEditing()void

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

返回值:

继承自:

stopFlicker()void

停止高亮闪烁

返回值:

toBottom()void

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

返回值:

继承自:

toGeoJSON(options)object

将矢量数据导出为GeoJSON格式规范对象。

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

参数对象:

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

不导出高度值

noStyle boolean 可选

不导出style样式,后期使用时在图层配置symbol

standard boolean 可选

不导出options等mars3d属性,仅导出坐标和attr属性的标准简洁GeoJSON

返回值:

GeoJSON格式规范对象

继承自:

toJSON()object

将矢量数据的坐标、样式及属性等信息导出为对象,可以用于存储。

返回值:

导出的坐标、样式及属性等信息

继承自:

toTop()void

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

返回值:

继承自:

unbindContextMenu(bubbling)BaseGraphic|*

解除绑定的右键菜单

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

单击事件中是否继续冒泡查找

返回值:

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

继承自:

unbindHighlight()void

解绑鼠标移入或单击后的高亮处理

返回值:

继承自:

unbindPopup(bubbling)BaseGraphic|*

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

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

单击事件中是否继续冒泡往上级查找

返回值:

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

继承自:

unbindTooltip(bubbling)BaseGraphic|*

解除绑定的鼠标移入对象后的弹窗。

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

单击事件中是否继续冒泡查找

返回值:

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

继承自:

定义的类型

mars3d.graphic.ModelPrimitive.StyleOptions

gltf小模型 支持的样式信息

属性:
属性名称 类型 可选 默认值 描述信息
url string | Cesium.Resource <可选>

glTF模型的URI的字符串或资源属性。

scale number <可选>
1.0

缩放比例

minimumPixelSize number <可选>
0.0

指定模型的近似最小像素大小,而不考虑scale缩放,内部会计算像素对应的实际scale值。

maximumScale number <可选>

内部计算minimumPixelSize对应的实际scale值时,限定的最大的scale缩放比例。

scaleX number <可选>
1

X轴方向缩放比例

scaleY number <可选>
1

Y轴方向缩放比例

scaleZ number <可选>
1

Z轴方向缩放比例

heading number <可选>
0

方向角 (度数值,0-360度),优先级高于orientation

pitch number <可选>
0

俯仰角(度数值,0-360度),优先级高于orientation

roll number <可选>
0

翻滚角(度数值,0-360度),优先级高于orientation

mergeOrientation boolean <可选>
false

当存在orientation时(如addDynamicPosition等),设置为true时,可以在orientation基础的方式值上叠加设置是heading、pitch、roll值,比如用于设置模型不是标准的方向时的处理

fill boolean <可选>
false

是否填充,指定与模型渲染颜色混合

color string | Cesium.Color <可选>
"#ffffff"

颜色

opacity number <可选>
1.0

透明度,取值范围:0.0-1.0

colorBlendMode Cesium.ColorBlendMode <可选>
ColorBlendMode.HIGHLIGHT

指定颜色如何与模型混合。

colorBlendAmount number <可选>
0.5

当colorBlendMode为MIX时指定颜色强度的数字属性。0.0的值表示模型渲染的颜色,1.0的值表示纯色,任何介于两者之间的值表示两者的混合。

silhouette boolean <可选>
false

是否轮廓

silhouetteColor string | Cesium.Color <可选>
"#ff0000"

轮廓颜色

silhouetteSize number <可选>
2

轮廓宽度

silhouetteAlpha number <可选>
0.8

轮廓透明度

enableShowOutline boolean <可选>
true

Whether to enable outlines for models using the CESIUM_primitive_outline extension. This can be set false to avoid post-processing geometry at load time. When false, the showOutlines and outlineColor options are ignored.

showOutline boolean <可选>
true

Whether to display the outline for models using the CESIUM_primitive_outline extension. When true, outlines are displayed. When false, outlines are not displayed.

outlineColor Cesium.Color <可选>
Cesium.Color.BLACK

The color to use when rendering outlines.

distanceDisplayCondition boolean | Cesium.DistanceDisplayCondition <可选>
false

是否按视距显示 或 指定此框将显示在与摄像机的多大距离。

distanceDisplayCondition_near number <可选>
0

最小距离

distanceDisplayCondition_far number <可选>
Number.MAX_VALUE

最大距离

distanceDisplayPoint PointEntity.StyleOptions <可选>

当视角距离超过一定距离后(distanceDisplayCondition_far定义的) 后显示为 像素点 对象的样式,仅在distanceDisplayCondition设置时有效。

distanceDisplayBillboard BillboardEntity.StyleOptions <可选>

当视角距离超过一定距离后(distanceDisplayCondition_far定义的) 后显示为 图标 对象的样式,仅在distanceDisplayCondition设置时有效。

hasShadows boolean <可选>
true

是否阴影

shadows Cesium.ShadowMode <可选>
ShadowMode.ENABLED

指定模型是投射还是接收来自光源的阴影。

clampToGround boolean <可选>
false

是否贴地

heightReference Cesium.HeightReference <可选>
Cesium.HeightReference.NONE

指定高度相对于什么的属性。

enableVerticalExaggeration boolean <可选>
true

当存在地形夸张时(map.scene.verticalExaggeration) ,模型是否沿椭球法线被夸大。

incrementallyLoadTextures boolean <可选>
true

确定模型加载后纹理是否会继续流进来。

runAnimations boolean <可选>
true

指定模型中指定的glTF动画是否应该启动。

clampAnimations boolean <可选>
true

指定在没有关键帧的情况下,glTF动画是否应该保持最后一个姿势。

releaseGltfJson boolean <可选>
false

When true, the glTF JSON is released once the glTF is loaded. This is is especially useful for cases like 3D Tiles, where each .gltf model is unique and caching the glTF JSON is not effective.

lightColor Cesium.Color <可选>

在为模型着色时指定光的颜色的属性。当undefined场景的浅色被使用代替。

imageBasedLighting Cesium.ImageBasedLighting <可选>

The properties for managing image-based lighting on this model.

nodeTransformations Cesium.PropertyBag | object.<string, Cesium.TranslationRotationScale> <可选>

一个对象,其中键是节点的名称,值是TranslationRotationScale属性,描述要应用到该节点的转换。该转换是在节点的现有转换之后(如glTF中指定的那样)应用的,并且不会替换节点的现有转换。

articulations Cesium.PropertyBag | object.<string, number> <可选>

An object, where keys are composed of an articulation name, a single space, and a stage name, and the values are numeric properties.

clippingPlanes Cesium.ClippingPlaneCollection <可选>

用于裁剪模型的Plane平面集合

allowPicking boolean <可选>
true

当true时,每个glTF和Primitive都可以用Cesium.Scene#pick来拾取。

asynchronous boolean <可选>
true

确定模型WebGL资源创建是否将分散在几个帧或块上,直到所有glTF文件加载完成。

dequantizeInShader boolean <可选>
true

确定一个Draco编码的模型是否在GPU上被去量化。这减少了编码模型的总内存使用量。

backFaceCulling boolean <可选>
true

是否剔除面向背面的几何图形。当为真时,背面剔除是由材料的双面属性决定的;当为false时,禁用背面剔除。如果Model#color是半透明的,或者Model#silhouette大于0.0,则背面不会被剔除。

debugShowBoundingVolume boolean <可选>
false

仅供调试。查看模型的包围边界球。

enableDebugWireframe boolean <可选>
false

仅供调试。是否可以通过debugWireframe来切换查看模型的三角网线框图。

debugWireframe boolean <可选>
false

仅供调试。是否打开模型的三角网线框图。

cull boolean <可选>
true

Whether or not to cull the model using frustum/horizon culling. If the model is part of a 3D Tiles tileset, this property will always be false, since the 3D Tiles culling system is used.

opaquePass boolean <可选>
Cesium.Pass.OPAQUE

The pass to use in the DrawCommand for the opaque portions of the model.

upAxis Cesium.Axis <可选>
Cesium.Axis.Y

The up-axis of the glTF model.

forwardAxis Cesium.Axis <可选>
Cesium.Axis.Z

The forward-axis of the glTF model.

customShader Cesium.CustomShader <可选>

A custom shader. This will add user-defined GLSL code to the vertex and fragment shaders. Using custom shaders with a Cesium3DTileStyle may lead to undefined behavior.

content Cesium.Cesium3DTileContent <可选>

The tile content this model belongs to. This property will be undefined if model is not loaded as part of a tileset.

showCreditsOnScreen boolean <可选>
false

Whether to display the credits of this model on screen.

splitDirection Cesium.SplitDirection <可选>
Cesium.SplitDirection.NONE

The SplitDirection split to apply to this model.

projectTo2D boolean <可选>
false

Whether to accurately project the model's positions in 2D. If this is true, the model will be projected accurately to 2D, but it will use more memory to do so. If this is false, the model will use less memory and will still render in 2D / CV mode, but its positions may be inaccurate. This disables minimumPixelSize and prevents future modification to the model matrix. This also cannot be set after the model has loaded.

featureIdLabel string | number <可选>
"featureId_0"

Label of the feature ID set to use for picking and styling. For EXT_mesh_features, this is the feature ID's label property, or "featureId_N" (where N is the index in the featureIds array) when not specified. EXT_feature_metadata did not have a label field, so such feature ID sets are always labeled "featureId_N" where N is the index in the list of all feature Ids, where feature ID attributes are listed before feature ID textures. If featureIdLabel is an integer N, it is converted to the string "featureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.

instanceFeatureIdLabel string | number <可选>
"instanceFeatureId_0"

Label of the instance feature ID set used for picking and styling. If instanceFeatureIdLabel is set to an integer N, it is converted to the string "instanceFeatureId_N" automatically. If both per-primitive and per-instance feature IDs are present, the instance feature IDs take priority.

pointCloudShading object <可选>

Options for constructing a PointCloudShading object to control point attenuation and lighting.

classificationType Cesium.ClassificationType <可选>

Determines whether terrain, 3D Tiles or both will be classified by this model. This cannot be set after the model has loaded.

gltfCallback function <可选>

A function that is called with the loaded gltf object once loaded.

//以下是 以下是 模型动画相关

startTime Cesium.JulianDate <可选>

场景时间开始播放动画。当undefined时,动画从下一帧开始。

delay number <可选>
0.0

从startTime开始播放的延迟,以秒为单位。

stopTime Cesium.JulianDate <可选>

场景时间停止播放动画。当这是undefined,动画播放它的整个持续时间。

removeOnStop boolean <可选>
false

当true时,动画在停止播放后被删除。

multiplier number <可选>
1.0

大于1.0的值增加动画播放的速度相对于场景时钟的速度;小于1.0会降低速度。

reverse boolean <可选>
false

当true时,动画会反向播放。

loop Cesium.ModelAnimationLoop <可选>
Cesium.ModelAnimationLoop.REPEAT

决定动画是否循环以及如何循环。

setHeight number | string <可选>

指定坐标高度值(对编辑时无效,仅初始化传入有效,常用于图层中配置),也支持字符串模版配置

addHeight number | string <可选>

在现有坐标基础上增加的高度值(对编辑时无效,仅初始化传入有效,常用于图层中配置),也支持字符串模版配置

highlight ModelPrimitive.StyleOptions <可选>

鼠标移入或单击(type:'click')后的对应高亮的部分样式,提示:原有style的配置项需要与highlightStyle配置有一一对应关系,否则无法清除 // * @param {string} [highlight.type] 事件方式,鼠标移入高亮 或 单击高亮(type:'click') // * @param {boolean} [highlight.enabled=true] 是否启用

label LabelEntity.StyleOptions <可选>

支持附带文字的显示