问题标签 [picking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
webgl - 如何在 Dart WebGL 应用程序中加速波段选择工具
手头的任务是向 Dart WebGL 应用程序添加波段选择工具。该工具将用于通过拖动鼠标在多个对象上绘制一个矩形。因此,可以在单个用户操作中选择/挑选多个对象。我目前正在使用 gl.readPixels() 从屏幕外渲染缓冲区中读取颜色。问题是,当一个大区域被波段选择时, gl.readPixels() 会发出数百万像素。扫描如此大量的颜色会浪费宝贵的时间来定位少数物体。
请任何人指出使用 Dart+WebGL 对多个对象进行波段选择的可能更快的方法。
作为参考,我在下面显示了波段选择工具的当前主要部分。
opengl - Trackball issue with Raypicking
I'm trying to develop a 3D raypicking in my OpenGL scene.
I have a working OBJ loader with a trackball.
Here trackball's functions:
If I cast a ray (CTRL + Left_click) at the beginning It works with correct 3D far_point and near_point If I rotate the object (use Trackball), the ray doesn't use real eye/far points and I can't figure out why. I've tried with GluLookAt instead of glRotatef, but I can't figure out how to move camera with mouse like this trackball does.
javascript - Three.js [r65]:通过 TrackballControls 旋转后通过 Raycaster 进行拾取工作异常
一点背景:
我有一个场景,其中填充了相当大量的对象(非合并),这些对象必须可以单独挑选。
这些对象中的每一个都是具有以下结构的 Object3D:
默认情况下,在初始渲染时,只有 child_1 是可见的。
每个 child_1 是一个平面几何,其四元数设置为相机的四元数,因此它始终面向它(类似于广告牌)
相机声明如下:
每个 child_1 都像这样插入到场景中:
在最初的渲染帧上一切正常:以下拾取功能有效。
但是,一旦使用(轨迹球)控件旋转:
- 初始外观()或相机([0,0,0])
- 或一组不同的坐标(如对象的中心)
然后采摘开始表现不佳。
平移后也是如此,放大/缩小后在较小程度上(但可能是由于错误的原因)也是如此。
我的问题是:在旋转期间或之后,我是否需要在某处更新矩阵?做点别的吗?就好像相机没有根据控件处理的旋转/平移进行更新。
在这里小提琴:
http://jsfiddle.net/Hal9/TrfpU/
如果您玩弄控件、缩放、旋转和平移,我希望您会注意到一些“蓝色方块”在悬停时不会触发红色助手外观。他们中的大多数都这样做,但不是全部。
textures - Jogl,仅创建红色通道 u16 但得到“纹理类型和格式组合无效”
所以,我正在尝试通过 id 来实现拣货。这意味着对于每个 drawArray,不同的唯一 id 将被设置为统一并保存在纹理上的红色组件中。
16位绰绰有余(65k元素),所以我选择使用shorts,我知道uniform变量只能是ui,但我还是决定试一试
我还在这里找到了另一个问题,其中答案包含一个带短裤的小例子
然而,这里我的代码初始化帧缓冲区和两个纹理,一个用于深度,一个用于 color_attachment0,只有红色分量为 16
我在 id-glTexImage2D 收到以下错误
为了完整起见,这里是 VS:
modelToWorldMatrix 目前尚未考虑
这里是FS:
使用短裤可行吗?
Jogl,Opengl 3.3
编辑:现在看来我解决了那部分
但是现在当我尝试设置短统一值时出现错误
错误
统一的位置似乎是正确的,因为它不是-1(实际上是1)......
那么如何上传短片呢?
javascript - WebGL:使用帧缓冲区拾取多个对象
我正在尝试在 WebGL 中实现拾取。我有很多物品(大约 500 个),我希望每个物品都可以被挑选出来。为了做到这一点,我做了一个循环,为每个对象分配一个唯一的颜色(参见拾取原则):
framecolors
然后在经典缓冲区中使用以检查每个对象是否具有不同的红色阴影。有效。
现在,我想使用对象的原始颜色和背景中带有红色阴影的帧缓冲区。我已经通过了一些代码,我有点困惑。
这是我到目前为止所尝试的。
采摘前调用的函数:
之后调用的函数:
正如您可能理解的那样,我对帧缓冲区不太满意,我只是不太了解它们是如何工作的,尽管我阅读了很多关于它们的信息。我不知道如何链接framecolors
到帧缓冲区。有办法吗?
谢谢,R。
java - 为什么在另一个 IDE 中运行时,Eclipse 中的程序可能会出现空指针?
我无法让一些代码在 Eclipse 中工作。它是带有来自 Processing 的元素的 Java 代码,它在 Processing IDE 中工作,但在 Eclipse 中会立即出现空指针异常。它还涉及另一个名为 Picking 的库。我有其他处理代码在 Eclipse 中运行良好,所以我怀疑它与 Picking 库有关。
Picking jar 在我的构建路径上,根据堆栈跟踪,我认为它可以正常访问。
这是堆栈跟踪:
这是代码:
}
提前感谢您提供的任何帮助。
ios - GLKMathUnproject :检测对象上的点击
所以,似乎 GLKit 有 GLKMathUnproject 可以用来计算你在 3D 空间中点击的位置(太棒了)
但是,我无法让它工作,我复制了几个不同的示例,但它仍然没有检测到我在 0,0,0 处单击我的立方体。我基本上做了一个 for next 循环,看看我的光线是否击中了我的立方体。
java - 在 display() JOGL 中调用 glReadPixels
我正在尝试实现对象拾取。我有代码将对象渲染为纯色、不亮的颜色,然后读取屏幕缓冲区中的像素。我解释读数glReadPixels()
以确定光标当前位于哪个对象上。最后,我重新渲染所有光照、纹理和颜色。
问题是调用glReadPixels()
返回给我最终渲染的像素颜色,而不是拾取渲染。我将不胜感激如何阅读拾取渲染像素的解释。
我知道我可以使用 OpenGL 名称堆栈,但坦率地说,我觉得它既不方便又荒谬。
openerp - Openerp:如何在交货单中显示新字段
我在 stock.picking 中添加了新字段,并希望它们作为 Delivery Orders 笔记本中的新页面出现在表单视图中。
我认为我遇到了麻烦,因为交付订单中使用的模型是 stock.picking.out,它继承了 stock.picking。
据我所知,使用的表单视图是stock.view_picking_out_form,它继承了stock.view_picking_form。
我在 OpenERP 7 中尝试了很多东西,但都没有奏效。
在 6.1 版中,它的工作方式是这样的......
.py:
xml:
任何人都可以帮忙吗?
谢谢。
c++ - OpenGL Picking 在错误的地方选择
我正在尝试通过拾取来识别 Qt 中 OpenGL 中 mousPressEvent 上的绘制对象。
我做了一些研究,但无法找到问题所在。
很明显,它可以识别某些东西(因为 glRenderMode(GL_RENDER) 的返回值通常是大于 0 的整数),但当我单击对象时不一定。
我认为 gluPerspective 是这里的问题,但我只是不知道如何解决它。
鼠标按下事件:
绘图功能:
EDIT1:也许完成代码会有所帮助?
初始化器:
调整大小: