2017-03-29 26 views
1

当我使用这个我得到一个未定义的错误。 纬度未定义。我要如何使用AR的NodeJS无人机纬度信息?

var arDrone = require('ar-drone'); 
var droneClient = arDrone.createClient(); 
droneClient.config('general:navdata_demo', 'FALSE'); // get back all data the copter can send 
droneClient.config('general:navdata_options', 777060865); // turn on GPS 

droneClient.on('navdata', function(navdata) { 
    console.log(navdata.gps.latitude + ', ' + navdata.gps.longitude); 
    // do stuff with the GPS information.... 
}); 
droneClient.takeoff(); ..... 

但是,如果我改变1行,我可以找回所有的GPS数据。

console.log(navdata.gps); 

为什么我不能专门找回纬度数据?

var arDrone = require('ar-drone'); 
var droneClient = arDrone.createClient(); 
droneClient.config('general:navdata_demo', 'FALSE'); // get back all data the copter can send 
droneClient.config('general:navdata_options', 777060865); // turn on GPS 

droneClient.on('navdata', function(navdata) { 
    console.log(navdata.gps); 
    // do stuff with the GPS information.... 
}); 
droneClient.takeoff(); ..... 
+0

请提供确切的错误信息也许还的console.log的'输出(navdata.gps);'好像可能使用点纬度不是一个属性访问。操作者 –

+0

C:\数据>节点gpsLog.js C:\数据\ gpsLog.js:8 的console.log(navdata.gps.latitude + '' + navdata.gps.longitude); ^ 类型错误:无法读取道具未定义 erty“纬度”的客户。在Client._handleNavdata(C:\)上的Client.emit(events.js:188:7) 在emitOne(events.js:96:13) ()(C:\ data \ gpsLog.js:8:27)在UdpNavdataStream.emit(events.js:188:7)处的emitOne(events.js:96:13) 处的数据\ node_modules \ ar-drone \ lib \ Client.js:194:8) (在UdpNavdataStream._handleMessage处的 C:\ DATA \ node_modules \ AR-无人机\ LIB \ NAV数据\ UdpNavdataStream.js:73:10) –

+0

这段代码来自另一篇文章中暗示它的工作。 http://stackoverflow.com/questions/24170884/get-gps-data-from-ar-drone-2-0 –

回答

0

,你必须先调用GPS,可以使用“如果(navdata.gps){},然后把GPS属性就可以了。但结果却是0。即使使用数激活GPS。值经度和纬度的将是“0”

相关问题