MATLAB®图形是使用多个执行线程来实现的。下图说明了主线程和呈现线程在更新过程中是如何交互的。MATLAB端包含图形模型,描述图形硬件渲染的几何图形。渲染端在它自己的内存系统中有一个几何图形的副本。图形硬件可以在不阻塞MATLAB执行的情况下渲染屏幕。
当图形模型改变时,这些更新必须传递给图形硬件。发送更新可能是一个瓶颈,因为图形硬件不支持所有MATLAB数据类型。金宝app更新过程必须将数据转换为正确的形式。
当几何图形位于图形硬件内存中时,您可以通过使用该数据并最小化更新中发送的数据来实现性能优势。
更新包括以下步骤:
收集需要更新屏幕的更改,例如属性更改和添加的对象。
更新图形模型中的依赖项。
将这些更新发送到渲染器。
在返回执行到MATLAB之前,等待渲染器接受这些更新。
可以通过调用drawnow
函数。drawnow
当呈现程序接受更新时完成执行,这可能发生在呈现程序完成屏幕更新之前。
在函数执行期间,向图形添加图形对象或更改现有对象的属性并不一定会立即更新屏幕。更新过程发生在需要更新的图形发生变化时,代码:
调用drawnow
,暂停
,数字
,或其他有效地引起更新的函数(见drawnow
).
查询其值依赖于其他属性的属性(参见自动计算属性).
完成执行并将控制返回给MATLAB提示符或调试器。