#ifndef _CCARAS #define _CCARAS #include "vtkAlgebra.h" #include //AÑADIDO #include //AÑADIDO #include "vtkObject.h" #include "vtkBESSMat.h" #include "Macros.h" #include "vtkesquiT2MeshWin32Header.h" //Valores máximos #define NLUCES 8 #define NPUNTOSFUERZA 16 class vtkCara; //! Clase que implementa las caras de la T2-mesh. /*! Esta clase implementa una cara de la malla T2. Sus componentes son punteros a la lista de vertices de la malla T2, y ademas se ordenan en sentido antihorario. El ultimo vertice es igual que el primero, para facilitar posteriormente el dibujo de la cara y el calculo de la malla triangular dual. */ class VTK_ESQUI_TMESH_EXPORT vtkCara: public vtkObject { public: vtkTypeRevisionMacro(vtkCara,vtkObject); static vtkCara *New(); const char *GetClassName() {return "vtkCara";} int numvertices; int *vertices; //! Constructor por defecto. vtkCara(); ~vtkCara(); //! Agnade un vertice a la cara. void Add_vertice(int p); //! Retorna el vértice i de la cara. int operator [](int i); //! Retorna la normal de la cara. Punto normal(Punto *puntost2); //! Asigna caras. vtkCara operator =(const vtkCara &); //! ¿Contiene la cara el puntot2[p] en sus vertices? BOOL contiene(int p); //! ¿Pertenece el punto p a la cara? BOOL dentroproy(Punto p, Punto *puntost2); //! Obtiene el indice del vertice con coordenadas p int indice(Punto p, Punto *puntost2); //! Halla el centroide de los puntos que forman la cara Punto centro(Punto * puntost2); private: vtkCara(const vtkCara &){}; }; #endif