问题标签 [off-screen]
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.
performance - OpenGL:快速离屏渲染
我需要使用 OpenGL 在屏幕外渲染很多(数万)图像。
我在 Windows 下运行并使用 QT 作为框架。解决方案只能是windows,这并不重要。
从我使用谷歌发现的情况来看,有很多选项可以做到这 一点这篇文章似乎相当过时,提出了一些方法,其中相关的方法是:
- 特定于 Windows - 使用
CreateDIBSection
并以某种方式将纹理绑定到它。 - 使用我的卡上似乎支持的 pbuffers 扩展。
该线程(消息 6)建议使用 QT 特定的方式来执行此操作QGLWidget::renderPixmap
我的问题是——哪一个是最快的方式?pbuffers 似乎是最安全的选择,因为它保证在硬件上执行但不是使用 CreateDIB 方法也通过硬件?QT方法呢?这似乎存在一些上下文创建问题。当然,我不想为我创建的每个图像创建一个新的上下文。
有没有人对此有一些好的经验?
编辑:回答评论 -
我有一个不变的场景,根本没有改变,我从许多不同的角度渲染它。现在,图像会返回给用户并由 CPU 处理。将来它们可能会在 GPU 上进行处理。
iphone - UIView:如何进行无损绘图?
我原来的问题:
我正在创建一个简单的绘图应用程序,并且需要能够在我的
drawRect
. 在不完全替换现有内容的情况下绘制现有内容的正确方法是什么?
根据在这里和其他地方收到的答案,这就是交易。
您应该准备好在
drawRect
调用时重新绘制整个矩形。您无法通过执行以下操作来防止内容被删除:
[self setClearsContextBeforeDrawing: NO];
这只是对图形引擎的一个提示,让它为您预先清除视图是没有意义的,因为无论如何您可能需要重新绘制整个区域。它可能会阻止您的视图被自动删除,但您不能依赖它。
要在视图顶部绘制而不擦除,请在屏幕外位图上下文中进行绘图(系统永远不会清除该上下文。)然后在您的 中
drawRect
,从该屏幕外缓冲区复制到视图。
例子:
TODO:任何人都可以优化,drawRect
以便只使用(通常很小的)修改后的矩形区域进行复制吗?
wpf - WPF - 在屏幕外渲染的网格上模拟鼠标事件
我正在将具有多个元素(按钮、文本框等)的 WPF 网格渲染为位图,然后将其用作 Direct3D 场景中 3D 表面的纹理。对于用户交互,我创建了一条从 2D 鼠标光标位置到 3D 场景的 3D 射线,找到与 gui 表面的交点。所以我知道用户在 WPF 网格上单击的位置,但从那里我被卡住了:
如何在 WPF 元素上模拟鼠标事件,而它们实际上并未显示在打开的窗口中而是呈现在屏幕外?
最近,我正在研究 UIAutomation 和 RaiseEvent 但它们用于将事件发送到单个元素,而不是整个可视化树。手动遍历树并在光标位置查找元素将是一种选择,但我还没有找到一种方法来准确地做到这一点。VisualTreeHelper.HitTest 是一个好的开始,但它没有找到 TextBox,而是找到了 TextBoxView,而不是 ListBox,它找到了 Border。
编辑:在 HitTest 的结果回调中返回 HitTestResultBehavior.Continue 让我可以遍历给定点的所有元素。我现在可以将鼠标事件发送到所有这些元素,但 MouseEventArgs 对象的值是真实鼠标的值。所以我必须创建一个显然是不可能的自定义 MouseDevice。
objective-c - 屏幕外的图形操作会产生处理开销吗?
我正在尝试为应用程序优化一些图形例程,我想知道是屏幕外动画(例如,[object startAnimating])还是通过设置它的矩形(屏幕外)来简单移动 UIImageView,有任何处理器开销,还是在屏幕外时以某种方式忽略它们?
非常感谢您的帮助。
image - 在内存中渲染 MATLAB 图
是否有任何替代方法可以使用getframe
并将saveas
图形的内容保存到光栅图像以供进一步处理?
方法一:getframe
这具有在调用中显示图形以执行屏幕捕获的严重缺点,getframe()
并且在循环中执行此类渲染时存在问题(即content
在每次迭代中保存为视频帧)。
方法二:saveas
这种方法具有写入磁盘的严重缺点,这在多线程应用程序中存在问题,并且比直接渲染到内存要慢。由于saveas()
在调用 PNG 编码器之前显然会渲染到内存,所以我想要的是可能的,但我在 MATLAB 文档中找不到任何只执行渲染部分的函数。
问题:
您是否知道将任意axes
内容渲染到光栅图像的另一种方法?
iphone - iPad - 在屏幕上查看动画时没有用户交互
好吧,这是一个新手问题,所以我提前道歉。我有一个 UIView,我在屏幕外的 Interface Builder 中布置了它。当用户按下按钮时,我想在屏幕上为这个视图设置动画。它可以工作,但我无法与 UIView 中的任何按钮交互。我已经读过,当您制作动画时只有视图会移动,并且实际对象会保留它们的位置,所以我尝试设置 UIViews 图层的位置,但这会导致我的 UIView 菜单在左侧显示额外的 81 个像素。发生这种情况时,我可以与按钮交互,但我需要它与屏幕右侧齐平。这是我在 openMenu 按钮上的 IBAction 中的代码:
然后在 animationDidStop 方法中:
帮助???
css - 如何将单个 div 移出屏幕
我有 2 个重叠的 div,如下所示:
我需要做的是在屏幕外设置“后退”div一段时间,然后将其移回。我尝试使用一堆不同的 jquery 方法移动它,但由于某种原因,它们移动了所有div 而不是具有指定 id 的那个。
那么如何在不影响顶部的情况下仅将底部的一个移出屏幕?它根本不需要动画;我只需要把它放在一边直到需要。(并且“隐藏”不起作用,因为它弄乱了我的闪光灯,所以如果您不介意,请从您的建议中省略它。:)
谢谢。
jquery - 扩展DIV如何检查它何时超过屏幕尺寸
我们有一个 DIV,它根据表单中的用户选项加载内容。DIV 可以变大以在屏幕上看到,因为它也是一个粘性元素并在屏幕上跟随用户。
如果 DIV 本身的某些部分不在屏幕上,我们将如何让 DIV 工作,如果是,则显示一个可以链接到完整内容的按钮。
有任何想法吗?
奇妙
java - 在非光栅图形配置中显示 JFrame
问候,
我正在尝试在非屏幕设备中获取 JFrame 绘图。JFrame 构造函数有一个
似乎允许这样做:
我的第一次尝试是创建自己的 GraphicsConfiguration,当调用 getType() 时,他的 GraphicsDevice 报告了 GraphicsDevice.TYPE_IMAGE_BUFFER。
但是 JFrame.init 专门查找类型并在类型不是 TYPE_RASTER_SCREEN 时抛出异常:
接下来我尝试让我返回的 GraphicsDevice 报告 GraphicsDevice.TYPE_RASTER_SCREEN。这允许正确初始化 JFrame,但是当它显示它时,我得到了
所以我已经没有想法了,关于如何绘制一个不会出现在屏幕上的 JFrame,但它的布局和功能从来都不是那么完整。
我在这里陷入了一个兔子洞,或者这可以做到吗?
android - android截取屏幕外页面
我正在开发一个安卓应用程序。我有一个活动,比如说 A,它用视图填充整个屏幕。在 AI 中单击一个按钮想启动另一个活动,比如说 B,它也有一些视图和控件。我希望活动 B 不在屏幕上,并想从 A 截取 B 的屏幕截图。是否可以?
注意:我通过将绘图缓存保存到位图中成功地截取了页面 A 的屏幕截图,但努力截取屏幕外页面的屏幕截图。