Alguien sabe si existe alguna funcion en LUA para pegar/copiar y para crear carpetas y archivos de texto?
Saludos
Espero sus respuestas
¡Iníciate en Linux fácilmente! Sólo entra aquí y comprueba que distribución se adapta mejor a tí.
Mi review: iPod Touch 4G
Tio te lo has currado eh
Tio te lo has currado eh XD
Saludos
Rotar imágenes.
Como bien dice "carlosgs" en el foro de homemister colge un ejemplo de rotación de imágenes que encontre por ahi y fué el que utilizé para rotar los tanques en el "Cañones Corazas".
Aunque se podría girar una imagen usando trigonometria pura, en "LUA" no os lo recomiendo por que las operaciones con pixels son extremadamente lentas.
La solución es utilizar las funciones Gu 3D. la idea es pegar una foto como textura en un cuadrado (Realmente son dos triangulos) y luego rotarlo.
Es un poco complicadillo al principio pero es la única forma en "LUA" de rotar sprites en tiempo real.
Cuando vuelva de vacaciones poco ha poco ire poniendo ejemplos practicos de las funciones "LUA", pero hasta el Martes no vuelvo a Logroño.
Rotar imágenes
Como bien ha dicho pipagerardo, lo mejor seria hacerlo con la Gu 3D que incorpora LUA, pero para los mas newies, yo hize una funcion para una libreía de retoque de imagen que hize. Asi que solo poner la funcion al inicio de vuestro script y ya sta:
function turn(imag,t)
local h = imag:height()
local a = imag:width()
local te = t
if te==-1 then
local ima = Image.createEmpty(h,a)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(z,a-w-1,color)
end
end
return ima
elseif te==1 then
local ima = Image.createEmpty(h,a)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(h-z-1,a-w-1,color)
end
end
return ima
elseif te==0 then
local ima = Image.createEmpty(a,h)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(a-w-1,h-z-1,color)
end
end
return ima
end
end
-Bien, la sintaxis es la siguiente:
Imagen turn(imagen, tipo de rotación)
Rotación = 1 -- girar 90º a la derecha
Rotación = -1 -- girar 90º a la izquierda
Rotación = 0 -- girar 180º
- Ejemplo práctico (Listo para ser ejecutado):
function turn(imag,t)
local h = imag:height()
local a = imag:width()
local te = t
if te==-1 then
local ima = Image.createEmpty(h,a)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(z,a-w-1,color)
end
end
return ima
elseif te==1 then
local ima = Image.createEmpty(h,a)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(h-z-1,a-w-1,color)
end
end
return ima
elseif te==0 then
local ima = Image.createEmpty(a,h)
for w=0,a-1 do
for z=0,h-1 do
color = imag:pixel(w,z)
ima:pixel(a-w-1,h-z-1,color)
end
end
return ima
end
end
Imagen = Image.load("Image.jpg")
while true do
screen:clear()
Imagen_girada = turn(Imagen,-1)
screen:blit(100,100,Imagen_girada)
screen.waitVblankStart()
screen.flip()
end
Programador LUA
Gracias pero me surgio una
Gracias pero me surgio una duda mas :
Se puede rotar una imagen?
Saludos
Si
Creo que con funciones trigonométricas, de hecho ayer le comentaba a Carlosgs que quería intentar rotar una imagen.
Saludos
Tanos, no me acordaba
pero ahora he caído, en que Pipagerardo colgó unos sources en la web del LPHM, sobre la rotación de imágenes, que le ayudaron.
Aquí te los cuelgo (yo los he mirado así por encima y veo que usa las funciones 3d para crear el efecto).
http://downpsp.evoconsolas.com/memoryweb/MWfiles/gx.rar
Saludos!
PD: Gracias pipagerardo ;-)
https://github.com/CarlosGS/
Y todavia no sabes cual
Y todavia no sabes cual es?
Saludos
No sabes que es trigonometría :P
Claro que sé las funciones, pero el problema es aplicarlas:
math.sin()
math.atan()
math.cos()
...
Me parece que no todavia voy a pasar a 1º de ESO
No se si llevais el mismo tipo de enseñanza por ahi...
Y como se aplican porque me as dejado con el gusanillo
Saludos
No soy matemático, no puedo ayudarte mucho
Investiga qué es:
Seno, Coseno, Tangente, Cotangente...
Se lo que dices pero no te
Se lo que dices pero no te preocupes y gracias .
Ya lo aprendere
SAludos
se lo
dificil k puede ser eso aprende to esas funciones matematicas pero un dia de esto la estudio.
Saludos men
Si que tiene y es muy facil
Si que tiene y es muy facil pa copiar y pegar. Y se puede hacer solo con el HM.
el script pa copiar y pegar es:
System.copyFile("ms0/directorioviejo/achivo que quieres
copiar","ms0/directorio nuevo/archivo que quieres copiar",0)
Si quieres cortar un archivo solo cambia el 0 por 1
Para crear carpetas tienes que meter
System.creatDirectory("ms0/directorio")
(del creador de carpetas no soy seguro al 100% si es asi pero creo que asi es)
Sobre crear archivos de texto nose...y no se si hay
Salu2