[Python-es] escalas

Iñigo Aldazabal Mensa inigo_aldazabal en ehu.es
Sab Ene 5 09:35:50 CET 2008


Arnau Sanchez escribió:
> Eduardo Matus escribió:
> 
>> quiero reprecentar un punto en 640 X 480 en un tablero de 800 X 600.. por
>> ejemplo.. (13,50) en 640 X 480 representarlo en 800 X 600
>>
>> Xscale = (13 * 800)/640
>> Xscale = 16.25
>>
>> Yscale = (50 * 600)/480
>> Yscale = 62.5
>>
>> que pasa con los decimales... los redondeo para arriba o abajo... o
>> existe
>> otra forma de calular esto??
> 
> La verdad, no creo que con esos tamaños se note mucho que lo hagas de
> una u otra forma. En cualquier caso, para minimizar el error puedes
> redondear al entero más próximo:
> 
> x2 = round((float(x1)*800)/640)
> _______________________________________________
> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
> 

Depende de  lo que quieras hacer tendrás que tener cuidado, ya que si
por ejemplo quieres transformar una imagen, una línea contínua te podría
aparecer discontinua, o un cuadrado de un color aparecería con píxeles
"blancos". Supongo que tendrías que interpolar de alguna forma. No creo
que sea difícil encontrar cómo se hace p. ej. en google.


Más información sobre la lista de distribución Python-es