我正处于编写 Cocoa 绘图应用程序(适用于 Mac,而不是 iOS)的计划阶段,我正在尝试通过任何绘图框架来辨别我的一个功能在技术上是否可行。任何帮助或相关信息将不胜感激。

这个想法是对用 Quartz2D 绘制的对象应用 3D 变换。我考虑过将 Canvas View 的相关部分(绘制对象的位置)捕获为图像并将其发送到 Core Animation,但这似乎不是最佳选择。由于这是一个绘图应用程序,它与 3D 动画的相关性比变换后的形状要少。这个解决方案也不太理想,因为我假设如果 2D 对象是矢量路径而不是位图图像,我将不得不对其进行光栅化以应用这样的转换。理想的实现是使用户能够在 3 维中动态旋转平面对象,直到她找到合适的方向,锁定此变换,并且仍然能够手动调整路径的矢量点。

这可行吗?是否需要直接使用 OpenGL?任何形式的帮助都是最受欢迎的。

谢谢!

最佳答案

在我看来,你用 3D 变换做的任何事情,你都应该能够用多个仿射变换来做。参见 UIBezierPath's -applyTransform 方法。

关于objective-c - Quartz2D 路径上的 3D 变换 — 绘图应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4904979/

10-13 03:56