繁体   English   中英

涂鸦……打开 GL?

[英]Doodles… Open GL?

我正在制作一个应用程序,其中一个 function 能够在页面上放置预制涂鸦,他们将能够放大和缩小涂鸦并将它们放置在他们希望的位置。 这就是 iPad 的全部内容。 我需要为此使用open GL还是有更好/更简单的方法? (iOS编程新手)

您应该能够使用CALayer来实现这一点。 您需要添加QuartzCore框架才能使其工作。 这个想法是将每个涂鸦表示为单个CALayer 如果您的涂鸦是图像,您可以使用contents属性将涂鸦分配给图层。 您将需要分配一个CGImageRef object,您可以使用CGImageUIImage属性轻松检索它。

您将需要一个视图,它将成为您的绘图板。 由于您希望能够移动和更改涂鸦的大小,因此您必须附加一个UIPanGestureRecognizer object 来移动图层和一个UIPinchGestureRecognizer来放大和缩小涂鸦。 由于识别器只能附加到视图而不是图层,因此调用手势处理程序时的重要部分将识别它们正在操作视图的哪个子层。 您可以使用locationInView:来获取手势的触摸:平移手势和locationOfTouch:inView:用于捏合手势,其中 view 参数是正在执行手势的视图,可以使用gesture.view检索。 一旦确定了焦点所在的图层,就可以使用translationInView:平移手势来移动图层,并使用捏合手势的scale属性来变换图层。

虽然CALayer对象是轻量级对象,但当它们太多时,您可能会遇到问题。 所以对你的应用程序进行压力测试。 另一个障碍是图像通常是 memory 猪,所以你可能无法获得很多涂鸦。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM