mikey8668
Usuario (Japón)

28 Horas Bajo Fuego link: http://www.youtube.com/watch?v=SDr2vlj7cFI link: http://www.youtube.com/watch?v=AqFfBaerTxs link: http://www.youtube.com/watch?v=HAENpL1vv_k link: http://www.youtube.com/watch?v=Lrq-sNYtVFA link: http://www.youtube.com/watch?v=FiROmhevlj0
Woody Allen, la vida y nada más Para ti soy ateo. Para Dios, la oposición. link: http://www.youtube.com/watch?v=N2DJOPYvmAM link: http://www.youtube.com/watch?v=yT6dKGETnZI&feature=relmfu link: http://www.youtube.com/watch?v=n_t3vd5F6nY&feature=BFa&list=SP1F1605A102602D28&lf=list_related link: http://www.youtube.com/watch?v=nfuBlO7CCcQ&feature=relmfu

Juego Pong Hola a todos les traigo mi primer Juego en Pygame espero les guste. con este primer juego voy a desarrollar un manual para explicar todo lo que hice espero les guste Mikey Codigo #-------------------------------------------------------------------------------------------------------------------------- import pygame from pygame.locals import * import sys, os if not pygame.font: print 'Warning, fonts disabled' if not pygame.mixer: print 'Warning, sound disabled' ancho,alto=640,480 #-------------------------------------------------------------------------------------------------------------------------- def cargar_img(nombre): try: img = pygame.image.load(nombre) except : print 'no se puede cargar la imagen '+str(nombre) return img def cargar_sonido(nombre): try: pygame.mixer.init() sonido = pygame.mixer.Sound(nombre) except : print 'no se puede cargar el sonido '+str(nombre) return sonido #-------------------------------------------------------------------------------------------------------------------------- class pelota( pygame.sprite.Sprite, pygame.font.Font): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image=cargar_img('../pelota.png') self.rect = self.image.get_rect() self.rect.center = (300,200) self.velosidad=[7,8] self.text=Text() self.punt=0 self.punt1=0 def update(self): self.rect.move_ip((self.velosidad[0], self.velosidad[1])) self.control() def control(self): sonido=cargar_sonido('../punto.ogg') if self.rect.left <=0 or self.rect.right>=640: self.velosidad[0]=-self.velosidad[0] if self.rect.top <=0 or self.rect.bottom>=480 : self.velosidad[1]=-self.velosidad[1] if self.rect.left<=0: self.punt +=1 sonido.play() self.rect.center=(300,200) if self.rect.right>=640: self.punt1 +=1 sonido.play() self.rect.center=(300,200) #-------------------------------------------------------------------------------------------------------------------------- class Text: def __init__(self, FontName = None, FontSize = 30): pygame.font.init() self.font = pygame.font.Font(FontName, FontSize) self.size = FontSize def render(self, surface, text, color, pos): text = unicode(text, "UTF-8") x, y = pos for i in text.split("r"): surface.blit(self.font.render(i, 1, color), (x, y)) y += self.size #-------------------------------------------------------------------------------------------------------------------------- class raqueta_uno(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image=cargar_img('../raqueta_uno.png') self.rect = self.image.get_rect() self.rect.center = (12,240) def update(self): keys = pygame.key.get_pressed() if keys[K_d]: self.rect.y += 6 if self.rect.center==(12,480): self.rect.y -= 6 if keys[K_e] : self.rect.y -= 6 if self.rect.center==(12,0): self.rect.y += 6 #-------------------------------------------------------------------------------------------------------------------------- class raqueta_dos(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image=cargar_img('../raqueta_dos.png') self.rect = self.image.get_rect() self.rect.center = (620,240) def update(self): keys = pygame.key.get_pressed() if keys[K_DOWN]: self.rect.y += 6 if self.rect.center==(620,480): self.rect.y -= 6 if keys[K_UP] : self.rect.y -= 6 if self.rect.center==(620,0): self.rect.y += 6 #-------------------------------------------------------------------------------------------------------------------------- class raqueta_ia(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.image=cargar_img('../raqueta_dos.png') self.rect = self.image.get_rect() self.rect.center = (620,240) #-------------------------------------------------------------------------------------------------------------------------- def update(self): self.rect.y=pelota.rect.y self.control() def control(self): if self.rect.top <=0: self.rect.top=0 if self.rect.bottom >= 480 : self.rect.bottom=480 #-------------------------------------------------------------------------------------------------------------------------- def colicion(sprite,grupo): for COLICION in pygame.sprite.spritecollide(sprite,grupo,0): pelota.velosidad[0]=-pelota.velosidad[0] sonido.play() #-------------------------------------------------------------------------------------------------------------------------- sonido=cargar_sonido('../golpe.ogg') screen=pygame.display.set_mode((ancho,alto)) raquetas=pygame.sprite.RenderClear() #-------------------------------------------------------------------------------------------------------------------------- raqueta1=raqueta_uno() #raqueta2=raqueta_dos() raqueta3=raqueta_ia() raquetas.add(raqueta1) #raquetas.add(raqueta2) raquetas.add(raqueta3) white = (255, 255, 255) pelota=pelota() text=Text() clock = pygame.time.Clock() #-------------------------------------------------------------------------------------------------------------------------- while 1: clock.tick(60) keys = pygame.key.get_pressed() for event in pygame.event.get(): if event.type == QUIT: pygame.quit() if keys[K_ESCAPE]: pygame.quit() #-------------------------------------------------------------------------------------------------------------------------- colicion(pelota,raquetas) pelota.update() raqueta1.update() #raqueta2.update() raqueta3.update() screen.fill((0,0,0)) screen.blit(cargar_img('../mesa.jpg'),(2,0)) raquetas.draw( screen ) text.render(screen, "Pong", white, (320, 0)) numero1=str(pelota.punt1) text.render(screen, "Jugador A: "+numero1, white, (20, 0)) numero=str(pelota.punt) text.render(screen, "Jugador B: "+numero, white, (500, 0)) screen.blit(pelota.image,pelota.rect) screen.blit(raqueta1.image,raqueta1.rect) #screen.blit(raqueta2.image,raqueta2.rect) screen.blit(raqueta3.image,raqueta3.rect) #-------------------------------------------------------------------------------------------------------------------------- if pelota.punt==5 or pelota.punt1==5 : sonido=cargar_sonido('../final.ogg') if pelota.punt > pelota.punt1: sonido.play() text.render(screen, "Jugador B es el Ganador", white, (200, 200)) pygame.display.flip() pygame.time.delay(7000) pelota.punt1=0 pelota.punt=0 if pelota.punt1>pelota.punt: sonido.play() text.render(screen, "Jugador A es el Ganador", white, (200, 200)) pygame.display.flip() pygame.time.delay(6000) pelota.punt=0 pelota.punt1=0 #-------------------------------------------------------------------------------------------------------------------------- sonido=cargar_sonido('../golpe.ogg') pygame.display.flip() #-------------------------------------------------------------------------------------------------------------------------- Comunidad http://www.taringa.net/comunidades/novatos-pygame/ Bueno a qui esta el archivo con todos los elementos del juego las imágenes y el sonido, apenas termine el manual lo publicare para que se entienda de una manera mejor el código, dentro de la comunidad esta el enlace para descargar el código

Moviendo un Objeto Con el Mouse en Pygame Bueno hola a todos de nuevo, en esta ocasión les traigo la explicación de cómo mover un objeto con el mouse y detectar una colisión cuando presionamos un botón del mouse. Código class pelota( pygame.sprite.Sprite): #-------------------------------------------------------------------------------- def __init__(self): pygame.sprite.Sprite.__init__(self) self.image=cargar_img('Zero.png') self.rect = self.image.get_rect() self.rect.center = (200,200) self.velosidad=[10,11] #-------------------------------------------------------------------------------- def update(self): self.rect.move_ip((self.velosidad[0], self.velosidad[1])) self.control() #-------------------------------------------------------------------------------- def pintar(self,pantalla,pintar_rect): pantalla.blit(self.image,self.rect) if pintar_rect: pygame.draw.rect(pantalla,(255,0,0),self.rect) self.rect.center=(200,200) #-------------------------------------------------------------------------------- def control(self): if self.rect.left <=0 or self.rect.right>=640: self.velosidad[0]=-self.velosidad[0] if self.rect.top <=0 or self.rect.bottom>=480 : self.velosidad[1]=-self.velosidad[1] #-------------------------------------------------------------------------------- Bueno en la clase pelota agregue la función pintar, que hace dos cosas muy importantes primero dibuja la imagen de nuestro personaje y segundo tiene una condicional que si es de valor positivo dibuja un cuadro de color rojo además de mover a nuestro personaje a una posición diferente Código class Cursor(): #-------------------------------------------------------------------------------- def __init__(self,x,y): self.imagen=cargar_img('mira.png') self.rect=pygame.Rect((x-15,y-15),(5,5)) #-------------------------------------------------------------------------------- def pintar(self,pantalla,x,y): self.rect.topleft=(x+5,y+5) pantalla.blit(self.imagen,(x-15,y-15)) pygame.draw.rect(pantalla,(255,0,0),self.rect) #-------------------------------------------------------------------------------- Bueno la clase cursor es la que mueve nuestra mira por la ventana, primero cargamos la imagen, luego y a qui viene el cambio definimos el rectángulo pero con dos variables x,y que nosotros enviaremos al momento de llamar esta función así la imagen de la mira cambiara de posición, los números que le restamos a estas variables, nos permite centrar nuestra imagen con el cursor y el rectángulo de la función rect, los valores (5,5) determinar el tamaño de este rectángulo si los aumentamos podemos ver como este cambia de tamaño. La Función pintar lo que realiza es la ubicación de nuestro cursor, además de dibujar la imagen de la mira y por ultimo dibujar un rectángulo de color rojo. x,y=pygame.mouse.get_pos() Luego definimos la funcion main en la cual la línea que toma las coordenadas de nuestro mouse es x,y=pygame.mouse.get_pos() que nos devuelve la posición x,y de nuestro puntero cursor1=Cursor(x,y) Luego enviamos estas coordenadas a la clase cursor que las toma par ala ubicación de nuestra imagen. if event.type ==pygame.MOUSEBUTTONDOWN: if cursor1.rect.colliderect(pelota1.rect): pintar_rect=True Por último averiguamos la colisión entre nuestros objetos, primero le decimos que detecte si presionamos cualquiera de los botones de nuestro mouse, luego que defina su existe una colisión entre los dos objetos Sprite y que cambie el valor de la variable a verdadero Realizado por Mikey Comunidad http://www.taringa.net/comunidades/novatos-pygame/ Bueno a qui esta el archivo con todos los elementos del juego las imágenes y el sonido, apenas termine el manual lo publicare para que se entienda de una manera mejor el código, dentro de la comunidad esta el enlace para descargar el código

Tercer Juego en Pygame Hola a todos en esta ocasión les traigo el código de mi tercer juego en pygame, bueno no se si considerarlo un juego pero utiliza todas las funciones necesarias para un juego, como mover un personaje y darle animación y que se mueva el fondo, bueno se trata de un pequeño carro que se mueve por la pantalla, es muy sencillo espero les sea de utilidad y pronto estera escribiendo el manual respectivo para dar la explicación de su funcionamiento, en la comunidad colocare el enlace para descargar las imágenes y el código gracias y espero les guste import pygame #-------------------------------------------------------------------------------- class Fondo(pygame.sprite.Sprite): def __init__(self): self.imagen=pygame.image.load("fondo.jpg").convert_alpha() self.rect=self.imagen.get_rect() def update(self,pantalla,vx,vy): self.rect.move_ip(-vx,-vy) pantalla.blit(self.imagen,self.rect) #-------------------------------------------------------------------------------- class Player(pygame.sprite.Sprite): #-------------------------------------------------------------------------------- def __init__(self): self.imagen1=pygame.image.load("car3.png").convert_alpha() self.imagen2=pygame.image.load("car4.png").convert_alpha() self.imagen3=pygame.image.load("car1.png").convert_alpha() self.imagen4=pygame.image.load("car2.png").convert_alpha() self.imagenes=[[self.imagen3,self.imagen1],[self.imagen4,self.imagen2]] self.imagen_actual=0 self.imagen=self.imagenes[self.imagen_actual][0] self.rect=self.imagen.get_rect() self.rect.top,self.rect.left=(200,200) self.estamoviendo=False self.orientacion=0 #-------------------------------------------------------------------------------- def mover(self,vx,vy): self.rect.move_ip(vx,vy) #-------------------------------------------------------------------------------- def update(self,superficie,vx,vy,t,x,y): if (vx,vy)==(0,0): self.estamoviendo=False else:self.estamoviendo=True # si se mueve que este en TRUE if vx>0: self.orientacion=0 elif vx<0: self.orientacion=1 if t==1 and self.estamoviendo: if x==1: self.imagen_actual=0 else: if y==1: self.imagen_actual=1 self.orientacion=1 else: if y==2: self.imagen_actual=1 self.orientacion=0 vx=0 vy=0 self.mover(vx, vy) self.imagen=self.imagenes[self.orientacion][self.imagen_actual] superficie.blit(self.imagen,self.rect) #-------------------------------------------------------------------------------- def main(): import pygame pygame.init() pantalla=pygame.display.set_mode((640,480)) salir=False reloj1= pygame.time.Clock() player1=Player() fondo1=Fondo() vx,vy=0,0 velocidad=7 x=0 y=0 leftsigueapretada,rightsigueapretada,upsigueapretada,downsigueapretada=False,False,False,False t=0 while salir!=True: for event in pygame.event.get(): if event.type == pygame.QUIT: salir=True if event.type == pygame.KEYDOWN: if event.key == pygame.K_LEFT: leftsigueapretada=True vx=-velocidad x=1 if event.key == pygame.K_RIGHT: rightsigueapretada=True vx=velocidad x=1 if event.key== pygame.K_UP: upsigueapretada=True vy=-velocidad y=1 if event.key == pygame.K_DOWN: downsigueapretada=True vy=velocidad y=2 if event.type == pygame.KEYUP: if event.key == pygame.K_LEFT: leftsigueapretada=False if rightsigueapretada:vx=velocidad else: vx=0 x=0 if event.key == pygame.K_RIGHT: rightsigueapretada=False if leftsigueapretada:vx=-velocidad else: vx=0 x=0 if event.key== pygame.K_UP: upsigueapretada=False if downsigueapretada:vy=velocidad else: vy=-0 y=0 if event.key == pygame.K_DOWN: downsigueapretada=False if upsigueapretada:vy=-velocidad else: vy=0 y=0 reloj1.tick(25) t+=1 if t>1: t=0 pantalla.fill((0,0,0)) fondo1.update(pantalla,vx,vy) player1.update(pantalla,vx,vy,t,x,y) pygame.display.update() pygame.quit() main() Comunidad http://www.taringa.net/comunidades/novatos-pygame/ Bueno a qui esta el archivo con todos los elementos del juego las imágenes y el sonido, apenas termine el manual lo publicare para que se entienda de una manera mejor el código, dentro de la comunidad esta el enlace para descargar el código

Colisión de Objetos en Pygame Hola a todos en esta ocasión les traigo la explicación de como detectar colisiones entre objetos, en pygame para facilitar las cosas he tomado el código de mi anterior ejemplo y lo he modificado para que dos pelotas choquen entre sí. Codigo class pelota( pygame.sprite.Sprite, pygame.font.Font): def __init__(self): pygame.sprite.Sprite.__init__(self) def velocidad(self,x,x1,y1,nombre1) self.image=cargar_img(str(nombre1)) self.rect = self.image.get_rect() self.rect.center = (x1,y1) self.velosidad=[x,0] def update(self): self.rect.move_ip((self.velocidad[0], self.velocidad[1])) self.control() def control(self): if self.rect.left <=57 or self.rect.right>=542: self.velocidad[0]=-self.velocidad[0] if self.rect.top <=28 or self.rect.bottom>=435: self.velocidad[1]=-self.velocidad[1] Bueno lo primero que hice fue modificar la clase pelota y agregue la función velosidad, donde le pido los parámetros de velosidad en x, la posición del objeto x,y y por ultimo le nombre de la imagen. Codigo def colision(sprite,grupo): for COLISION in pygame.sprite.spritecollide(sprite,grupo,0): pelota0.velocidad[0]=-pelota0.velocidad[0] pelota1.velocidad[0]=-pelota1.velocidad[0] Luego creo la función colisión, donde creo un ciclo que si COLISION en la función pygame.sprite.spritecollide(sprite,grupo,0), es verdadero, la velocidad de pelota0 y pelota1 tome su mismo valor de forma negativa. La Función pygame.sprite.spritecollide(sprite,grupo,0), lo que hace es mirar si los dos objetos chocha pero sus rectángulos, por eso la importancia de la función self.rect = self.image.get_rect(), y nos dé vuelve un valor Booleano True o False. Existe varias formas de usar esta función podemos decir pelota2.rect.colliderect(pelota3.rect), en este ejemplo decimos que el rectángulo del Sprite llamado pelota2 choca con el rectángulo de el Sprite pelota3 y nos devuelve un valor True o False, si es True nos indica que el choque se dio. Codigo pelotas=pygame.sprite.RenderClear() screen=pygame.display.set_mode((ancho,alto)) pelota0=pelota() pelota1=pelota() pelota0.velocidad(5,70,200,"pelota.png") pelota1.velocidad(5,500,200,"pelota-1.png") pelotas.add(pelota1) Luego le decimos a la variable pelotas que tome el valor de la función pygame.sprite.RenderClear(), esta función nos permite agrupar los sprite de manera tal que los podemos borrar los sprite, por ultimo enviamos la información necesaria por cada una de nuestra pelotas, y al final agregamos unos de nuestros sprite al grupo pelotas usando pelotas.add(pelota1). colision(pelota0,pelotas) Por último llamamos la función colisión y le enviamos el sprite y el grupo de objetos que deseamos saber si colisionan, como se puede entender gracias a esta función podemos agregar mas de un objeto Realizado por Mikey Comunidad http://www.taringa.net/comunidades/novatos-pygame/ Bueno a qui esta el archivo con todos los elementos del juego las imágenes y el sonido, apenas termine el manual lo publicare para que se entienda de una manera mejor el código, dentro de la comunidad esta el enlace para descargar el código
El Parcero Del Popular Numero 8Especiales Pirry El Parcero del Popular Numero 8
Introduccion a Python – OpenCV Publicado en Python por Arturo Elias Antón en 8 febrero 2009 Hola a todos hoy los traigo un codigo realizado por Arturo Elias que tiene un blog de programación excelente al final del post colocare el enlace. Vamos a reconocer el rostro de nuestros usuario y dentro de el los ojos y la boca y la nariz. Para esto en esta oportunidad vamos a utilizar una biblioteca llamada opencv. Acá les dejo el código #!/usr/bin/python import pygame import Image from pygame.locals import * import opencv from opencv import adaptors from opencv import highgui,cv def sincroImg(image,scale): image_size = cv.cvGetSize(image) grayscale = cv.cvCreateImage(image_size, 8, 1) image_small = cv.cvCreateImage(cv.cvSize(cv.cvRound(image.width/scale),cv.cvRound(image.height/scale)), 8, 1) cv.cvCvtColor(image, grayscale, cv.CV_BGR2GRAY) cv.cvResize(grayscale,image_small,cv.CV_INTER_LINEAR) cv.cvEqualizeHist(grayscale, grayscale) return grayscale def dectect(img,cascade,storage,x,y,scale): cv.cvClearMemStorage(storage) return cv.cvHaarDetectObjects( img, cascade, storage, scale, 2, 0,#cv.CV_HAAR_DO_CANNY_PRUNING, cv.cvSize(x, y)) camara = highgui.cvCreateCameraCapture(0) fps = 30 pygame.init() ventana = pygame.display.set_mode((320,240)) pygame.display.set_caption("OpenCV + Webcam Test") screen = pygame.display.get_surface() print "OpenCV version: %s (%d, %d, %d)" % (cv.CV_VERSION, cv.CV_MAJOR_VERSION, cv.CV_MINOR_VERSION, cv.CV_SUBMINOR_VERSION) cascade_name ='xml/haarcascade_frontalface_alt.xml' cascade_name_nariz ='xml/nariz.xml' cascade_name_ojos ='xml/ojos.xml' cascade_name_boca ='xml/boca.xml' storage = cv.cvCreateMemStorage(0) cascade = cv.cvLoadHaarClassifierCascade(cascade_name, cv.cvSize(14,14)) cascade_nariz = cv.cvLoadHaarClassifierCascade(cascade_name_nariz, cv.cvSize(14,14)) cascade_ojos = cv.cvLoadHaarClassifierCascade(cascade_name_ojos, cv.cvSize(22,22)) cascade_boca = cv.cvLoadHaarClassifierCascade(cascade_name_boca, cv.cvSize(25,15)) scale = 2 inx=0 while True: img1 = highgui.cvQueryFrame(camara) # face detection sincroImg(img1,scale) faces = dectect(img1,cascade,storage,50,50,scale) b_ojos = False b_boca = False b_nariz= False if faces.total != 0: face = faces[0] cv.cvRectangle(img1, cv.cvPoint( int(face.x), int(face.y)), cv.cvPoint(int(face.x + face.width), int(face.y + face.height)), cv.CV_RGB(255,0,0), 3, 8, 0) face_x1 = int(face.x) face_y1 = int(face.y) face_x2 = int(face.x + face.width) face_y2 = int(face.y + face.height) ojos = dectect(img1,cascade_ojos,storage,20,20,scale) for o in ojos: if o.x > face_x1 and o.y > face_y1 and (o.x + o.width) < face_x2 and (o.y + o.height) < face_y2: cv.cvRectangle(img1, cv.cvPoint( int(o.x), int(o.y)), cv.cvPoint(int(o.x + o.width), int(o.y + o.height)), cv.CV_RGB(0,0,255), 3, 8, 0) ojos_x1= o.x ojos_y1= o.y ojos_x2= o.x + o.width ojos_y2= o.y + o.height b_ojos=True; bocas =[] if b_ojos:bocas = dectect(img1,cascade_boca,storage,60,30,scale) for b in bocas: if b.x > ojos_x1 and b.y > ojos_y2 and (b.x + b.width) < ojos_x2 and (b.y + b.height) < face_y2: cv.cvRectangle(img1, cv.cvPoint( int(b.x), int(b.y)), cv.cvPoint(int(b.x + b.width), int(b.y + b.height)), cv.CV_RGB(0,255,0), 3, 8, 0) boca_x1= b.x boca_y1= b.y boca_x2= b.x + b.width boca_y2= b.y + b.height b_boca= True narices =[] if b_boca:narices = dectect(img1,cascade_nariz,storage,40,40,scale) for n in narices: if n.x > ojos_x1 and n.y < boca_y1 and n.y >= ojos_y2 and n.x + n.width < ojos_x2 : cv.cvRectangle(img1, cv.cvPoint( int(n.x), int(n.y)), cv.cvPoint(int(n.x + n.width), int(n.y + n.height)), cv.CV_RGB(0,0,0), 3, 8, 0) b_nariz = True img = adaptors.Ipl2PIL(img1).resize((320,240)) if b_nariz: img.save('img/img'+str(inx)+'.jpg') inx+=1 pgimg = pygame.image.frombuffer(img.tostring(), img.size, img.mode) screen.blit(pgimg, (0,0)) pygame.display.flip() pygame.time.delay(int(1000 * 1.0/fps)) En la comunidad hay una archivo tar.gz con todos los xml necesarios y algunos otros para que prueben Comunidad Python R2
Vison artificial con Python, pygame y OpenCV 4 bueno hola a todos a qui les dejo un ejemplo de vision artifical usando python, pygame y OpenCV 4, es muy interesante espero les guste y miren la potencia que tiene estos tres elementos http://www.python.org/ Comunidad

Ventana en Pygame Bueno para entrar a explicar un poco más de pygame hoy les voy a explicar en profundidad la ventana de pygame #importando librerías pygame y sys import pygame, sys from pygame.locals import* #inicializando pygame pygame.init() #creando la surface visor=pygame.display.set_mode((400,400),0,32) Esta es la línea en la cual se crea la ventana en pygame, las dos cosas importantes son la variable que en este caso es Visor, luego sigue la línea de código que es pygame.display.set_mode((x,y),0,32), en donde x,y corresponde al tamaño de la ventana en nuestro caso 400 x 400. Ventana de Pygame y Sus coordenadas Como podemos mirar las coordenadas del la ventana en pygame inicia en la parte superior izquierda donde se encuentra la coordenada (0,0). Si tomamos la línea de código de nuestro ejemplo, la resolución de nuestra ventana es de 400 x 400, entonces nuestra ventana de pygam seria. Ventana de Pygame y Sus coordenadas Dibujando una Línea Ya que conocemos las coordenadas de la venta de pygame vamos a dibujar una línea para poder aprender entender mejor como se maneja las coordenadas en la venta de pygame. El código para esto es: #Dibujar una línea pygame.draw.line(visor,color,(x-1,y-1),(x-2,y-2),4) donde (x-1,y-2) es el punto inicial de nuestra línea y (x-2,y-2) es el punto final de la línea, el número 4 es el grosor de la línea, como hemos visto anteriormente visor es la variable de la ventana y el color de la línea. En la imagen miramos la creación de una línea, en una ventana de 400 x 400, la línea de código seria: pygame.draw.line(visor,lista[3],(0,0),(200,200),4) Aquí un ejemplo más complejo donde dibujamos una x con líneas el código para dibujar estas líneas es: pygame.draw.line(visor,lista[3],(0,0),(400,400),4) pygame.draw.line(visor,lista[3],(400,0),(0,400),4) Bueno aquí está el código fuente donde se muestra como dibujar dos líneas en forma de X Código [size=12][color=red]#importando librerías pygame y sys[/color] import pygame, sys from pygame.locals import* [color=red]#inicializando pygame[/color] pygame.init() [color=red]#creando la surface[/color] visor=pygame.display.set_mode((400,400),0,32) [color=red]#colocando el titulo a la ventana[/color] pygame.display.set_caption("pygame";) [color=red]#definiendo colores[/color] NEGRO=(0,0,0) BLANCO=(255,255,255) ROJO=(255,0,0) VERDE=(0,255,0) AZUL=(0,0,255) [color=red]#definiendo lista de clores[/color] lista=[NEGRO,BLANCO,ROJO,VERDE,AZUL] [color=red]#elegir el tipo de letra[/color] tipodeletra=pygame.font.SysFont('arial',48) [color=red]#generando el texto y situarlo[/color] texto=tipodeletra.render("Linea", True, BLANCO) [color=red]#dibujar fondo[/color] visor.fill(lista[0]) [color=red]#Dibujar una línea[/color] pygame.draw.line(visor,lista[3],(0,0),(400,400),4) pygame.draw.line(visor,lista[3],(400,0),(0,400),4) [color=red]#dibujar el texto en la surface y dar las coordenadas donde se ubica el texto (x,y)[/color] visor.blit(texto,(150,0)) [color=red]#volcar la surface en la ventana de pygame[/color] pygame.display.update() [color=red]#el bucle de eventos[/color] while True: for event in pygame.event.get(): if event.type==QUIT: pygame.quit() sys.exit()[/size] Comunidad Realizado por Mikey