方法
序列化参数对象
参数描述:
名称 |
类型 |
描述 |
params |
Object
|
参数对象 |
返回:
序列化字符串
添加模型拾取高亮状态
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
color |
String
|
高亮颜色 |
arge(centerP, startP, endP, type, isCanvasCoordinates)
参数描述:
名称 |
类型 |
默认值 |
描述 |
centerP |
Object
|
|
中点B |
startP |
Object
|
|
起点A |
endP |
Object
|
|
终点C |
type |
String
|
"180"
|
可选
类型["180" | "360" | "+-"] |
isCanvasCoordinates |
Boolean
|
false
|
可选
是否是屏幕坐标 |
创建CIMServer查询工具
参数描述:
Echarts扩展
调用方法:
echartsTool = sgworld.Core.CombineEcharts(Viewer, option, true);
参数描述:
名称 |
类型 |
默认值 |
描述 |
Viewer |
Viewer
|
|
可选
地图视图 |
option |
Object
|
|
可选
Echarts对应的参数。 |
isClear |
Boolean
|
false
|
可选
是否清除原先图层。 |
返回:
Echarts扩展工具
随机id
调用方法:
id = sgworld.Core.createRandomId();
返回:
返回一个随机id
创建结果提示框
调用方法:
tooltip = sgworld.Core.CreateResultTooltip(Viewer);
tooltip.showAt(Cesium.Cartesian3.fromDegrees(110, 30, 10), '这里是提示信息');
tooltip.show(false); //隐藏提示框
tooltip.show(true); //显示提示框
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
可选
地图视图 |
style |
Object
|
可选
样式
名称 |
类型 |
默认值 |
描述 |
id |
String
|
|
可选
提示框唯一id(可选) |
color |
String
|
'yellow'
|
可选
提示框颜色(black/white/yellow/blue) |
addX |
Number
|
0
|
可选
提示框X方向偏移量 |
addY |
Number
|
0
|
可选
提示框Y方向偏移量 |
near |
Number
|
|
可选
提示框最小可视距离 |
far |
Number
|
|
可选
提示框最大可视距离 |
closeBtn |
Boolean
|
false
|
可选
显示关闭按钮 |
close |
function
|
|
可选
点击关闭按钮的回调函数 |
|
返回:
ResultTooltip提示框。
创建鼠标Tooltip提示框。
调用方法:
sgworld.Core.CreateTooltip('这里是提示信息', {x:500, y:500}, true);
或
tooltip = sgworld.Core.CreateTooltip();
tooltip.showAt({x:500, y:500}, '这里是提示信息');
tooltip.show(false); //隐藏提示框
tooltip.show(true); //显示提示框
参数描述:
名称 |
类型 |
描述 |
styleOrText |
*
|
可选
提示框样式或文本内容
名称 |
类型 |
默认值 |
描述 |
origin |
String
|
'center'
|
可选
对齐方式(center/top/bottom) |
color |
String
|
'black'
|
可选
提示框颜色(black/white/yellow) |
id |
String
|
|
可选
提示框唯一id(可选) |
|
position |
Object
|
显示位置 |
show |
Boolean
|
是否显示(如果为true,styleOrText必须为显示的文本内容) |
返回:
Tooltip提示框。
自定义Geometry
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
参数
名称 |
类型 |
描述 |
position |
Array
|
顶点坐标 |
st |
Array
|
纹理坐标 |
indices |
Array
|
三角网连接索引 |
grid |
Boolean
|
是否显示三角网 |
boundingSphere |
BoundingSphere
|
边界球 |
|
返回:
获取默认值。
调用方法:
param = sgworld.Core.defaultValue(param, 'default');
参数描述:
返回:
如果未定义,则返回第一个参数,否则返回第二个参数。
计算空间两点之间的俯仰角
参数描述:
名称 |
类型 |
描述 |
p1 |
Object
|
起始点 |
p2 |
Object
|
结束点 |
对象参数合并
extend(o, n, override, mergeTheSame)
参数描述:
名称 |
类型 |
默认值 |
描述 |
o |
Object
|
|
对象 |
n |
Object
|
|
被合并的对象 |
override |
Boolean
|
false
|
可选
是否覆盖原属性值 |
mergeTheSame |
Boolean
|
false
|
可选
是否只合并相同属性 |
经纬度转三维笛卡尔坐标
调用方法:
position = sgworld.Core.fromDegrees(degrees);
参数描述:
返回:
获取多边形质心
参数描述:
添加扩散圆扫描纹理
添加卫星雷达扫描纹理
获取entity属性
参数描述:
名称 |
类型 |
描述 |
entity |
Entity
|
entity对象 |
获取entity属性
参数描述:
名称 |
类型 |
描述 |
entity |
Entity
|
entity对象 |
key |
String
|
属性字段 |
获取gif属性数据
参数描述:
名称 |
类型 |
默认值 |
描述 |
url |
String
|
|
路径 |
speed |
Number
|
6
|
可选
速率 |
获取随机的热力图数据
getHeatmapData(bounds, data, num) → Object
调用方法:
data = sgworld.Core.getHeatmapData({
west: 70.0,
south: 10.0,
east: 140.0,
north: 50.0
}, {
max:100,
min:0
});
参数描述:
名称 |
类型 |
默认值 |
描述 |
bounds |
Object
|
|
可选
数据范围。
名称 |
类型 |
描述 |
east |
Number
|
可选
东。 |
south |
Number
|
可选
南。 |
west |
Number
|
可选
西。 |
north |
Number
|
可选
北。 |
|
data |
Object
|
|
可选
热力值。
名称 |
类型 |
描述 |
max |
Number
|
可选
最大值。 |
min |
Number
|
可选
最小值。 |
value |
Number
|
可选
固定值,如设置value,则所有点的热力值都为该值。 |
|
num |
Number
|
600
|
可选
随机点数。 |
返回:
热力图数据
获取json数据
调用方法:
sgworld.Core.getJSON('./abc.json', data => {
console.log(data)
});
参数描述:
名称 |
类型 |
描述 |
url |
String
|
json地址。 |
callback |
function
|
回调函数。 |
获取当前层级
添加链路纹理
添加扩散圆扫描纹理(三环)
获取影像偏移的切片方案
参数描述:
名称 |
类型 |
默认值 |
描述 |
srs |
String
|
"GCJ02"
|
可选
坐标系 |
根据间隔获取多边形内的插值点
getPointsInPolygon(degreesArr, distance, linePoint)
参数描述:
名称 |
类型 |
默认值 |
描述 |
degreesArr |
Array
|
|
面坐标 |
distance |
Number
|
50
|
可选
间隔(米) |
linePoint |
Boolean
|
true
|
可选
是否包含边界上的点 |
获取点位到相机的距离
getPointToCameraDistance(Viewer, position) → Number
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
position |
Cartesian3
|
点位坐标 |
返回:
通过中心点经纬度、方位角、俯仰角和距离获取经纬度
getPositionFromHPR(center, distance, heading, pitch) → Array
调用方法:
degrees = sgworld.Core.getPositionFromHPR([110, 30, 100], 100, 30, 10)
参数描述:
名称 |
类型 |
默认值 |
描述 |
center |
Array
|
|
中心点 |
distance |
Number
|
|
距离 |
heading |
Number
|
0
|
可选
方位角 |
pitch |
Number
|
0
|
可选
俯仰角 |
返回:
通过中心点经纬度、方位角和距离获取经纬度
getPositionFromHR(lon, lat, distance, heading) → Array
调用方法:
degrees = sgworld.Core.getPositionFromHR(110, 30, 100, 30)
参数描述:
名称 |
类型 |
默认值 |
描述 |
lon |
Number
|
|
经度 |
lat |
Number
|
|
纬度 |
distance |
Number
|
|
距离 |
heading |
Number
|
0
|
可选
方位角 |
返回:
WKT转三维笛卡尔坐标
调用方法:
positions = sgworld.Core.getPositionFromWKT(WKT);
参数描述:
名称 |
类型 |
描述 |
WKT |
String
|
可选
WKT坐标串 |
返回:
三维笛卡尔坐标数组
添加雷达扫描纹理
添加扇形扫描纹理
计算空间面积(插值)
getSpaceArea(Viewer, degreesArr, option) → Promise|Object
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
degreesArr |
Array
|
经纬度数组 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
distance |
Number
|
50
|
可选
插值大小 |
isNum |
Boolean
|
false
|
可选
是否返回数字 |
onlyTerrain |
Boolean
|
false
|
可选
是否只测量高精度地形 |
|
返回:
添加链路纹理
获取当前视角范围
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
获取wmts信息
参数描述:
名称 |
类型 |
描述 |
data |
Object
|
地址参数
名称 |
类型 |
默认值 |
描述 |
url |
String
|
|
服务地址 |
layer |
String
|
|
可选
图层名 |
gisserverTMS |
String
|
false
|
可选
是否gisserverTMS |
srs |
String
|
"EPSG:4326"
|
可选
坐标系 |
|
callback |
function
|
|
创建颜色阶梯过渡工具
参数描述:
是否顺时针
调用方法:
isClockwise = sgworld.Core.isClockwise([[0,0],[1,1],[1,0],[0,0]]);
//=true
参数描述:
返回:
是否dom对象
参数描述:
加载shp数据
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
参数 |
callback |
function
|
回调 |
修改鼠标样式。
mouse(container, cursorstyle, url)
调用方法:
sgworld.Core.mouse(Viewer.container, 1, 'draw.cur');
参数描述:
名称 |
类型 |
默认值 |
描述 |
container |
DOM
|
|
html DOM节点 |
cursorstyle |
Number
|
0
|
可选
鼠标类型(0为默认,1为使用cur图标) |
url |
String
|
|
cur图标路径。 |
打开本地文件获取路径
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
参数
名称 |
类型 |
默认值 |
描述 |
accept |
String
|
|
可选
文件类型 |
multiple |
Boolean
|
false
|
可选
多选 |
callback |
function
|
|
回调函数 |
|
加载本地shp
openShapeFile(callback, encoding)
参数描述:
名称 |
类型 |
默认值 |
描述 |
callback |
function
|
|
回调函数,function(entity){} |
encoding |
String
|
"utf-8"
|
可选
编码方式 |
射线求交
pickFromRay(Viewer, start, end, objectsToExclude)
参数描述:
保存
调用方法:
sgworld.Core.saveAs(blob, 'test.json');
参数描述:
返回:
开启/还原深度检测
参数描述:
名称 |
类型 |
描述 |
type |
String
|
状态(open/close) |
viewer |
Object
|
视图 |
动态变化材质回调函数(上下移动颜色渐变)
setDrawCanvasColorUpdown(type, viewer)
参数描述:
名称 |
类型 |
描述 |
type |
String
|
状态(open/close) |
viewer |
Object
|
视图 |
动态变化材质回调函数(水平移动图像)
参数描述:
名称 |
类型 |
描述 |
type |
String
|
状态(open/close) |
viewer |
Object
|
视图 |
修改三维笛卡尔坐标高度
参数描述:
名称 |
类型 |
描述 |
position |
Cartesian3
|
可选
三维笛卡尔坐标 |
height |
Number
|
可选
修改后高度 |
返回:
三维笛卡尔坐标
动态变化材质
setImageMaterialProperty(type, viewer)
参数描述:
名称 |
类型 |
描述 |
type |
String
|
状态(open/close) |
viewer |
Object
|
视图 |
修改多个三维笛卡尔坐标高度
参数描述:
名称 |
类型 |
描述 |
positions |
Array.<Cartesian3>
|
可选
三维笛卡尔坐标串 |
height |
Number
|
可选
修改后高度 |
返回:
三维笛卡尔坐标
坐标偏移
setPositionOffset(position, offset, headingPitchRoll) → Cartesian3
参数描述:
返回:
三点测量方位角
参数描述:
名称 |
类型 |
描述 |
p1 |
Object
|
起始点 |
p2 |
Object
|
第二点 |
p3 |
Object
|
第三点 |
根据点获取tin三角网
参数描述:
名称 |
类型 |
描述 |
points |
FeatureCollection
|
点集合 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
getArea |
Boolean
|
false
|
可选
是否计算面积 |
polygon |
Feature
|
|
可选
多边形范围 |
|
三维笛卡尔坐标转经纬度
调用方法:
degrees = sgworld.Core.toDegrees(position');
参数描述:
返回:
获取当前视角范围
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
跟踪对象
trackedEntity(Viewer, entity, option)
调用方法:
var url = SmartEarthRootUrl + "Workers/Model/weixin.gltf";
var position = new Cesium.Cartesian3.fromDegrees(110, 32, 1000);
let model = sgworld.Creator.addSimpleGraphic('model', {
url: url,
position: position,
removeEdit: true // 屏蔽全局标绘编辑功能
});
sgworld.Core.trackedEntity(Viewer, model, {
type: "setView",
distance: 10000,
tooltip: {
drag: true,
innerHTML: `
<div class="divPoint-custom">
<p>大湖名城,创新高地</p>
</div>
`,
far: 20000,
addX: 50,
addY: -60,
}
})
参数描述:
名称 |
类型 |
描述 |
Viewer |
Viewer
|
地图视图 |
entity |
Entity
|
需要跟踪的对象 |
option |
Object
|
可选
参数
名称 |
类型 |
默认值 |
描述 |
type |
String
|
"tracked"
|
可选
跟踪类型【tracked | setView】 |
viewFrom |
Cartesian3
|
|
可选
视野,type为"tracked"时生效 |
heading |
Number
|
0
|
可选
初始方位角(度),type为"setView"时生效 |
pitch |
Number
|
-45
|
可选
初始俯仰角(度),type为"setView"时生效 |
distance |
Number
|
1000
|
可选
初始跟踪距离(米),type为"setView"时生效 |
minDistance |
Number
|
0
|
可选
最小跟踪距离(米),type为"setView"时生效 |
tooltip |
Object
|
|
可选
提示框
名称 |
类型 |
默认值 |
描述 |
innerHTML |
String
|
''
|
可选
提示框内容 |
drag |
Boolean
|
false
|
可选
是否可拖动 |
near |
Number
|
0
|
可选
提示框最小可视距离 |
far |
Number
|
1000
|
可选
提示框最大小可视距离 |
addX |
Number
|
0
|
可选
提示框X方向偏移量 |
addY |
Number
|
0
|
可选
提示框Y方向偏移量 |
far |
Number
|
1000
|
可选
提示框最大小可视距离 |
|
start |
function
|
|
可选
开始回调 |
update |
function
|
|
可选
更新回调 |
end |
function
|
|
可选
结束回调 |
|
两点方位角
TwoPointAzimuth(lon1, lat1, lon2, lat2)
参数描述:
名称 |
类型 |
描述 |
lon1 |
number
|
起点经度 |
lat1 |
number
|
起点纬度 |
lon2 |
number
|
终点经度 |
lat2 |
number
|
终点纬度 |
两点计算HeadingPitchRoll
twoPointsHeadingPitchRoll(Viewer, startPosition, endPosition)
参数描述:
获取uuid
矢量切片样式
参数描述:
名称 |
类型 |
描述 |
option |
Object
|
可选
样式 |
返回:
矢量切片样式
ajax
参数描述:
xml转json