如何将 latlong 数据转换为航路点值 / calculateRoute() ? (此处API/矩阵API)
How to convert latlong data for waypoint value / calculateRoute() ? (HERE API/ Matrix API)
纬度、经度坐标是从 geocode() 函数中保存的。 (用户在 html 输入中键入了城市和街道 -> 以 (50.4342,8.4324) 的形式收到经纬度数据)
如何将变量 latlong 放入 waypoint0 值中而不收到错误?
var lat = 50.4342;
var long = 8.4324;
var latlong = lat + ',' + long;
function calculateRoute(platform, coordinates)
{
var router = platform.getRoutingService(),
parameters = {
waypoint0: '', //<- insert latlong variable
waypoint1: '49.998700,8.249140',
mode: 'fastest;car;traffic:enabled',
departure: 'now'};
router.calculateRoute(parameters,
function (result) {
console.log(result);
console.log(latlongstr);
}, function (error) {
console.log("error");
});
}
如何转换 waypoint0 值的纬度和经度?如果我手动传递 waypoint0 内的经纬度值,那么一切正常,但我想动态地进行。
我刚开始javascript所以如果它容易解决,请不要讨厌我。
非常感谢您的帮助。
好的,我自己解决了。
这样做:
function geocode(platform, street2, city2)
{
var street3 = street2;
var city3 = city2;
var geocoder = platform.getGeocodingService(),
parameters = {
searchtext: street3 + city3 ,
gen: '9'};
geocoder.geocode(parameters,
function (result) {
var lat = result.Response.View[0].Result[0].Location.DisplayPosition.Latitude;
var long = result.Response.View[0].Result[0].Location.DisplayPosition.Longitude;
calculateRoute(platform, lat, long);
}, function (error) {
console.log("Retrieving Latitude and Longitude failed! Refresh the page and try again.");
});
function calculateRoute(platform,latitude,longitude)
{
var x = latitude;
var y = longitude;
var router = platform.getRoutingService(),
parameters = {
waypoint0: x + "," + y,
waypoint1: '49.998700,8.249140',
mode: 'fastest;car;traffic:enabled',
departure: 'now'};
router.calculateRoute(parameters,
function (result) {
console.log(result.response.route[0].summary.distance);
}, function (error) {
console.log("error");
});
}
所以只需要在geocoder.geocode()函数中调用calculateRoute()函数(传递纬度和经度),然后你就可以使用calculateRoute()函数中的经纬度来计算距离。
纬度、经度坐标是从 geocode() 函数中保存的。 (用户在 html 输入中键入了城市和街道 -> 以 (50.4342,8.4324) 的形式收到经纬度数据)
如何将变量 latlong 放入 waypoint0 值中而不收到错误?
var lat = 50.4342;
var long = 8.4324;
var latlong = lat + ',' + long;
function calculateRoute(platform, coordinates)
{
var router = platform.getRoutingService(),
parameters = {
waypoint0: '', //<- insert latlong variable
waypoint1: '49.998700,8.249140',
mode: 'fastest;car;traffic:enabled',
departure: 'now'};
router.calculateRoute(parameters,
function (result) {
console.log(result);
console.log(latlongstr);
}, function (error) {
console.log("error");
});
}
如何转换 waypoint0 值的纬度和经度?如果我手动传递 waypoint0 内的经纬度值,那么一切正常,但我想动态地进行。
我刚开始javascript所以如果它容易解决,请不要讨厌我。
非常感谢您的帮助。
好的,我自己解决了。
这样做:
function geocode(platform, street2, city2)
{
var street3 = street2;
var city3 = city2;
var geocoder = platform.getGeocodingService(),
parameters = {
searchtext: street3 + city3 ,
gen: '9'};
geocoder.geocode(parameters,
function (result) {
var lat = result.Response.View[0].Result[0].Location.DisplayPosition.Latitude;
var long = result.Response.View[0].Result[0].Location.DisplayPosition.Longitude;
calculateRoute(platform, lat, long);
}, function (error) {
console.log("Retrieving Latitude and Longitude failed! Refresh the page and try again.");
});
function calculateRoute(platform,latitude,longitude)
{
var x = latitude;
var y = longitude;
var router = platform.getRoutingService(),
parameters = {
waypoint0: x + "," + y,
waypoint1: '49.998700,8.249140',
mode: 'fastest;car;traffic:enabled',
departure: 'now'};
router.calculateRoute(parameters,
function (result) {
console.log(result.response.route[0].summary.distance);
}, function (error) {
console.log("error");
});
}
所以只需要在geocoder.geocode()函数中调用calculateRoute()函数(传递纬度和经度),然后你就可以使用calculateRoute()函数中的经纬度来计算距离。