3

我有一个需要使用可视化框架的应用程序。我目前倾向于在 Java 桌面应用程序中使用处理。

问题:我有大约 500k+ 状态向量需要可视化。4D 点 - XYZ 和时间(类似 GPS)

我需要能够快速轻松地选择时间片,并且能够及时播放它们。我可以使用平面文件或数据库来更改输入。

所以问题是:哪种数据结构最能满足我的需求?我是否将文件读入 Arraylists?哈希图?还是内存数据库?或者是其他东西?

性能是 3D 可视化的必要条件。时间超过8小时。因此,并非所有这些都将立即显示。

有没有人尝试使用创造性的编码框架来进行这种类型的使用?有什么建议么?

谢谢!

4

4 回答 4

1

jMonkey提供了一个场景图,可以执行您所描述的操作。

它维护随时间变化的 3D 空间表示。我认为通常它使用系统时钟测量时间,这意味着您不直接操作它,但我敢打赌您可以插入一个允许您自己指定时间的组件......(即检查图表的状态您指定的时间)。

于 2010-08-05T23:23:39.897 回答
1

使用 OpenGL 处理是一种选择,但如果您遇到性能问题,我建议您查看openframeworkslibcinder

它们是 c++,而不是 java,但例如 openframeworks 的语法与 Processing 非常相似。

将 Matt Swoboda 的重新编码条目与其他处理实现进行比较。

想法是,尝试使用 OpenGL 进行处理以查看是否获得所需的帧速率,否则尝试使用 openframewoks 或 libcinder。

高温高压

于 2010-08-05T23:30:58.990 回答
0

二维数组听起来是个好主意。使用快速排序或归并排序等不错的排序算法,您将能够选择时间片。

于 2010-08-06T00:59:55.027 回答
-1
float [][]vectors=new float[4][500000];

只要确保你从头到尾对它们进行排序。保持简单并进行测试?

于 2010-08-05T23:40:26.857 回答