places

AMD: require(["geoscene/rest/places"], (places) => { /* code goes here */ });
ESM: import * as places from "@geoscene/core/rest/places.js";
对象: geoscene/rest/places
起始版本:GeoScene Maps SDK for JavaScript 4.27
beta

在地理点的搜索距离内或范围内查找地点,或查找有关特定地点的更多信息。地点,也称为感兴趣点 (POI),是人们可以在世界各地发现的商业和地理位置。地点还包含名称、类别、街道地址、联系信息等属性。

借助地点服务,人们可以构建强大的应用程序,以帮助人们发现、定位和了解更多关于地点周围的信息。地点服务可以搜索地点附近或边界框内的企业、感兴趣点 (POI) 和常见地理要素。只有拥有 GeoScene Developer 帐户,才能访问地点服务。不支持 GeoScene Online 帐户。

首先,应该为感兴趣的地点类型确定一个或多个地点类别。类别有助于过滤搜索结果,因此只返回感兴趣的地点。所有类别都有一个名称和唯一的 ID。为了帮助查找合适的类别和 ID,可以使用地点类别查找器工具

选择类别后,可使用 queryPlacesNearPoint()queryPlacesWithinExtent() 方法。若要过滤并返回最佳结果,请在搜索时提供类别或关键字列表。返回地点时,它们包含名称、placeId、位置和类别等属性。

方法概述

名称 返回值类值 描述 对象
Promise<Object>

获取地点详细信息,包括名称、地址、描述和其他属性。

更多详情
places
Promise<PlacesQueryResult>

附近搜索,用于在地点的给定半径范围内查找地点。

更多详情
places
Promise<PlacesQueryResult>

用于在给定范围内查找地点的搜索。

更多详情
places

方法详细说明

fetchPlace(params, requestOptions){Promise<object>}

获取地点详细信息,包括名称、地址、描述和其他属性。

参数

定义地点详细信息请求的参数。

requestOptions Object
optional

用于数据请求的附加选项

返回
类型 描述
Promise<Object> 返回解析为具有结果的对象的 promise。
另请参阅
示例
require([
 "geoscene/rest/places",
 "geoscene/rest/support/FetchPlaceParameters"
], function(places, FetchPlaceParameters) {
   const swedishFetchPlaceParameters = new FetchPlaceParameters({
      ,
     placeId: "571624acd79b8a99897357a25b744a20",  // really good plumber
     requestedFields: ["address", "description", "hours", "socialMedia"]
   });

   function fetchPlaceDetails() {
     places.fetchPlace(swedishFetchPlaceParameters).then(showPlaceDetails);
   }

   function showPlaceDetails(fetchResult) {
     console.log("Fetch place result: ", fetchResult);
   }

   fetchPlaceDetails();
});
queryPlacesNearPoint(params, requestOptions){Promise<PlacesQueryResult>}

附近搜索,用于在地点的给定半径范围内查找地点。该位置通常表示地图上的一个点或设备的地理位置。

参数

定义查询请求的参数。

requestOptions Object
optional

用于数据请求的附加选项

返回
类型 描述
Promise<PlacesQueryResult> 解析为包含 PlacesQueryResult 的作为 promise 的对象。
另请参阅
示例
require([
 "geoscene/rest/places",
 "geoscene/rest/support/PlacesQueryParameters"
], function(places, PlacesQueryParameters) {
   const point = {
     type: "point", // autocasts as new Point()
     longitude: 17.81840,
     latitude: 59.42145
   };

   const swedishPlacesQueryParameters = new PlacesQueryParameters({
      ,
     categoryIds: ["11077"], // Bathroom Contractor
     radius: 10000,  // set radius to 10,000 meters
     point
   });

   function findPlaces() {
     places.queryPlacesNearPoint(swedishPlacesQueryParameters).then(showPlaces);
   }

   function showPlaces(placesSolveResult) {
     // results from the queryPlacesNearPoint() method
     console.log("PlacesQueryResult: ", placesSolveResult);
     // first PlaceResult object from PlacesQueryResult.results
     console.log("PlaceResult: ", placesSolveResult.results[0]);
   }

   findPlaces();
});
queryPlacesWithinExtent(params, requestOptions){Promise<PlacesQueryResult>}

用于在给定范围内查找地点的搜索。范围通常表示地图的可见区域。

参数

定义查询请求的参数。

requestOptions Object
optional

用于数据请求的附加选项

返回
类型 描述
Promise<PlacesQueryResult> 解析为包含 PlacesQueryResult 的作为 promise 的对象。
另请参阅
示例
require([
 "geoscene/rest/places",
 "geoscene/rest/support/PlacesQueryParameters",
 "geoscene/geometry/Extent"
], function(places, PlacesQueryParameters, Extent) {
   const extent = new Extent({
     xmin: 17.75,
     ymin: 59.55,
     xmax: 18,
     ymax: 59.7,
     spatialReference: 4326
   });

   const swedishPlacesQueryParameters = new PlacesQueryParameters({
      ,
     categoryIds: ["16000"], // Landmarks and Outdoors
     extent
   });

   function findPlaces() {
     places.queryPlacesWithinExtent(swedishPlacesQueryParameters).then(showPlaces);
   }

   function showPlaces(placesSolveResult) {
     // results from the queryPlacesWithinExtent() method
     console.log("PlacesQueryResult: ", placesSolveResult);
     // first PlaceResult object from PlacesQueryResult.results
     console.log("PlaceResult: ", placesSolveResult.results[0]);
   }

   findPlaces();
});

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。