Estoy tratando de hacer una pequeña herramienta de iPad para dibujar objetos geométricos simples (rect, redondos rect, elipse, estrella, ...). Mi objetivo es hacer algo muy parecido a Keynote (función de dibujo), es decir, dejar que el usuario agregue un rect (por ejemplo), cambiarle el tamaño y moverlo. Yo también quiero que el usuario pueda seleccionar muchos objetos y moverlos juntos.La mejor manera de implementar funciones de dibujo como Keynote
He pensado en por lo menos 3 diferentes maneras de hacerlo:
- extiende UIView para cada tipo de objeto, una clase para Rect, otra para la elipse, ... Con método de dibujo personalizado. A continuación, agregue esta vista como subvista de la vista global.
- Extiende CALayer para cada tipo de objeto, una clase para Rect, otra para Ellipse, ... Con método de dibujo personalizado. A continuación, agregue esta capa como subcapa de la capa de vista global.
- Extiende NSObject para cada tipo de objeto, una clase para Rect, otra para Ellipse, ... Con solo un método de dibujo que obtendrá como argumento un CGContext y un Rect y dibujará directamente el formulario en él. Esos métodos serán llamados por el método de dibujo de la vista global.
Soy consciente de que las dos primeras formas vienen con funciones para detectar el tacto en cada objeto, para agregar sombras fácilmente ... ¿pero me temo que son un poco demasiado pesadas? Es por eso que pensé en la última manera, que parece ser directa.
¿Cuál será la forma más eficiente? ¿O tal vez no pensé de otra manera?
Cualquier ayuda será apreciada ;-)
Gracias.