Pregunta

El sprite que contiene todos los elementos de mi mundo juego utiliza el medidor en el mundo real como unidad de distancia, que no sabe qué píxeles son. Luego aplico una escala a este elemento sprite para que parezca correcta en la pantalla. Actualmente utilizo 1 metro = 100 píxeles, por lo escala = 100.

Si trato de dibujar una línea en el interior de este elemento sprite aparece rondas lineStyle(thinkness) el parámetro de grosor. Si especifico 0,5 (50 cm) que siempre se dibuja con 1 pixel (1 cm). Si especifico 0,6, la línea se convierte en 100 píxeles, o 1 metro, de espesor. Así que, básicamente, sólo puedo dibujar líneas de 1, 100, 200, etc píxeles thinkness.

Todo lo que se puede hacer al respecto? De lo contrario voy a tener que usar una unidad más pequeña, como milímetros de mi mundo.

¿Fue útil?

Solución

El parámetro espesor para lineStyle debe ser un número entero en el rango de 0 a 255. Este número entero es el espesor de la línea en puntos. Por lo tanto el envío de un valor real solo confunde flash. Vas a tener que hacer lo mismo matemáticas, a continuación, pasar a lineStyle el valor entero correspondiente. Con sus 1 metro = 100 píxeles, y un punto razonablemente aproximado por un píxel, que querría multiplicar sus valores de espesor en metros por 100, a continuación, convertir a un entero.

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