Boa tarde Pessoal ! Pelo o que entendi , as condições do if são para que o programa possa localizar o centro em relação ao primeiro círculo vermelho(o maior) e em proporção ao canvas , Como assim? No eixo X o centro do alvo pode estar mais perto do lado direito ou do lado esquerdo do canvas e no eixo Y do topo ou da parte baixa do canvas , portanto para o programa saber que onde fica o centro do alvo(lembre-se , o desenhamos primeiro com um grande círculo vermelho) ele precisa da posição x e y do alvo ,onde ele aparece no canvas e a relação de x e y aleatorio com as coordenadas do canvas ! Por isso , para saber se esta mesmo no centro , vc precisa subtrair o raio de x caso o alvo tenha aparecido perto da borda esquerda ( menor) e somar ,caso tenha aparecido perto da borda direita(maior) , por exemplo . O mesmo se aplica ao eixo Y . É isso ?