cocoa - 多个核心动画视口(viewport)

标签 cocoa macos core-animation calayer

我有一个复杂的 CALayers 结构,形成了一个可由用户操作的运动图形系统。它作为 UI 的一部分显示在主窗口中。我正在寻找一种好方法,在第二个显示器上将 CALayer 堆栈的多个小部分显示为“视口(viewport)”,其分辨率可能比主视图更高。我知道我可以渲染它们并重新绘制它们,但希望保持 CALayers 的分辨率独立性。

我的思考过程是将主 CALayer 添加到多个 super 图层,然后使用 mask 和变换的组合来让视口(viewport)显示所需的部分。不幸的是,一个 CALayer 只能有一个 super 层。

有什么好的方法可以实现这一点吗?提前致谢。

最佳答案

不幸的是,我认为您需要维护多个 CALayer 堆栈,每个 View 一个。由于所有层集都应该只反射(reflect)单个模型的状态,因此保持它们同步应该相对简单。

您可以优化缩放 View ,使其仅显示实际可见的管理层,这将减少资源使用。

关于cocoa - 多个核心动画视口(viewport),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6400590/

相关文章:

cocoa - 为什么超链接有时不显示在带有 NSAttributedString 的 NSTextField 中?

macos - 在 MacBook Pro 上使用 pytorch Cuda

iphone - 如何将多个 CAKeyframeAnimations 组合成单个关键帧动画?

macos - OpenGL vers >=2.0 要求纹理尺寸为 4 像素的倍数?

eclipse - Eclipse 中项目验证时出错 - clean

iphone - 像 camscanner 一样裁剪 UIImage

iphone - 有没有办法强制核心动画运行它的线程?

objective-c - 与 Web 服务器的持久连接(如 Web 上的 AJAX)

objective-c - macOS NSDistributedNotification : fprint or NSLog value of a specific key in userInfo?

objective-c - MacOS - 激活给定窗口 ID 的窗口