Pergunta

O sprite que contém todos os elementos do meu mundo o mundo usa o medidor do mundo real como unidade de distância, não sabe o que são pixels. Em seguida, aplico uma escala a este sprite para que pareça correto na tela. Atualmente eu uso 1 metro = 100 pixels, então escala = 100.

Se eu tentar desenhar uma linha dentro deste sprite, ele aparece lineStyle(thinkness) roda o parâmetro de espessura. Se eu especificar 0,5 (50 cm), ele sempre é desenhado com 1 pixel (1 cm). Se eu especificar 0,6, a linha se tornará 100 pixels ou 1 metro, espessa. Então, basicamente, eu só posso desenhar linhas de 1, 100, 200 etc pixels pensa.

Qualquer coisa que eu possa fazer sobre isso? Caso contrário, terei que usar uma unidade menor como milímetros para o meu mundo.

Foi útil?

Solução

O parâmetro de espessura para o linheiro deve ser um número inteiro na faixa de 0 a 255. Esse número inteiro é a espessura da linha nos pontos. Então, enviar um valor real apenas confunde flash. Você terá que fazer as contas e depois passar o Linestyle o valor inteiro apropriado. Com o seu 1 metro = 100 pixels e um ponto razoavelmente aproximado por um pixel, você deseja multiplicar seus valores de espessura em metros por 100 e depois converter em um número inteiro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top