- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我正在为一个 android 应用程序编写一个图形库(是的,我知道那里有很多,但没有一个提供我们需要的可定制性)。
我希望图表可以缩放和平移。
我希望体验流畅,CPU 占用少。
View.onDraw(Canvas)
Bitmap
OpenGL
OpenGL 可能是专业的解决方案,肯定会提供更大的灵 active ,但需要更多的工作(具体多少尚不清楚)。
在 OpenGL 中绝对更容易的一件事是平移/缩放,因为我可以操纵矩阵来使其正确,但我认为其余的应该更难。
我不怕弄脏我的手,但我想在开始挖掘之前知道我的方向是正确的。
我错过了任何解决方案吗?我的所有解决方案都合理吗?
我可以补充一点,当图表发生变化时,我想为变化设置动画,这可能是最艰巨的任务。
最佳答案
使用 View 的问题在于您继承了 UI 工具包本身的开销。虽然该工具包经过了很好的优化,但它的作用不一定是您想要的。当您想要控制绘图时,最大的缺点是无效/绘图循环。
您可以使用 SurfaceView 解决这个“问题”。 SurfaceView 允许您使用自己的渲染线程渲染到窗口上,从而绕过 UI 工具包的开销。而且您仍然可以使用 Canvas 2D 渲染 API。
然而,Canvas 使用的是软件渲染管道。您的性能主要取决于 CPU 的速度和可用带宽。在实践中,它很少像 OpenGL 那样快。 Android 3.0 为 Canvas 提供了一个新的硬件管道,但仅限于通过 Views 渲染时。您目前不能使用硬件管道直接渲染到 SurfaceView。
我建议你先试试 SurfaceView。如果您正确编写代码(不要绘制超出您需要的内容,仅重绘已更改的内容等),您应该能够达到您所寻求的性能。如果这不起作用,请使用 OpenGL。
关于android - 关于 Android 中高性能绘图的提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6881633/
很难说出这里问的是什么。这个问题是含糊的、模糊的、不完整的、过于宽泛的或修辞性的,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开它,visit the help center 。 已关
我有以下对象: var myObj = { "4":{//The key is a number String. id:4,name
我需要构建某种字典,其中还包含每个单词在该语言中出现的单词频率。通常,这将使用 std::unordered_map 来实现,对吧?现在问题来了……我想找到所有符合某些正则表达式的单词及其频率,而性能
软件开发通常会提到一个名词 “三高”,即高并发、高性能、高可用。 具体的指标定义,如:高并发方面要求QPS 大于 10万;高性能方面要求请求延迟小于 100 ms;高可用方面要高于 99.99
我有一个大约有 108000 个三角形的网格,应该用 WebGL 渲染。 目前我不使用框架,只使用纯 WebGL。我已经通过 id 映射实现了对象识别,以便使用回调功能和基本的相机操纵器进行拾取。 现
我读过无数的帖子,无数次地重写过代码,我发现自己碰壁了。由于应用了 CSS scale3d 转换的容器,我试图克服在滚动页面时不使用 CSS 固定元素位置的限制。虽然我最新的解决方案有效,但它有时仍然
我正在开发一个嵌入式系统,它需要非常频繁地存储和检索数据。我预计每秒可能有 100 次写入和 10 次读取。数据将以突发而不是连续的方式到达。 我想使用 SQLite 来存储所有这些数据,但由于它是一
当前情况 在我们的一款 SPA Web 应用程序中,我们使用自定义跟踪器请求来跟踪各种用户操作,例如 cta 点击、页面导航 等,该请求将一些信息传递到后端使用 POST 请求。 问题现在,因为这些跟
我正在编写执行大量表查找的程序。因此,当我偶然发现 Data.Map (当然),以及 Data.HashMap 和 Data.Hashtable 时,我正在仔细阅读 Haskell 文档>。我不是散列
我正在评估我们的高性能电信应用程序的 BPEL 引擎,但性能似乎很差。我们评估了 Apache Ode、SunBPEL 引擎、Active BPEL 等。您知道任何更快的 BPEL 引擎实现或 C/C
我目前正在重写一个旧的 ASP\ASP.NET 应用程序。由于我无法完全重写,所以我需要分部分进行。现在我正在将代码库从 ODBC 升级到 .net 连接器。 有一个函数可以在用户每次访问页面时进行一
旁注:我正在使用 JQuery,但没有使用任何第三方表格组件(我现在也不能)。 我的问题是我应该能够显示很多(10000)条经过的消息——每秒都会有数百条新消息,它们应该被添加到底部。当我们达到 10
为了争论,假设我试图在 MySQL 表中表示一个非常简单的文件系统。请注意,这并不是我正在做的,它只是为问题的简单基础做准备。所以不要费心告诉我存储文件的更好方法。该表的架构如下: varchar p
我希望优化我使用python时遇到的大数据解析问题的性能。以防有人感兴趣:下面显示的数据是六种灵长类动物全基因组DNA序列比对的片段。 目前,我知道如何处理这类问题的最好方法是打开我的~250(大小2
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我需要用 Ruby 制作一个小应用程序,它将以不同颜色显示通过 TCP 接收的日志行。推荐用于此类应用的 GUI 框架是什么? 我应该在 Windows 和 Linux 上工作。 最佳答案 Shoes
我正在尝试编写一个非常简单的 Web 服务器来执行以下操作: 接收请求。 响应一个小文件;关闭连接。 处理请求数据。 换句话说,响应不依赖于请求信息,但请求信息仍然很重要。数据将被保留,然后用于分析。
我正在使用 WebSocket 协议(protocol)(通过 WebSocketSharp)开发 C# 游戏服务器。目前,每当用户登录游戏时,我都会创建一个 token 并将其添加到 Concurr
我正在处理应用程序的延迟敏感部分,基本上我会收到一个网络事件来转换数据,然后将所有数据插入到数据库中。在分析之后,我发现基本上我所有的时间都花在了保存数据上。这是代码 private void ins
我正在尝试将视频输出(帧序列)输出到任何 qt 可见小部件。一开始我认为 QLabel 就足够了......但我错了。转换为像素图对于大型图像的处理器来说过于过载:例如 1080p。 还有其他解决方案
我是一名优秀的程序员,十分优秀!