gpt4 book ai didi

Angular 6 如何获取两个位置 AGM 之间的距离

转载 作者:行者123 更新时间:2023-12-02 12:00:39 25 4
gpt4 key购买 nike

我使用此引用 https://www.npmjs.com/package/agm-direction 获得两点之间的方向现在我想获取/计算两个位置之间的距离,但我很困惑如何做到这一点。

我的模块

AgmCoreModule.forRoot({
apiKey: 'My API Key....',
libraries: ['geometry']
})

我的组件

getDirection() {
this.origin = { lat: this.pick_latitude, lng: this.pick_longitude }
this.destination = { lat: this.drop_latitude, lng: this.drop_longitude }
}

我的问题:当我使用上述引用来获取方向路径时,如何获取两点之间的距离?请给我建议(谷歌地图API等)。我正在使用 Angular 6

最佳答案

您需要使用 Google Geometry API

https://developers.google.com/maps/documentation/javascript/geometry

import {} from '@types/googlemaps';
import { AgmCoreModule, MapsAPILoader } from "@agm/core";

calculateDistance() {
const mexicoCity = new google.maps.LatLng(19.432608, -99.133209.);
const jacksonville = new google.maps.LatLng(40.730610, -73.935242.);
const distance = google.maps.geometry.spherical.computeDistanceBetween(nyc, london);
}

适用于 Angular 6+

添加类型以允许 Angular 使用 Google map 类型。在您的终端中运行:

npm i -D @types/googlemaps

是时候告诉 Angular 我们已经准备好使用 Google map 类型了。打开 tsconfig.app.json 和 tsconfig.spec.json 并将 googlemaps 添加到 compilerOptions 对象内部的类型数组中。

注意:我只将其放在 tsconfig.app.json 文件中,有些人遇到问题,必须将其添加到我上面提到的两个文件中。

   "compilerOptions": {
"outDir": "./out-tsc/app",
"types": ["googlemaps"]
},

关于@Abdelsalam Shahlol 评论的注释:

For Angular 6+, you can't do this import {} from '@types/googlemaps';Instead place this in top (first line) of the TS file. /// /node_modules/@types/googlemaps/index.d.ts"/>

在您的 app.module.ts 中

AgmCoreModule.forRoot({
apiKey: 'YOUR API KEY',
libraries: ['geometry']
}),

关于Angular 6 如何获取两个位置 AGM 之间的距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52871488/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com