Estoy desarrollando una aplicación Mac OS X que, como parte de su interfaz de usuario, mostrará muchos elementos visuales en su vista principal que se pueden seleccionar. Estos elementos se pueden ubicar realmente en cualquier lugar dentro de la vista. La interfaz de usuario admitirá varias formas de seleccionar los elementos: selección rectangular de marquesina, selección de marquesina elíptica y selección de lazo 'libre'.Algoritmo para implementar una herramienta de selección de lazo?
Ya tengo el trabajo de selección de marquesina rectangular y elíptica. El algoritmo es bastante simple; un elemento se considera "seleccionado" si el área del elemento se cruza con el área del rectángulo/elipse.
La selección de lazo funcionará tal como lo hace en las aplicaciones modernas de manipulación de imágenes como Photoshop; el usuario puede hacer clic y arrastrar una ruta que se cerrará sola, y los elementos contenidos dentro de la ruta dibujada serán seleccionados.
Este algoritmo probablemente será mucho más complejo que la selección rectangular/elíptica, ya que la forma de la selección no está restringida. Me pregunto si alguien tiene experiencia escribiendo algo como esto, o si puede orientarme en la dirección correcta sobre qué tipo de técnicas de programación son necesarias y cuál es la forma más eficiente en que puede funcionar este algoritmo.
Gracias de antemano.
Hola CJ, si has hecho con éxito la codificación de esta función, pega un enlace para el código de muestra. Realmente será de gran ayuda para mí y también para otros. Nos ahorrará mucho tiempo. Esperamos su ayuda. – Gyanendra