私が達成しようとしているのは、 result.MappingWaypoints[i].lat();
and
result.MappingWaypoints[i].lng();
の代わりにresult.MappingWaypoints[i].lat;
andを呼び出すことですresult.MappingWaypoints[i].lng
。
これも可能ですか?
var result = new Array();
result = {
'MappingWaypoints': MappingWaypoints,
'Flightime': flight_time_sec,
'PhotoArea': { 'SouthWest': MeterstoGPS(starting_photo_area),
'NorthEast': MeterstoGPS(end_photo_area)},
};
MappingWaypoints.push(
{
lat : current_point_gps.lat,
lng : current_point_gps.lng,
Radius : 10,
Altitude : Attitude,
ClimbRate : ClimbRate,
DelayTime : DelayTime,
WP_Event_Channel_Value : 100,
Heading : 0,
Speed : Speed,
CAM_Nick : 0,
Type : 1,
Prefix : "P"
}
編集:追加してみました:
lat: function(){ return current_point_gps.lat},`
lng : function(){ return current_point_gps.lng},
しかし、それは機能しません=>配列のすべての値は最初の座標のlat/long値を持っています
edit2:以下のコメントでこの回答をしてくれた@DCoderに感謝します:これで解決しました。
lat: (function(v) { return function() { return v; } })(current_point_gps.lat)
これは奇妙なことのように思われるかもしれませんが、私が使用しているアルゴリズムは、データに関数呼び出しとしてアクセスする必要があります。これは、アルゴリズムが同じ関数呼び出しlat(を介してのみデータにアクセスできるgoogleapiからのデータも処理するためです。 )およびlng()。ありがとう :)