问题列表 - 第31953页

加速IO绑定的OpenGL应用程序

我最近一直在研究一个点云播放器,理想情况下应该能够从激光雷达捕获中可视化地形数据点并以大约30fps的顺序显示它们.然而,我似乎已经因PCI-e IO而陷入困境.

我需要为每一帧做的是加载存储在内存中的大点云,然后根据高度计算颜色图(我使用的东西类似于matlab的喷射图),然后将数据传输到GPU.这适用于云捕获,点数<100万.然而,在大约200万点时,这开始减慢到每秒30帧以下.我意识到这是很多数据(每点200万帧*[每点3个浮点数+每个颜色点3个浮点数]*每个浮点数4个字节*每秒30帧=每秒约1.34千兆字节)

我的渲染代码现在看起来像这样:

glPointSize(ptSize);
glEnableClientState(GL_VERTEX_ARRAY);
if(colorflag) {
    glEnableClientState(GL_COLOR_ARRAY);
} else {
    glDisableClientState(GL_COLOR_ARRAY);
    glColor3f(1,1,1);
}
glBindBuffer(GL_ARRAY_BUFFER, vbobj[VERT_OBJ]);
glBufferData(GL_ARRAY_BUFFER, cloudSize, vertData, GL_STREAM_DRAW);
glVertexPointer(3, GL_FLOAT, 0, 0);
glBindBuffer(GL_ARRAY_BUFFER, vbobj[COLOR_OBJ]);
glBufferData(GL_ARRAY_BUFFER, cloudSize, colorData, GL_STREAM_DRAW);
glColorPointer(3, GL_FLOAT, 0, 0);
glDrawArrays(GL_POINTS, 0, numPoints);
glDisableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);
glBindBuffer(GL_ARRAY_BUFFER, 0);
Run Code Online (Sandbox Code Playgroud)

每帧都会更改vertData和colorData的指针.

我希望能够做到的是,即使以后使用每帧可能达到700万点的大点云,也能够以每秒至少30帧的速度播放.这甚至可能吗?或者也许更容易网格化并构建高度图并以某种方式显示它?我对3D编程还很陌生,所以任何建议都会受到赞赏.

opengl 3d optimization performance lidar

2
推荐指数
1
解决办法
593
查看次数

优雅的高级Rails查询

我无法绕过更高级的Rails查询方法.在这种情况下,我有三个表:用户,友谊和事件.

我在每个模型中都设置如下

User->:has_many =>:friendships,:has_many =>:items

友谊 - >:belongs_to =>:用户

Event-> belongs_to =>:user

友谊只是两列:"user_id"和"friend_id",所以每个新友谊都会创建两个新行.

这是我用来查找"属于current_user的朋友的前四个事件的查询,其中start_date比现在晚."

find_by_sql(["SELECT DISTINCT e.id
              FROM events e
              WHERE e.start_date > ?
              AND e.user_id IN(
              SELECT f.user_id
              FROM friendships f
              WHERE f.friend_id = ?)
              LIMIT 0,4", Time.zone.now,current_user.id])
Run Code Online (Sandbox Code Playgroud)

在Rails中做这样的事情的真实和优雅方式是什么?我觉得这也是非常低效的......

mysql ruby-on-rails

1
推荐指数
1
解决办法
641
查看次数

阅读android MANIFEST.MF文件

有没有办法使用Android API读取当前运行的应用程序的META-INF\MANIFEST.MF文件?

我想为classes.dex文件读取SHA1并将其用作我的一个资产的加密密钥.

我不能使用.apk文件的签名,因为每次我创建一个新的apk我需要重新加密我的资产并放入apk文件,这需要重新签署.apk,它成为鸡和蛋的问题.

android manifest

2
推荐指数
1
解决办法
4572
查看次数

如何阻止我的记录器编写多个日志文件实例?

我写了一个自定义记录器,其中唯一的添加是以下方法:

public static synchronized Logger getLogger(String name) {
    try {
        boolean append = true;
        FileHandler handler = new FileHandler("tmp.log", append);
        Logger      log     = Logger.getLogger(name);
        log.addHandler(handler);
        return log;
    } catch (java.io.IOException ex) {
        //Logger.getLogger(LibraLogger.class.getName()).log(Level.SEVERE, null, ex);
    } catch (SecurityException ex) {
        //Logger.getLogger(LibraLogger.class.getName()).log(Level.SEVERE, null, ex);
    }
    return Logger.getLogger(name);
}
Run Code Online (Sandbox Code Playgroud)

它生成一系列日志文件tmp.log,tmp.log.1,tmp.log.2等.

我该如何防止这种情况发生?

java logging

2
推荐指数
1
解决办法
2336
查看次数

为init运行python文件的Linux内核

使用内置或可从内核访问的python解释器来构建Linux内核是否可能并且并不难以置信,它可以运行python文件作为init进程?

python linux kernel init

3
推荐指数
1
解决办法
1473
查看次数

Glassfish和Spring设置教程/示例?

一个简单的网页搜索并没有真正发现任何例子......所以我想知道是否有人能指出我在Glassfish上配置Spring的任何信息?我发现的一切都已经过时了.

谢谢!

java spring glassfish

1
推荐指数
1
解决办法
1024
查看次数

使用Clojure进行GAE应用程序的方式是什么?

我想使用Clojure和Compojure在GAE上开发应用程序,使用Eclipse或Idea,emacs不是一个坏主意:P

那么这是最好的方法呢?我不认为我想使用leiningen,因为我相信如果你通过学习曲线,maven可以非常强大 - 我读了这篇博客http://compojureongae.posterous.com/tag/googleappengine,其中'到现在为止是一个最好的信息来源.

如果你必须这样做,你的方法是什么?或者你会推荐我什么?

这个插件 - > http://code.google.com/p/maven-gae-plugin/好吗?因为如果我使用那个插件我可以在pom.xml中包含clojure.jar,基本上我已经准备好了,对吧?IntelliJ IDEA有类似之处吗?

还有其他建议吗?这是你的方法吗?

google-app-engine clojure compojure

8
推荐指数
1
解决办法
1172
查看次数

"If"语句中的Perl Strange -M标志

这个国旗是什么?

if(-M ..filepath ..)

什么是'-M'标志?

perl

7
推荐指数
2
解决办法
3939
查看次数

从linux终端发送消息到某个Web服务器

我试图找出如何从linux shell发送消息到http服务器.我想要的是shell发布消息,然后我可以编写一个小的php程序,根据内容和发件人将消息重新路由到预期的收件人.我似乎无法在Linux中找到执行此操作的命令.我真的很想坚持一个内置的实用程序.

如果您能想到更好的框架工作,请告诉我.

谢谢

linux post http

2
推荐指数
1
解决办法
2万
查看次数

如何更改进度对话框的位置?

我正在开发一个Android应用程序,需要知道如何更改进度对话框的位置.我需要将它定位在屏幕的底部而不是像默认情况下那样位于中心.

android position alignment progressdialog

33
推荐指数
2
解决办法
2万
查看次数