武陵半仙 2017-08-23 09:05 采纳率: 0%
浏览 1404

[Android] 实现自定义室内地图和zigbee模块位置显示的解决方案

具体需求:显示自制室内一比一地图,并且通过zigbee模块串口接受另外一个zigbee移动端的位置信息,然后显示在地图中,位置信息500ms更新一次。
已完成:地图不添加缩放和拖动效果的情况下,实现位置更新显示,(通过在showBit方法中画实心圆和编号实现)。
现在提问:1.在实现地图图片缩放和拖动效果后,zigbee模块位置信息显示还没有找到好方法,因为原本的实现方法是计算死位置信息转换为像素坐标后的坐标值,如果缩放或者拖动后,该位置信息坐标就乱了。请问有计算方法吗?
2.另外自己想了一个方法,在每次更新View的方法中,(此处为showBit()方法),新建一个Canvas,以该地图图片为背景,(即Canvas canvas = new Canvas(bitmap)),这样显示的位置信息的圆圈会跟随图片缩放或拖动,但是一个弊病是图片被污染,即canvas在画的时候画在了图片上,所以每次画的圆圈都保留在了图片上,请问有没有解决方法呢?

  • 写回答

1条回答 默认 最新

  • 哥们OnlyRead 2017-08-24 08:14
    关注

    地图缩放和移动的逻辑是这样的:1,清除上次绘制的图形。2:计算手指移动和缩放的距离及比例,对最初始的计算死的坐标进行按照手机的平移和缩放,重新计算新的位置,重新绘制。
    不能每次用上次的bitmap作为canvas,这样不停的创建canvas,并且数据没有清除,资源没有释放,最后手机只会越来越卡。

    评论

报告相同问题?

悬赏问题

  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?