10/12/2010, 10:57
|
| | Fecha de Ingreso: diciembre-2010
Mensajes: 162
Antigüedad: 14 años Puntos: 1 | |
Respuesta: necesita ayuda con python y opengl bueno mira quise tomar una parte de todo el codigo e ir por partes y me decis si voy bien:
class cargarobj:
def __init__(self,filename):
self.vertices=[] #crea una lista vacia llamada vertice
self.normales=[] #crea una lista vacia llamada normales
self.texcoords=[]
file=open(filename,"r") #define funcion de apertura de archivo para lectura
lines=file.readlines()
for line in lines:
valores=string.split(line)
if len(valores)<1:
continue
if valores[0]=="v":
x=float(valores[1])
y=float(valores[2])
z=float(valores[3])
self.vertices.append([x,y,z]) #anexa x, y, y z a la lista vertices
#imprime en pantalla valores de vertices
print "los valores de vertices son:",([x,y,z])
if valores[0]=="vn":
x=float(valores[1])
y=float(valores[2])
z=float(valores[3])
self.normales.append([x,y,z]) #anexa x,y, y z a la lista normales
#imprime en pantalla valores de normales
print "los valores de normales son:",([x,y,z])
if valores[0]=="vt":
x=float(valores[1])
y=float(valores[2])
z=float(valores[3])
self.texcoords.append([x,y,z])
print "los valores de coordenadas de textura son:", ([x,y,z])
d=cargarobj("CUBO.obj")
cambie como te dije string.atof por float en todos los if. decime si voy bien al principio la clase crea listas vacias llamadas vertices normales texcoords. Una duda es si ([x,y,z]) lo toma como un solo elemento anexado con append a vertices,o sea no tres elemento x y y z me entendes?. Le agregue un print para saber ke iba bien el codigo. luego d=cargarobj es una instancia de la clase no? mejor voy por partes porke soy autodidacta ni sikiera he estudiado programacion ni nada por el estilo. y recien voy agarrandole la mano un poco a python. |