para detectar la forma si que se necesitaria recursividad : se podria medir la distancia entre los puntos mas lejanos entre si, creando vectores entre ellos, eliminando los puntos que son combinaciones lineales de estos vectores y los que pertenecen a areas delimitadas 3 a 3, y mirando el numero y angulo de los vectores resultantes...claro esta q seria bastante mas complicado, pero si, se puede hacer
