Título: Reconocer areas de imagenes - ayuda Publicado por: Maurice_Lupin en 25 Noviembre 2011, 17:57 pm Una vez vi un programa que tenia una imagen y uno podia hacer click en distintas areas de la imagen y se obtenia un valor. Pero la imagen, ni las areas de la imagen eran cuadradas y menos redondas.
Existe algun boton u otro control que me permita hacer esto, en flash creo que se puede hacer, estoy buscando información para vb.net. Saludos. Título: Re: Reconocer areas de imagenes - ayuda Publicado por: Novlucker en 25 Noviembre 2011, 18:48 pm ¿Puedes replantear tu pregunta? No se ha entendido :xD (al menos yo ...)
Saludos Título: Re: Reconocer areas de imagenes - ayuda Publicado por: Maurice_Lupin en 26 Noviembre 2011, 14:11 pm Bueno, digamos esta imagen
(http://s3.subirimagenes.com:81/imagen/previo/thump_7179099pruebamancha.png) Ahora si hago click en la parte azul, obtendre un valor de 1 y si hago click en el rojo obtendré 2. El asunto esta en detectar en que parte hice click. Lo que devuelva es más fácil de codificar :) Tengo una idea, pienso en hacer un mapa de bits de la imagen, utilizaria una matriz de enteros. Me pregunto hasta cuanta memoria podría utilizar como máximo. Saludos. Título: Re: Reconocer areas de imagenes - ayuda Publicado por: Novlucker en 26 Noviembre 2011, 17:08 pm Partiendo de la base de que la imagen es mostrada en un picturebox, podrías invocar al evento onMouseClick para luego calcular la posición del click, y de ser necesario obtener los pixeles del lugar donde se hizo el click.
Saludos Título: Re: Reconocer areas de imagenes - ayuda Publicado por: Keyen Night en 3 Diciembre 2011, 00:36 am @Up x2
Novlucker plantea una idea muy buena, al menos es una buena solución, obtener el color del pixel dónde el mouse se encuentra al momento del click y si es azul entonces retorna 1 si es rojo entonces 2. Claro, si fuesen imágenes de muchos colores hay la cosa se pone un poco más compleja, lo primero que se me viene a la mente es esa API que he usado mucho PtInRect, que puede saber si un punto está dentro de un rectángulo, basándose en como funciona esa API, podrías trasladar la funcionalidad a un área limitada por puntos. |