mobile CCTV,mobile surveillance,police body worn cameras

 forgetPW
 registerNow
search
view: 3159|reply: 20
打印 prevThread nextThread

gps

[copyURL]

0

主题

9

帖子

102

积分

member

Rank: 2

积分
102
owner
poston 2020-5-8 18:22 | 显示全部楼层
你好,请按照如下代码替换winformdemo工程下对应文件中的接口,然后再测试一下接收 GPS 数据的显示。
  1. GPS 数据接收:

  2. 1、EventHandler.cs 文件:

  3. void GpsDialog_OnData(IntPtr dialog, IntPtr pGpsData, Int32 len)
  4. {
  5.         if (IntPtr.Zero == pGpsData) return;

  6.         BVCU_PUCFG_GPSData gpsData = (BVCU_PUCFG_GPSData)Marshal.PtrToStructure(pGpsData, typeof(BVCU_PUCFG_GPSData));
  7.         m_dialog.onGpsData(dialog, gpsData, len);
  8. }


  9. 2、Dialog.cs 文件:

  10. delegate void OnGetGpsData(IntPtr dialog, BVCU_PUCFG_GPSData gpsData, Int32 len);
  11. OnGetGpsData deleGetGpsData;

  12. public void onGpsData(IntPtr dialog, BVCU_PUCFG_GPSData gpsData, Int32 len)
  13. {
  14.         if(null != m_mainForm && m_mainForm.IsHandleCreated)
  15.         {
  16.                 if (null == deleGetGpsData)
  17.                 {
  18.                         deleGetGpsData = new OnGetGpsData(procGetGpsData);
  19.                 }
  20.                 m_mainForm.BeginInvoke(deleGetGpsData, new object[] { dialog, gpsData, len });
  21.         }
  22. }

  23. void procGetGpsData(IntPtr dialog, BVCU_PUCFG_GPSData gpsData, int len)
  24. {
  25.         foreach (OneDialog dlg in m_gpsDialogs)
  26.         {
  27.                 if (dlg.dialogHandle == dialog)
  28.                 {
  29.                         if(null != m_mainForm)
  30.                         {
  31.                                 m_mainForm.onGetGpsData(dlg.pu.id, gpsData, len);
  32.                         }
  33.                         return;
  34.                 }
  35.         }
  36. }


  37. 3、MainWinForm.cs文件:

  38. /// <summary>
  39. /// 获得Gps数据
  40. /// </summary>
  41. public void onGetGpsData(string puId, BVCU_PUCFG_GPSData gpsData, Int32 len)
  42. {
  43.         foreach (ListViewItem item in listViewGPSData.Items)
  44.         {
  45.                 if (item.Text.Equals(puId, StringComparison.CurrentCultureIgnoreCase))
  46.                 {
  47.                         float lat = 0;
  48.                         float lng = 0;
  49.                         ListViewItem.ListViewSubItem latItem = new ListViewItem.ListViewSubItem();
  50.                         lat = (float)gpsData.iLatitude / BVCU.BVCU_LAT_LNG_UNIT;
  51.                         lng = (float)gpsData.iLongitude / BVCU.BVCU_LAT_LNG_UNIT;
  52.                         latItem.Text = lat.ToString("0.00000");
  53.                         item.SubItems[1] = latItem;
  54.                         ListViewItem.ListViewSubItem lngItem = new ListViewItem.ListViewSubItem();
  55.                         lngItem.Text = lng.ToString("0.00000");
  56.                         item.SubItems[2] = lngItem;
  57.                         LogHelper.LogHelper.RecordLog(8, string.Format("({0}, {1})", lat.ToString("0.00000"), lng.ToString("0.00000")));
  58.                         return;
  59.                 }
  60.         }
  61. }
copycode

本帖子中包含更多资源

pls login 才可以下载或查看,没有帐号?registerNow

x
reply agree Against

使用道具 report

0

主题

9

帖子

102

积分

member

Rank: 2

积分
102
sofa
poston 2020-5-11 22:08 | 显示全部楼层
abc post on2020-5-9 10:23
一个设备上线,下线时为什么会触发三次 Server_ProcNotifyChannelInfo
这个是什么情况?

你好,设备上下线通知的问题已经修正,请到 https://github.com/besovideo/bvcusdk 下载最新的代码。
reply agree Against

使用道具 report

0

主题

9

帖子

102

积分

member

Rank: 2

积分
102
bench
poston 2020-5-12 11:10 | 显示全部楼层
abc post on2020-5-12 11:00
错了;可以传了;可能是设备问题;我再看看

好的。我这边测试是可以传的。

本帖子中包含更多资源

pls login 才可以下载或查看,没有帐号?registerNow

x
reply agree Against

使用道具 report

creditRule

QQ|wireless surveillance

GMT+8, 2024-5-10 15:40 , Processed in 0.061525 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

QuickReply backToTop BackToList