AWS 文档 SDK 示例
将 CalculateRoute 和 AWS SDK 结合使用
以下代码示例演示如何使用 CalculateRoute。
- Java
-
- 适用于 Java 的 SDK 2.x
-
注意
查看 GitHub,了解更多信息。在 AWS 代码示例存储库
中查找完整示例,了解如何进行设置和运行。 /** * Calculates the distance between two locations asynchronously. * * @param routeCalcName the name of the route calculator to use * @return a {@link CompletableFuture} that will complete with a {@link CalculateRouteResponse} containing the distance and estimated duration of the route */ public CompletableFuture<CalculateRouteResponse> calcDistanceAsync(String routeCalcName) { // Define coordinates for Seattle, WA and Vancouver, BC. List<Double> departurePosition = Arrays.asList(-122.3321, 47.6062); List<Double> arrivePosition = Arrays.asList(-123.1216, 49.2827); CalculateRouteRequest request = CalculateRouteRequest.builder() .calculatorName(routeCalcName) .departurePosition(departurePosition) .destinationPosition(arrivePosition) .travelMode("Car") // Options: Car, Truck, Walking, Bicycle .distanceUnit("Kilometers") // Options: Meters, Kilometers, Miles .build(); return getClient().calculateRoute(request) .whenComplete((response, exception) -> { if (exception != null) { Throwable cause = exception.getCause(); if (cause instanceof ResourceNotFoundException) { throw new CompletionException("The AWS resource was not found: " + cause.getMessage(), cause); } throw new CompletionException("Failed to calculate route: " + exception.getMessage(), exception); } }); }-
有关 API 详细信息,请参阅《AWS SDK for Java 2.x API Reference》中的 CalculateRoute。
-
- JavaScript
-
- 适用于 JavaScript 的 SDK(v3)
-
注意
查看 GitHub,了解更多信息。在 AWS 代码示例存储库
中查找完整示例,了解如何进行设置和运行。 import { fileURLToPath } from "node:url"; import { CalculateRouteCommand, ResourceNotFoundException, LocationClient, } from "@aws-sdk/client-location"; import data from "./inputs.json" with { type: "json" }; const region = "eu-west-1"; const locationClient = new LocationClient({ region: region }); export const main = async () => { const routeCalcParams = { CalculatorName: `${data.inputs.calculatorName}`, DeparturePosition: [-122.3321, 47.6062], DestinationPosition: [-123.1216, 49.2827], TravelMode: "Car", DistanceUnit: "Kilometers", }; try { const command = new CalculateRouteCommand(routeCalcParams); const response = await locationClient.send(command); console.log( "Successfully calculated route. The distance in kilometers is : ", response.Summary.Distance, ); } catch (caught) { if (caught instanceof ResourceNotFoundException) { console.error( `An conflict occurred: ${caught.message} \n Exiting program.`, ); return; } } };-
有关 API 详细信息,请参阅《适用于 JavaScript 的 AWS SDK API Reference》中的 CalculateRoute。
-
- Kotlin
-
- 适用于 Kotlin 的 SDK
-
注意
查看 GitHub,了解更多信息。在 AWS 代码示例存储库
中查找完整示例,了解如何进行设置和运行。 /** * Calculates the distance between two locations. * * @param routeCalcName the name of the route calculator to use * @return a {@link CompletableFuture} that will complete with a {@link CalculateRouteResponse} containing the distance and estimated duration of the route */ suspend fun calcDistance(routeCalcName: String): CalculateRouteResponse { // Define coordinates for Seattle, WA and Vancouver, BC. val departurePosition = listOf(-122.3321, 47.6062) val arrivePosition = listOf(-123.1216, 49.2827) val request = CalculateRouteRequest { this.calculatorName = routeCalcName this.departurePosition = departurePosition this.destinationPosition = arrivePosition this.travelMode = TravelMode.Car // Options: Car, Truck, Walking, Bicycle this.distanceUnit = DistanceUnit.Kilometers // Options: Meters, Kilometers, Miles } LocationClient.fromEnvironment { region = "us-east-1" }.use { client -> return client.calculateRoute(request) } }-
有关 API 详细信息,请参阅《AWS SDK for Kotlin API Reference》中的 CalculateRoute
。
-
BatchUpdateDevicePosition
CreateGeofenceCollection