Página principal | Jerarquía de la clase | Lista alfabética | Lista de componentes | Lista de archivos | Miembros de las clases | Archivos de los miembros | Páginas relacionadas

material.h

Ir a la documentación de este archivo.
00001 //===========================================================================
00002 //= material.h                                   Julio - septiembre de 1998 =
00003 //=-------------------------------------------------------------------------=
00004 //= Definiciones de la clase MATERIAL                                       =
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 #ifndef __MATERIAL__
00023 #define __MATERIAL__
00024 
00025 #include "jed_defs.h"  // Incluir antes que nada, en ese modulo se definen 
00026                        // aspectos importantes para la portabilidad del sistema
00027 
00028 #include "color.h"
00029 #include "toolkits/util/parsero.h"
00030 //#include "lista.h"
00031 
00032 class MATERIAL {
00033   private:
00034     int _codigo;     // Indice serial usado para identificar el material en 
00035                      // la tabla de coeficientes de friccion.
00036     char _nombre[MAX_CAD];
00037 
00038     COLOR _ambiente;
00039     COLOR _difusa;
00040     COLOR _especular;
00041     COLOR _emision;
00042     double _transparencia; // En el rango [0.0 - 1.0]
00043     double _phong_exp;  // En el rango [0-128]
00044     double _phong_coef; // Saturacion especular, rango [0.0 - 1.0]
00045     double _coeficiente_de_reflexion;
00046     BOOLEAN _doble_cara;
00047   public:
00048     MATERIAL();
00049 
00050     int codigo(void);
00051     char *nombre(void);
00052     BOOLEAN doble_cara(void);
00053     COLOR ambiente(void);
00054     COLOR difusa(void);
00055     COLOR emision(void);
00056     COLOR especular(void);
00057     double phong_exp(void);
00058     double phong_coef(void);
00059     double reflexion(void);
00060     void set_nombre(char *n);
00061     void set_doble_cara(BOOLEAN c);
00062     void set_ambiente(COLOR a);
00063     void set_difusa(COLOR d);
00064     void set_emision(COLOR e);
00065     void set_especular(COLOR e);
00066     void set_phong_exp(double e);
00067     void set_phong_coef(double c);
00068     void set_transparencia(double t);
00069     void set_reflexion(double r);
00070     BOOLEAN leer(TOKENIZADOR *Sabiondo);
00071 #ifdef GL_ENABLED
00072     void activar_gl(void);
00073 #endif
00074     void activar_povray(FILE *fd);
00075     void activar_vrml(FILE *fd);
00076 };
00077 
00078 #endif // __MATERIAL__
00079 
00080 extern LISTA <MATERIAL *> LOS_materiales;
00081 extern BOOLEAN leer_materiales(char *archivo);
00082 
00083 //===========================================================================
00084 //= EOF                                                                     =
00085 //===========================================================================
00086 

Este archivo HTML ha sido generado automáticamente a partir del código fuente AQUYNZA. NO LO EDITE. Para mayor información contacte al autor.