He estado desconcertando la renderización de caminos durante los últimos días sin ninguna solución real.¿Cómo renderizar una ruta sin problemas dado un conjunto de puntos de datos?
Por representación de camino quiero decir dado un conjunto de puntos de datos x, y (a distancia variable) dibujar una línea punteada (o en mi caso un cuadrante rotado) de longitud fija a intervalos regulares entre los puntos de configuración de datos crea un camino suave.
Si tiene control de vuelo para el iPhone, estoy tratando de crear un efecto similar a la representación de ruta en ese juego.
Aquí está mi problema. Si el ancho del gráfico + el espacio no es exactamente la distancia entre los dos puntos del conjunto de datos, entonces me queda con una superposición o una superposición. Mi única solución para esto es
1) Tome el punto de superposición/solapamiento para que sea el punto final del siguiente punto de ajuste de datos y luego dibuje desde allí hasta el siguiente punto.
2) Dejar correr siempre bajo el criterio de valoración final y empezar un nuevo máximo desde el siguiente punto de datos.
Ninguna de estas soluciones es ideal y ambas tienen problemas.
¿Alguien tiene una mejor solución?
Cualquier ayuda sería muy apreciada.
La siguiente pantalla ilustra lo que estoy tratando de crear: http://www.firemint.com/flightcontrol/screenshots-peaceful.html
El gruesa línea de puntos.
Actualización:
Hola he intentado darlo por vía curvas, calculé una curva cúbica (a través de 4 puntos de control). Sin embargo, el problema es uno de interpolación. Dado 0 y 1 puedo pasar por 2 puntos. Sin embargo, quiero pasar por la ruta completa (puntos de control múltiples). El problema es que algunos puntos de control estarán separados por una distancia diferente y, por lo tanto, avanzar de manera constante a un incremento escalonado (digamos 0.2) producirá resultados irregulares. Me doy cuenta de que para pasar correctamente por todo el camino necesitaría calcular la longitud de toda la curva ... la pregunta es ¿cómo hago eso? ... ¿O hay otra manera?
Saludos ricos
¿Alguna vez encontró una solución sobre este tema? –