惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
C
Check Point Blog
G
Google Developers Blog
V
Visual Studio Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
有赞技术团队
有赞技术团队
MongoDB | Blog
MongoDB | Blog
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
大猫的无限游戏
大猫的无限游戏
D
Docker
Hugging Face - Blog
Hugging Face - Blog
The GitHub Blog
The GitHub Blog
博客园 - 三生石上(FineUI控件)
A
About on SuperTechFans
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
阮一峰的网络日志
阮一峰的网络日志
Stack Overflow Blog
Stack Overflow Blog
Vercel News
Vercel News

博客园 - moonvan

前端面试八股文 zabbix 安装 vpn无法连接问题 - moonvan 博文阅读密码验证 - 博客园 Apple watch ,小米微信通知 jenkins grunt 自动构建流程 刷机步骤 ipad忘记了锁屏密码,已经越狱了 ar 如何在ubuntu中安装php docker swarm 集群及可视化界面的安装及配置 https://github.com/gaoyangxiaozhu/DockerVI docker swarm 集群及可视化界面的安装及配置 http://www.fx114.net/qa-24-116329.aspx https://www.zhihu.com/question/19929609 http://www.36dsj.com/archives/46131 Asp.Net MVC及Web API框架配置会碰到的几个问题及解决方案 tfs填坑那些事 ionic+cordova填坑
lanya
moonvan · 2018-08-10 · via 博客园 - moonvan
  1. startBLEDiscovery:'初始化蓝牙设备',

  2. advertisServiceUUIDs: [],

  3. avatarUrl:'../index/bg-image.jpg',

  4. bindViewTap: function() {

  5. app.getUserInfo(function(userInfo){

  6. if (wx.openBluetoothAdapter) {

  7. wx.openBluetoothAdapter({

  8. wx.getBluetoothAdapterState({

  9. complete: function(res) {

  10. wx.showToast({title:'请打开本机蓝牙设备,重新扫码', duration:10000 })

  11. complete: function(res) {

  12. content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'

  13. startBLEDevices: function(){

  14. wx.startBluetoothDevicesDiscovery({

  15. showPosition:setInterval(that.devicesFunc,1000)

  16. complete: function(res) {

  17. var arrayRSSI = new Array();

  18. var arraydeviceName = new Array();

  19. var arraydeviceId = new Array();

  20. var arrayadvertisData = new Array();

  21. for(var i = 0; i<res.devices.length;i++){

  22. if(res.devices[i].name.indexOf('craft')==0){

  23. arrayRSSI.push(res.devices[i].RSSI);

  24. arraydeviceName.push(res.devices[i].name);

  25. arraydeviceId[i]= res.devices[i].deviceId;

  26. arrayUUIDs[i]= res.devices[i].advertisServiceUUIDs[i];

  27. arrayadvertisData[i]= res.devices[i].advertisData ;

  28. var iRssi = Math.abs(arrayRSSI[i]);

  29. var power = (iRssi-59)/(10*2.0);

  30. var mm = Math.pow(10, power);

  31. console.log(arraydeviceName[i]+"距离的位置是"+mm+"米");

  32. 01,02,03分别为,(2,0),(2,2),(0,2)固定坐标点,做定位

  33. if(res.devices[i].name.indexOf('craft01')==0){

  34. var pointARSSi = res.devices[i].RSSI ;

  35. var iRssi = Math.abs(pointARSSi);

  36. var power = (iRssi-55)/(10*2.0);

  37. var pointADistance = Math.pow(10, power);

  38. console.log("a"+pointADistance);

  39. if(res.devices[i].name.indexOf('craft02')==0){

  40. var pointBRSSi = res.devices[i].RSSI;

  41. var iRssi = Math.abs(pointBRSSi);

  42. var power = (iRssi-55)/(10*2.0);

  43. var pointBDistance = Math.pow(10, power);

  44. console.log("b"+pointBDistance);

  45. if(res.devices[i].name.indexOf('craft03')==0){

  46. var pointCRSSi = res.devices[i].RSSI;

  47. var iRssi = Math.abs(pointCRSSi);

  48. var power = (iRssi-57)/(10*2.0);

  49. var pointCDistance = Math.pow(10, power);

  50. console.log("c"+pointCDistance);

  51. if(arrayRSSI.length > 3){

  52. for(var i = 0 ; i < arrayRSSI.length ; i ++){

  53. for(var j = i+1 ; j< arrayRSSI.length ; j++){

  54. if(arrayRSSI[i]<arrayRSSI[j]){

  55. var select = arrayRSSI[i];

  56. arrayRSSI[i] = arrayRSSI[j];

  57. for(var i = 0 ; i < 3; i++){

  58. var pointARSSi = res.devices[i].RSSI ;

  59. var iRssi = Math.abs(pointARSSi);

  60. var power = (iRssi-55)/(10*2.0);

  61. var pointADistance = Math.pow(10, power);

  62. console.log("a"+pointADistance);

  63. var pointBRSSi = res.devices[i].RSSI;

  64. var iRssi = Math.abs(pointBRSSi);

  65. var power = (iRssi-55)/(10*2.0);

  66. var pointBDistance = Math.pow(10, power);

  67. console.log("b"+pointBDistance);

  68. var pointCRSSi = res.devices[i].RSSI;

  69. var iRssi = Math.abs(pointCRSSi);

  70. var power = (iRssi-57)/(10*2.0);

  71. var pointCDistance = Math.pow(10, power);

  72. console.log("c"+pointCDistance);

  73. if(!pointADistance==''&&!pointBDistance==''&&!pointCDistance==''){

  74. var pointDX='';var pointDY = '';

  75. var p = Math.pow(pointADistance,2)/10-Math.pow(pointBDistance,2)/10;

  76. var m = Math.pow(pointADistance,2)/10-Math.pow(pointCDistance,2)/10;

  77. console.log('目标所在位置X是'+pointDX);

  78. console.log('目标所在位置Y是'+pointDY);

  79. if(pointDX > 0 && pointDY > 0){

  80. wx.showToast({title:'欢迎进入25楼craft', duration:4000 });

  81. var context = wx.createCanvasContext();

  82. context.setStrokeStyle("#00ff00");

  83. context.arc(that.data.canvasPointX*30,that.data.canvasPointY*30,5,0,2*Math.PI);

  84. actions: context.getActions()

  85. wx.showModal({title:'X轴:'+pointDX+'Y轴:'+pointDY, duration:5000 });

  86. url: 'http://craftww.cn/weixinIbeacon/index.php',

  87. complete: function(res) {

  88. wx.showToast({title:'正在搜索...', duration:1000 })

  89. url: 'http://craftww.cn/weixinIbeacon/index.php',

  90. complete: function(res) {

  91. complete: function(res) {

  92. createList: function(thisName){

  93. array:[{deviceDistance:"1"},{deviceDistance:"1"},{deviceDistance:"1"},{deviceDistance:"1"},{deviceDistance:"1"}]

  94. reStartSearchBLE: function(){

  95. wx.stopBluetoothDevicesDiscovery({

  96. complete: function(res) {

  97. clearInterval(that.data.showPosition);

  98. console.log(that.data.showPosition);

  99. wx.closeBluetoothAdapter({

  100. wx.openBluetoothAdapter({

  101. wx.getBluetoothAdapterState({

  102. complete: function(res) {

  103. complete: function(res) {

  104. complete: function(res) {