Android画布路径实时表现

2023-12-26

我想在 15 分钟内绘制(4 或 5 个)实时图表,可视化大量数据(每 30 毫秒一个新值)。我正在使用 Path,但当我想要显示超过 20000 个值并平移画布时,它似乎工作得非常慢,并且每秒都变得更糟。我也尝试过使用drawLine,但它根本不能流畅工作。

有没有人有比 Path 更好的解决方案?或者也许我做错了什么?我当前的解决方案是:我在开始时初始化路径,然后每次获得新值时向其中添加一个新行,然后翻译画布。


无论您使用什么方式,显示 20 000 个值的路径都可能会很慢,即使在 OpenGL 中,也只是发送大量数据到图形芯片进行绘制......

执行此操作的“正确”方法(性能方面)可能是缓存尽可能多的内容,并仅绘制需要绘制的内容。例如,您可以将前 N 个点绘制到位图,然后仅对接下来的 M 个点使用路径(并为前面的点绘制位图)。绘制位图非常快。因此,您可以偶尔刷新位图(这将花费更多时间),然后绘制剩余的点。

您还可以决定采用更短的路径:您真的需要 20 000 个值吗?您不能将点按 5 × 5 或 10 × 10(甚至更多)分组吗?目前,屏幕宽度最多为 1280 像素……

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android画布路径实时表现 的相关文章

  • Xamarin Android Webview Javascript

    我正在尝试通过 Xamarin for Android 创建一个移动应用程序 它有一个显示网站的 WebView 问题是正常按钮会触发 但 javascript 事件不会触发 我已经启用了 Javascript 但没有运气 如何在 Andr
  • 无限实时连续传输音频信号,Python

    我有一个简单的问题 在 Python 中从音频插孔流式传输音频信号时 使用 pyaudio 库如何继续流式传输音频信号 直到我选择 停止 程序 示例 我们的方式捕捉我们的网络摄像头 https docs opencv org 3 0 bet
  • 如何正确释放Android MediaPlayer

    我正在尝试向我的 Android 应用程序添加一个按钮 当点击该按钮时它会播放 MP3 我已经让它工作了 但没有办法释放 mediaPlayer 对象 因此即使在我离开活动后它仍然会继续播放 如果我在react 方法之外初始化MediaPl
  • Dialog.setTitle 不显示标题

    我正在尝试向我的对话框添加自定义标题 但是每当我运行我的应用程序时 它都不会显示标题 我创建对话框的代码是 final Dialog passwordDialog new Dialog this passwordDialog setCont
  • 如何知道Matlab中系统命令执行过程中经过的时间?

    我有一个运行系统脚本的 Matlab 代码 该脚本可能会因命令运行而停止 我想知道是否有一种方法可以让程序知道它是否花费了很长时间并执行其他操作 这是代码 tic status cmdout system iperfcmd The prog
  • Android:后台Activity可以执行代码吗?

    后台的活动是否被视为 正在运行 并且可以执行代码 还是处于挂起状态 他们暂停了 活动生命周期 http developer android com reference android app Activity html ActivityLi
  • 当 OnFocusChangeListener 应用于包装的 EditText 时,TextInputLayout 没有动画

    不能比标题说得更清楚了 我有一个由文本输入布局包裹的 EditText 我试图在 EditText 失去焦点时触发一个事件 但是 一旦应用了事件侦听器 TextInputLayout 就不再对文本进行动画处理 它只是位于 editText
  • 从 BroadcastReceiver 类调用活动方法

    我知道我可以做一个内部接收器类来调用接收器中的任何方法 但我的主要活动太大了 要做的事情也很多 因此 我需要一个扩展广播接收器的类 但它不是内部类 并且可以从我的主要活动中调用一种方法 我不知道是否可能 但我的活动是家庭活动和 single
  • 使用片段时应用程序崩溃

    我正在处理碎片和 我的代码中有一个我找不到的问题 logcat 指向我的一个片段中的这段代码 Override public View onCreateView LayoutInflater inflater ViewGroup conta
  • Android 中如何通过彩信发送图片?

    我正在开发多媒体应用程序 我正在通过相机捕获一张图像 并希望将该图像和文本发送到其他号码 但我不知道如何通过彩信发送图像 MMS 只是一个 http post 请求 您应该使用执行请求额外的网络功能 final ConnectivityMa
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • 我应该释放或重置 MediaPlayer 吗?

    我有自己的自定义适配器类 称为 WordAdapter 并且我正在使用媒体播放器 名为pronounce WordAdapter 类中的全局变量 我有不同的活动 其中每个列表项都有线性布局 名为linearLayout 我正在设置onCli
  • 如何在 Android 中从 WorkManager 取消工作?

    我已经保存了 WorkManagerUUID转换成String在领域数据库中 这是代码 Constraints constraints new Constraints Builder setRequiredNetworkType Netwo
  • Android:无法使用 DbHelper 和 Contract 类将数据插入 SQLite

    public class Main2Activity extends AppCompatActivity private EditText editText1 editText2 editText3 editText4 private Bu
  • 卡片视图 单击卡片移至新活动

    我是 Android 编程新手 正在研究卡片布局 我想知道如何使其可点击 android clickable true android foreground android attr selectableItemBackground 我的卡
  • 找不到符号 NOTIFICATION_SERVICE?

    package com test app import android app Notification import android app NotificationManager import android app PendingIn
  • 通过系统应用程序以编程方式静默安装 apk(无需 root)

    我有带有 android sharedUserId android uid system UID 1000 的系统级应用程序 设备未root INSTALL PACKAGES 权限包含在清单中 我可以静默安装下载的 apk 吗 我已经发现这
  • 通过电子邮件发送文本文件附件

    我正在尝试附加一个文本文件以便通过电子邮件发送 但每当我打开电子邮件应用程序时 它都会说该文件不存在 请帮助 Intent i new Intent Intent ACTION SEND i setType text plain i put
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A
  • Android 后台倒计时器

    我有一个 Android 应用程序 它管理一个倒计时器 类 CountDownTimer 它显示在应用程序屏幕中 以显示到达 00 00 还剩多少时间 我现在的问题是 当我按主页按钮或启动另一个应用程序时 应用程序 计时器不会在后台运行 所

随机推荐

  • 从txt中解析IP地址

    我正在尝试下载一个txt您可以找到的文件here http proxy ip list com download free proxy list txt 下载文件不是问题 testfile urllib URLopener testfile
  • 创建数组的副本并操作原始数组

    首先我要为我糟糕的英语道歉 我会尽力说得清楚 我有一个 3 维数组 只是一个 2 维数组的数组 我的目标是获取其中一个二维数组 并将其逆时针旋转 90 它看起来像这样 1 2 3 4 5 6 7 8 9 我尝试让它像这样 旋转 3 6 9
  • 发生类型错误:超出翻译容量

    当我运行我的示例时 出现以下类型错误 Translation capacity exceeded In this scope universe contains 21 atoms and relations of arity 8 canno
  • 未捕获的 RangeError:超出了最大调用堆栈大小,JavaScript

    我有个问题 open function type Some code document getElementById type addEventListener click l close type false close function
  • 写入开始后无法设置此属性!在 C# WebRequest 对象上

    我想重用 WebRequest 对象 以便保存 cookie 和会话以供以后向服务器请求 下面是我的代码 如果我第二次使用 Post 函数两次 request ContentLength byteArray Length 它会抛出异常 写入
  • 分叉的 IORef 读取器函数似乎会停止主线程

    我正在对并发性和内存可见性进行一些实验 并遇到了这种奇怪的行为 请参阅内联评论 module Main where import Data IORef import Control Concurrent import System CPUT
  • 在 PyQt 中打开第二个窗口

    我正在尝试使用 pyqt 在单击 QMainWindow 上的按钮时显示自定义 QDialog 窗口 我不断收到以下错误 python main py DEBUG Launch edit window Traceback most rece
  • 在 R 中使用 phantomJS 抓取具有动态加载内容的页面

    背景我目前正在使用 rvest 从 R 的一些网站上抓取产品信息 这适用于除一个网站之外的所有网站 其中内容似乎是通过 angularJS 动态加载的 因此无法迭代加载 例如通过 URL 参数 就像我对其他网站所做的那样 具体网址如下 ht
  • Zend Framework - 如何将 url 重写为 seo 友好的 url

    我得到了 Zend Framework 的网站 我在 Zend 中完全是菜鸟 例如我想制作一个网址 somewebsite com test about 看起来像这样 somewebsite com for fun link 我如何在 Ze
  • 无法找到“Firebase”的规范

    我在尝试时无法安装 Firebase pod pod install Analyzing dependencies Unable to find a specification for Firebase 这是我的 Podfile platf
  • 导入 javax.servlet 仍然无法解析[重复]

    这个问题在这里已经有答案了 这是我的 Eclipse 范围的 JRE 定义 清楚地显示已添加 servlet api jar 这里有同样的旧导入错误 似乎永远无法解决 Java不是很棒吗 有人有可能对为什么这仍然不起作用有一个简单 事实的答
  • NestJS EntityMetadataNotFoundError:找不到“存储库”的元数据

    我知道有很多关于这个主题的帖子 我真的很难理解我到底想做什么来解决这个问题 使用 Postman 当我尝试命中路线时 出现以下错误 ERROR ExceptionsHandler No metadata for OrganizationsR
  • 如何从插件中的 PartyList 获取联系人指南?

    我正在制作一个插件 该插件会在自定义活动短信的创建消息上触发 这些插件将使用第三方短信服务提供商发送实际短信 因此 我需要获取短信活动 收件人 字段中每个联系人的手机号码 这是一个类型为 PartyList 的字段 我目前正在使用以下代码
  • 如何将键值对插入 Hive 映射?

    基于以下tutorial https cwiki apache org confluence display Hive Tutorial Hive有map类型 但是 似乎没有记录的方法可以通过SELECT带有一些 UDF 或内置函数 这可能
  • GTK# 和 Windows 窗体有什么区别?

    GTK 和 Windows 窗体有什么区别 他们完全不同吗 Thanks Gtk http mono project com GtkSharp GTK 是 Gtk 工具包的 NET 绑定 该工具包采用 C 语言编写 以提高速度和兼容性 而
  • 空堆区域的开销

    我的工具是 Linux gcc 和 pthreads 当我的程序从多个线程调用 new delete 时 并且存在堆争用时 会创建 arena 请参阅 以下链接以供参考 http www bozemanpass com info linux
  • Python循环查询MySQL - 查询结果未更新?

    我有一小段查询 mySQL 的 python 代码 while True print running SQL query cursor execute select from sites where stage NEW results cu
  • 当JProgressBar达到100%时如何使JDialog不可见?

    相关代码段 JProgressBar progress JButton button JDialog dialog Fields of my GUI class progress new JProgressBar JProgressBar
  • 将向量列表转换为数据框

    我正在尝试将向量列表 本质上是多维数组 转换为数据框 但每次尝试都会得到意想不到的结果 我的目标是实例化一个空白列表 用包含有关该循环迭代的信息的向量将其填充到 for 循环中 然后在完成后将其转换为数据帧 gt vectorList lt
  • Android画布路径实时表现

    我想在 15 分钟内绘制 4 或 5 个 实时图表 可视化大量数据 每 30 毫秒一个新值 我正在使用 Path 但当我想要显示超过 20000 个值并平移画布时 它似乎工作得非常慢 并且每秒都变得更糟 我也尝试过使用drawLine 但它