Pregunta

Estoy buscando una fórmula que me dará toda la Vector2 Points dentro de un cierto radio dado el centro.

Básicamente lo que estoy tratando de hacer es cambiar el color de cada píxel en una textura de 256 x 256 que está dentro de un cierto radio de un píxel específico (utilizando el motor de juego Unity3d). Lenguaje de programación en realidad no importa, ya que es probable que pueda convertirlo en algo que pueda usar.

¿Fue útil?

Solución

Let cx y cy ser centro x y el centro y, y r el radio.

r2 = r * r;
for each dy = 0 ... r
    dx = 0
    while (dx*dx + dy*dy <= r2)
        within(cx+dx, cy+dy)
        within(cx-dx, cy+dy)
        within(cx+dx, cy-dy)
        within(cx-dx, cy-dy)
        dx++

Una optimización sería, no dx pone a 0 en cada iteración, pero hasta cierto valor más cercano de inmediato.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top