首页 / Cesium / 使用示例
自定义地理编码
官方示例把 Geocoder 接到远程地理编码服务。这里换成一张本地表,接口一致,但不需要网络。
源码与运行效果
接口只有一个方法
自定义服务只要实现 geocode(input),返回 Promise,结果是 displayName 与 destination 组成的数组。destination 可以是 Cartesian3,也可以是 Rectangle。
接进 Viewer
构造 Viewer 时把 geocoder 选项设成自定义服务的实例,搜索框就换成自己的实现。示例预置了十几个城市,输入前两个字即可命中。
可以直接改的地方
| 位置 | 改什么 | 效果 |
|---|---|---|
geocode 的返回数组 | 加更多城市 | 可搜索范围 |
displayName | 任意文字 | 下拉项标题 |
destination | Cartesian3 / Rectangle | 定位方式 |
别返回 undefined:返回空数组时下拉框显示无结果,返回 undefined 会让搜索框报错。