00001 //=========================================================================== 00002 //= espacio.cc Julio de 1998 = 00003 //=-------------------------------------------------------------------------= 00004 //= Definiciones de la clase ESPACIO = 00005 //=-------------------------------------------------------------------------= 00006 //= ADVERTENCIA: ESTE SOFTWARE NO ESTA CONCEBIDO NI DISENNADO PARA EL USO = 00007 //= EN EQUIPO DE CONTROL EN LINEA EN ENTORNOS PELIGROSOS QUE REQUIERAN UN = 00008 //= DESEMPENNO LIBRE DE FALLAS, COMO LA OPERACION DE PLANTAS NUCLEARES, = 00009 //= SISTEMAS DE NAVEGACION O COMUNICACION EN AVIONES, TRAFICO AEREO, = 00010 //= EQUIPO MEDICO DEL CUAL DEPENDAN VIDAS HUMANAS O SISTEMAS DE ARMAMENTO, = 00011 //= EN LOS CUALES UNA FALLA EN EL SOFTWARE PUEDA IMPLICAR DIRECTAMENTE LA = 00012 //= MUERTE, DANNOS PERSONALES O DANNOS FISICOS Y/O AMBIENTALES GRAVES = 00013 //= ("ACTIVIDADES DE ALGO RIESGO"). = 00014 //=-------------------------------------------------------------------------= 00015 //= Autor original: Oscar J. Chavarro G. A.K.A. JEDILINK. Copyright (c), = 00016 //= 1997 - 2003, oscarchavarro@hotmail.com = 00017 //= AQUYNZA es software libre, y se rige bajo los terminos de la licencia = 00018 //= LGPL de GNU (http://www.gnu.org). Para mayor informacion respecto a la = 00019 //= licencia de uso, consulte el archivo ./doc/LICENCIA en la distribucion. = 00020 //=========================================================================== 00021 00022 #include <stdio.h> 00023 00024 #include "core/cosas/espacio.h" 00025 #include "lista.cc" 00026 00027 ESPACIO::ESPACIO() 00028 { 00029 Medio = new MEDIO; 00030 } 00031 00032 ESPACIO::~ESPACIO() 00033 { 00034 if ( Medio ) delete Medio; 00035 Medio = FALSE; 00036 } 00037 00038 void 00039 ESPACIO::ingresar_cosa(COSA *c) 00040 { 00041 lista_cosas.anx(c); 00042 } 00043 00044 void 00045 ESPACIO::simular(double /*delta_t*/) 00046 { 00047 ; 00048 } 00049 00050 void 00051 ESPACIO::anexar_objetos_rayables(ARREGLO <OBJETO_RAYABLE *> & /*arr_objetos*/) 00052 { 00053 ; 00054 } 00055 00056 double 00057 ESPACIO::interseccion(RAYO *Rayo, VECTOR *Punto, VECTOR *Normal) 00058 { 00059 printf("<ESPACIO>... interseccion nula\n"); fflush(stdout); 00060 return 0; 00061 } 00062 00063 void 00064 ESPACIO::actualizar_espacio(double dt) 00065 { 00066 if ( Medio ) { 00067 Medio->actualizar(dt); 00068 } 00069 } 00070 00071 #ifdef GL_ENABLED 00072 00073 BOOLEAN 00074 ESPACIO::segundo_pase_gl_requerido(CALIDAD_VISUAL *Calidad_caustics, 00075 MATERIAL *Material_caustics) 00076 { 00077 if ( !Medio ) return FALSE; 00078 return Medio->pre_pintar_gl(Calidad_caustics, Material_caustics); 00079 } 00080 00081 #endif 00082 00083 //=========================================================================== 00084 //= EOF = 00085 //=========================================================================== 00086