- 描述:
三维场景工具模块
三维场景工具模块
方法
(static) buildCurvePoints(param) → {Array.<Coord>}
- 描述:
根据点集合构建曲线
参数:
名称 | 类型 | 描述 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
param |
object |
属性
|
返回值:
- 类型
- Array.<Coord>
(static) colorRGB2Hex(color) → {string}
- 描述:
将rgb颜色转换成16进制字符串形式
示例
var color = esmap.ESMapUtil.colorRGB2Hex('255,255,255');
参数:
名称 | 类型 | 描述 |
---|---|---|
color |
string |
返回值:
- 类型
- string
(static) containPolygons(a, b) → {boolean}
- 描述:
判断一个多边形是否包含另外一个多边形
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
Array.<Coord> | |
b |
Array.<Coord> |
返回值:
- 类型
- boolean
(static) getAlias(a)
- 描述:
判断对象a的类型,返回构造函数创建它时的别名
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
Object | 参数a |
(static) getControlsInfo()
- 描述:
获取控制器的信息
(static) getDatasByAlias()
- 描述:
根据别名获取数据。 为查询函数提供方法。
(static) getDistance(coordA, coordB) → {number}
- 描述:
根据经纬度计算两点之间的距离
示例
var dis = esmap.ESMapUtil.getDistance({x: 12683490.6, y: 2557878.79}, {x: 12683459.98, y: 2557874.12});
参数:
名称 | 类型 | 描述 |
---|---|---|
coordA |
Coord | |
coordB |
Coord |
返回值:
- 类型
- number
(static) getMapScene(a)
- 描述:
根据a递归,最终获取整个三维场景的Scene三维场景
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
Object |
(static) getOrthoCameraSizeByPerspectiveCamera(camera, control, c)
- 描述:
计算正交照相机的可视范围
参数:
名称 | 类型 | 描述 |
---|---|---|
camera |
Object | 相机对象 |
control |
* | 控制器 |
c |
* |
(static) getPlatform() → {Object}
- 描述:
获取终端信息
返回值:
平台信息
- 类型
- Object
(static) getPolygonBounds(points) → {Bound}
- 描述:
根据多边形计算边界
示例
var points = [
{x: 12683490.6, y: 2557878.79},
{x: 12683459.98, y: 2557874.12},
//...多边形点集
]
var bound = esmap.ESMapUtil.getPolygonBounds(points);
参数:
名称 | 类型 | 描述 |
---|---|---|
points |
Array |
返回值:
- 类型
- Bound
(static) getRouteAngle(a, b) → {number}
- 描述:
根据起点终点计算向量角度
示例
let angle = getRouteAngle({x: 12683490.6, y: 2557878.79}, {x: 12683459.98, y: 2557874.12});
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
Coord | |
b |
Coord |
返回值:
角度°
- 类型
- number
(static) hexToRgb(str) → {string}
- 描述:
将hex颜色转换成rgb字符串形式
示例
var color = esmap.ESMapUtil.hexToRgb('#FF0000');
参数:
名称 | 类型 | 描述 |
---|---|---|
str |
string |
返回值:
- 类型
- string
(static) intersectPolygons(a, b) → {boolean}
- 描述:
判断两个多边形是否相交
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
Array.<Coord> | 多边形1点集 |
b |
Array.<Coord> | 多边形2点集 |
返回值:
- 类型
- boolean
(static) loadTexture(url, callback) → {function}
- 描述:
材质加载函数。
参数:
名称 | 类型 | 描述 |
---|---|---|
url |
String | |
callback |
function |
返回值:
- 类型
- function
(static) pointInArea(point, polygon) → {boolean}
- 描述:
计算一个点是否在多边形里
参数:
名称 | 类型 | 描述 |
---|---|---|
point |
Coord | |
polygon |
Array.<Coord> |
返回值:
- 类型
- boolean
(static) restoreFloorAlpha(a, b)
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
* | |
b |
* |
(static) search(map, queryScope, requestParams, callback) → {Promise}
- 描述:
信息检索
参数:
名称 | 类型 | 描述 | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
map |
esmap.ESMap | 地图实例对象 |
||||||||||||||||||||||||||||
queryScope |
object | array | 搜索范围 属性
|
||||||||||||||||||||||||||||
requestParams |
object | 搜索条件 属性
|
||||||||||||||||||||||||||||
callback |
function | 搜索回调 |
返回值:
- 类型
- Promise
(static) searchJson(params) → {Promise}
- 描述:
根据json搜索数据
示例
搜索: 所有名称为电梯的数据:
esmap.ESMapUtil.searchJson({
name: "电梯",
onComplete: (e)=>console.log(e)
})
搜索: id为2900的数据:
esmap.ESMapUtil.searchJson({
id: 2900,
onComplete: (e)=>console.log(e)
})
搜索: "test666"建筑中,分类为40004,且以"车位"为关键词进行模糊搜索
esmap.ESMapUtil.searchJson({
bid: "test666",
keyword: "车位",
typeID: 40004,
onComplete: (e)=>console.log(e)
})
keyword高级搜索功能:
匹配模式:
1.模糊搜索 keyword: "电梯"
2.精确匹配 keyword: "=电梯"
3.包含匹配 keyword: "'电梯" 查找包含"电梯"的数据
4.不包含 keyword: "!电梯" 查找不包含"电梯"的数据
5.匹配开头 keyword: "^电梯" 查找以"电梯"开头的数据
6.匹配结尾 keyword: "电梯$" 查找以"电梯"结尾的数据
7.反向匹配开头 keyword: "!^电梯" 查找不以"电梯"开头的数据
8.反向匹配结尾 keyword: "!电梯$" 查找不以"电梯"结尾的数据
匹配逻辑操作符:
1.空格代表"与"关系,例如: "电梯 门" 查找同时包含"电梯"和"门"的数据
2.| 代表"或"关系,例如: "电梯|门" 查找包含"电梯"或"门"的数据
综合搜索示例:
搜索名称以"办事处"结尾或"管理处"开头的数据
esmap.ESMapUtil.searchJson({
keyword: "办事处$ | ^管理处",
onComplete: (e)=>console.log(e)
})
参数:
名称 | 类型 | 描述 | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
params |
object | 搜索参数 属性
|
返回值:
- 类型
- Promise
(static) setFloorAlpha(a, b, c, d)
- 描述:
设置楼层透明度
参数:
名称 | 类型 | 描述 |
---|---|---|
a |
* | |
b |
* | |
c |
* | |
d |
* |
(static) toColor(rgb) → {Number}
- 描述:
将RGB转换成10进制
示例
var color = esmap.ESMapUtil.toColor('255,255,255');
参数:
名称 | 类型 | 描述 |
---|---|---|
rgb |
String | 颜色RGB |
返回值:
number - 十进制颜色
- 类型
- Number
(static) toRgba(rgbaStr)
- 描述:
静态方法 将RGBA转换成RGB
参数:
名称 | 类型 | 描述 |
---|---|---|
rgbaStr |
String | RGBA字符串 |
(static) transformBD09ToMap(lonLat) → {Coord}
- 描述:
百度地图坐标转换为ESMap三维场景坐标
示例
let coord = esmap.ESMapUtil.transformBD09ToMap([116.397428, 39.90923]);
参数:
名称 | 类型 | 描述 |
---|---|---|
lonLat |
LonLat |
返回值:
- 类型
- Coord
(static) transformGCJ02ToMap(lonLat) → {Coord}
- 描述:
高德地图坐标转换为ESMap三维场景坐标
示例
let coord = esmap.ESMapUtil.transformGCJ02ToMap([116.397428, 39.90923]);
参数:
名称 | 类型 | 描述 |
---|---|---|
lonLat |
LonLat |
返回值:
- 类型
- Coord
(static) transformMapToWGS84(coord) → {LonLat}
- 描述:
ESMap三维场景坐标转换为WGS84坐标
示例
let lonlat = esmap.ESMapUtil.transformMapToWGS84({x: 12683490.6, y: 2557878.79});
参数:
名称 | 类型 | 描述 |
---|---|---|
coord |
Coord |
返回值:
- 类型
- LonLat
(static) transformWGS84ToMap(lonLat) → {Coord}
- 描述:
WGS84坐标转换为ESMap三维场景坐标
示例
let coord = esmap.ESMapUtil.transformWGS84ToMap([116.397428, 39.90923]);
参数:
名称 | 类型 | 描述 |
---|---|---|
lonLat |
LonLat |
返回值:
- 类型
- Coord