Ignore:
Timestamp:
02/19/07 09:16:59 (18 years ago)
Author:
gumbau
Message:
 
Location:
GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include
Files:
1 added
1 deleted
10 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/camera.h

    r2090 r2127  
    1818} Camera; 
    1919 
    20 extern Camera *loadCameras(GLdouble radius, char* filename, GLuint *numCameras); 
    21 extern void saveCameras(char* filename, Camera *cameras, GLuint numCameras); 
     20extern Camera *loadCameras(GLdouble radius, char* filename, int *numCameras); 
     21extern void saveCameras(char* filename, Camera *cameras, int numCameras); 
    2222extern void copyToCameras(Camera *cameras, int numVertices, GLdouble vertices[][3]); 
    23 extern void setCameraWeights(Camera *cameras, GLuint numCameras, GLdouble *weights); 
    24 extern Camera *setCameras(GLdouble radius, GLuint type, GLuint *numCameras); 
    25 extern void printCameras(Camera *cameras, GLuint numCameras); 
     23extern void setCameraWeights(Camera *cameras, int numCameras, GLdouble *weights); 
     24extern Camera *setCameras(GLdouble radius, int type, int *numCameras); 
     25extern void printCameras(Camera *cameras, int numCameras); 
    2626 
    2727extern void drawSphere(Camera *cameras, GLdouble radius, int slices, int stacks); 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/change.h

    r2090 r2127  
    6868        extern void modifyTriangle(Triangle *t, int c, int p); 
    6969        extern int isATriangleToModify(Triangle *t, int c); 
    70         extern Triangle *getTrianglesToModify(Mesh *mesh, Change *c, GLuint *numMod); 
     70        extern Triangle *getTrianglesToModify(Mesh *mesh, Change *c, int *numMod); 
    7171        extern int isATriangleToDelete(Triangle *t, int c, int p); 
    72         extern Triangle *getTrianglesToDelete(Mesh *mesh, Change *c, GLuint *numDel); 
     72        extern Triangle *getTrianglesToDelete(Mesh *mesh, Change *c, int *numDel); 
    7373 
    7474        extern void modifyTriangles(Mesh *mesh, Change *c); 
     
    8585 
    8686        extern void modifyEdges(Mesh *mesh, Change *c); 
    87   extern void deleteEdges(Mesh *mesh, Change *c); 
     87  extern int find(int *edges, int num, int v_); 
     88        extern void updateEdgeAdj(Mesh *mesh, Change *c) ; 
    8889 
    8990        //      Save simplification sequence in Geometry Game Tools format. 
     
    9293        //extern std::map<int, INTVECTOR> inversemap; 
    9394        extern void swap(int *i, int *j); 
    94         extern int hasEdge(Triangle *t, int e); 
    95         extern void getEdges(Triangle *t, Change *c, int *d, int *a); 
     95 
    9696} 
    9797#endif 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/color.h

    r2090 r2127  
    1414} Color; 
    1515 
    16 extern Color *initColors(GLuint numColors); 
    17 extern void fillAllColors(Color *colors, GLuint numColors, GLuint begin, GLuint end, GLubyte color); 
    18 extern void setColors(Color *colors, GLuint numPasses, GLuint begin, GLuint end); 
    19 extern void setColors2(Color *colors, GLuint numColors, GLuint begin, GLuint end); 
    20 extern void setColors3(Color *colors, GLuint numColors, GLubyte color); 
    21 extern void setColors4(Color *colors, GLuint numColors); 
    22 extern void viewColors(Color *colors, GLuint numColors); 
     16extern Color *initColors(int numColors); 
     17extern void fillAllColors(Color *colors, int numColors, int begin, int end, GLubyte color); 
     18extern void setColors(Color *colors, int numPasses, int begin, int end); 
     19extern void setColors2(Color *colors, int numColors, int begin, int end); 
     20extern void setColors3(Color *colors, int numColors, GLubyte color); 
     21extern void setColors4(Color *colors, int numColors); 
     22extern void viewColors(Color *colors, int numColors); 
    2323 
    2424} 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/global.h

    r2090 r2127  
    6060//#define SALIENCY 
    6161 
     62#define CHECK_LOCAL_INVERSION 
     63 
    6264// Extension added into the filename 
    6365#ifdef KL // Kullback-Leibler 
     
    7375#define EXT "VCS" 
    7476#endif 
    75  
    76 //#define USE_EDGE_ADJACENCY 
    7777 
    7878#define CHECK_OPENGL_ERROR( cmd ) \ 
     
    109109 
    110110extern Camera *cameras; 
    111 extern GLuint numCameras; 
     111extern int numCameras; 
    112112 
    113113extern Color *colors; 
    114114 
    115 extern GLuint **histogram, 
    116               *queries; 
     115extern int **histogram; 
     116extern GLuint *queries; 
    117117 
    118118extern Mesh *mesh; 
     
    122122extern GLdouble  radius; 
    123123extern GLdouble  fov; 
    124 extern GLuint    numDemandedTriangles, 
     124extern int    numDemandedTriangles, 
    125125                 cameraType; 
    126126extern GLboolean bBeQuiet, 
     
    138138extern void init(void); 
    139139 
    140 extern void renderScene(GLuint **histogram, GLuint numCameras); 
    141 extern void renderSceneWin(GLuint **histogram, GLuint numCameras, Change *c); 
     140extern void resetProjectedAreas(int **histogram, int numCameras); 
     141extern void getProjectedAreas(int **histogram, int numCameras); 
     142extern void getProjectedAreasWin(int **histogram, int numCameras, Change *c); 
    142143 
    143144extern void renderGeometry(void); 
     
    150151 
    151152extern void applyHWAcceleration(void); 
     153extern void updateHWAcceleration(Change *c); 
    152154extern void setOrthographicProjection(void); 
    153155extern void resetPerspectiveProjection(void); 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/histogram.h

    r2090 r2127  
    1111{ 
    1212 
    13 extern void getSubHistogram(GLuint subHistoGram[][4]); 
    14 extern void copySubHistogram(Color *colors, GLuint *histogram, GLuint begin, GLuint end, GLuint subHistoGram[][4]); 
    15 extern void printHistogram(GLuint histoGram[][4]); 
    16 extern void plotHistogram(GLuint histoGram[][4]); 
     13extern void getSubHistogram(int subHistoGram[][4]); 
     14extern void copySubHistogram(Color *colors, int *histogram, int begin, int end, int subHistoGram[][4]); 
     15extern void printHistogram(int histoGram[][4]); 
     16extern void plotHistogram(int histoGram[][4]); 
    1717 
    18 extern GLuint **initHistogram(GLuint numTriangles, GLuint numCameras); 
    19 extern void deleteHistogram(GLuint **histogram, GLuint numCameras); 
    20 extern void printFullHistogram(GLuint **histogram, GLuint numCameras, GLuint numTriangles); 
    21 extern void getSWHistogram(GLuint *histogram, GLubyte *pixels); 
    22 extern void getSWHistogramWin(GLuint *histogram, GLubyte *pixels, GLfloat min[3], GLfloat max[3], Change *c); 
    23 extern void getSWHistoByOcclusionQuery(Mesh *mesh, Color *colors, GLuint *histogram); 
     18extern int **initHistogram(int numTriangles, int numCameras); 
     19extern void deleteHistogram(int **histogram, int numCameras); 
     20extern void printFullHistogram(int **histogram, int numCameras, int numTriangles); 
     21extern void getSWHistogram(int *histogram, GLubyte *pixels); 
     22extern void getSWHistogramWin(int *histogram, GLubyte *pixels, GLfloat min[3], GLfloat max[3], Change *c); 
     23extern void getSWHistoByOcclusionQuery(Mesh *mesh, Color *colors, int *histogram); 
    2424 
    25 extern void resetSWHistogram(GLuint *histogram, GLuint numTriangles); 
     25extern void resetSWHistogram(int *histogram, int numTriangles); 
    2626extern void getBoundingBox(Change *c, GLfloat min[3], GLfloat max[3]); 
    2727extern void getWindow(GLfloat min[3], GLfloat max[3], int minw[2], int maxw[2]); 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/mesh.h

    r2090 r2127  
    77 
    88typedef struct _Vertex { 
    9     GLfloat x, y, z;     // Vertex coordinates 
    10     GLuint numTriangles; // Number of triangles  
    11     GLuint *triangles;   // List of triangles 
     9    float x, y, z;     // Vertex coordinates 
     10    int numTriangles; // Number of triangles  
     11    int *triangles;   // List of triangles 
     12                int numEdges; 
     13          int *edges; 
    1214    int enable; 
    1315                int     movable;        //      If vertex is part of a border. 
     
    1517 
    1618typedef struct _Edge { 
    17     GLuint u, v;         // Edge vertices 
    18     GLuint *triangles;   // Edge triangles 
    19     GLuint numTriangles; // Number of triangles 
     19    int u, v;         // Edge vertices 
    2020    int enable; 
    2121} Edge; 
    2222 
    2323typedef struct _Triangle { 
    24     GLuint              id;         // Triangle id 
    25     GLuint  group;        // Triangle group 
    26                 GLuint          submesh;                // Triangle submesh      
    27     GLuint              indices[3]; // Triangle vertices 
    28     GLuint              edges[3];   // Triangle edges 
    29     GLfloat             normal[3];  // Triangle normal 
    30     GLdouble    area;       // Triangle area 
    31     GLdouble    saliency;   // Triangle saliency 
     24    int         id;         // Triangle id 
     25    int  group;        // Triangle group 
     26                int             submesh;                // Triangle submesh      
     27    int         indices[3]; // Triangle vertices 
     28    float               normal[3];  // Triangle normal 
     29    double      area;       // Triangle area 
     30    double      saliency;   // Triangle saliency 
    3231    int                         enable; 
    3332} Triangle; 
     
    3534typedef struct _Mesh { 
    3635    Vertex *vertices;           // Mesh vertices 
    37     GLuint numVertices;         // Number of vertices 
    38     GLuint currentNumVertices;  // Current number of vertices 
     36    int numVertices;         // Number of vertices 
     37    int currentNumVertices;  // Current number of vertices 
    3938    Edge *edges;                // Mesh edges 
    40     GLuint numEdges;            // Number of edges 
     39    int numEdges;            // Number of edges 
    4140    Triangle *triangles;        // Mesh triangles 
    42     GLuint numTriangles;        // Number of triangles 
    43     GLuint currentNumTriangles; // Current number of triangles 
     41    int numTriangles;        // Number of triangles 
     42    int currentNumTriangles; // Current number of triangles 
    4443} Mesh; 
    4544 
    4645extern GLdouble computeTriangleArea(Vertex *vertices, Triangle *t); 
     46extern double computeEdgeLength(Vertex *vertices, int u, int v); 
    4747extern void computeTriangleNormal(Vertex *vertices, Triangle *t); 
     48extern double computeTriangleVolume(Vertex *vertices, Triangle *t); 
    4849 
    4950extern Vertex *addVertex(Vertex *list, int *n, float x, float y, float z, int *pos); 
    50 extern int findEdge(Edge *e, GLuint num, GLuint _u, GLuint _v); 
     51extern int findEdge(Edge *e, int num, int _u, int _v); 
    5152extern Edge *addEdge(Edge *list, int *n, int u, int v, int *pos); 
    52 extern GLboolean findVertex(GLfloat *vertices, GLuint num, GLfloat x, GLfloat y, GLfloat z, int *pos); 
     53extern GLboolean findVertex(float *vertices, int num, float x, float y, float z, int *pos); 
    5354 
    5455extern Mesh *initMesh(GLMmodel* pmodel); 
     
    5657extern void printMesh(Mesh *mesh); 
    5758extern void saveModel(char *filename, GLMmodel* pmodel, Mesh *mesh); 
    58 extern void updateModel(GLMmodel* pmodel, Mesh *mesh, GLuint numVertices, GLuint numTriangles); 
     59extern void updateModel(GLMmodel* pmodel, Mesh *mesh, int numVertices, int numTriangles); 
    5960 
    6061extern int *trianglesAdjToEdge(Mesh *mesh, int e, int *n); 
    6162extern int *verticesAdjToVertex(Mesh *mesh, int v, int *n); 
    62 extern int *edgesAdjToVertex(Mesh *mesh, int v, int *n); 
    6363extern int *edgesAdjToVertices(Mesh *mesh, int *vertices, int numVertices, int *n); 
    6464 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/metrics.h

    r2090 r2127  
    88namespace       VMI 
    99{ 
    10 extern GLdouble computeMI(Mesh *mesh, GLuint **histogram, GLuint numCameras, GLuint cam); 
    11 extern GLdouble decMI(GLdouble I, GLuint **histogram, GLuint numCameras, GLuint cam, Change *c); 
    12 extern GLdouble incMI(GLdouble I, GLuint **histogram, GLuint numCameras, GLuint cam, Change *c); 
     10extern GLdouble computeMI(Mesh *mesh, int **histogram, int numCameras, int cam); 
     11extern GLdouble decMI(GLdouble I, int **histogram, int numCameras, int cam, Change *c); 
     12extern GLdouble incMI(GLdouble I, int **histogram, int numCameras, int cam, Change *c); 
    1313 
    14 extern GLdouble computeHE(Mesh *mesh, GLuint *histogram); 
    15 extern GLdouble computeKL(Mesh *mesh, GLuint *histogram); 
    16 extern GLdouble computeCS(Mesh *mesh, GLuint *histogram); 
     14extern GLdouble computeHE(Mesh *mesh, int *histogram); 
     15extern GLdouble computeKL(Mesh *mesh, int *histogram); 
     16extern GLdouble computeCS(Mesh *mesh, int *histogram); 
    1717 
    18 extern GLdouble computeMeanProjArea(GLuint **histogram, GLuint numCameras, int t); 
    19 extern GLdouble computeJS(GLuint **histogram, GLuint numCameras, GLuint j, GLuint k); 
    20 extern GLdouble computeEntropy(GLuint **histogram, GLuint numCameras, GLuint k); 
    21 extern GLdouble computeMixedEntropy(GLdouble *mixed, GLuint numCameras); 
    22 extern GLdouble computeMeanProjAreaNoBG(GLuint **histogram, GLuint numCameras, int t); 
     18extern GLdouble computeMeanProjArea(int **histogram, int numCameras, int t); 
     19extern GLdouble computeJS(int **histogram, int numCameras, int j, int k); 
     20extern GLdouble computeEntropy(int **histogram, int numCameras, int k); 
     21extern GLdouble computeMixedEntropy(GLdouble *mixed, int numCameras); 
     22extern GLdouble computeMeanProjAreaNoBG(int **histogram, int numCameras, int t); 
    2323 
    24 extern void getProjectedAreas(GLuint **histogram, GLuint numCameras); 
    25 extern void getProjectedAreasWin(GLuint **histogram, GLuint numCameras, Change *c); 
    26 extern void resetProjectedAreas(GLuint **histogram, GLuint numCameras); 
    27  
    28 extern GLdouble *initIs(GLuint numCameras); 
    29 extern void computeCameraIs(GLuint **histogram, GLuint numCameras, GLdouble *mis); 
    30 extern void printIs(GLdouble *mis, GLuint numCameras); 
     24extern GLdouble *initIs(int numCameras); 
     25extern void computeCameraIs(int **histogram, int numCameras, GLdouble *mis); 
     26extern void printIs(GLdouble *mis, int numCameras); 
    3127} 
    3228#endif 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/saliency.h

    r2090 r2127  
    1313extern double percentile; 
    1414 
    15 extern void computeSaliency(Mesh *mesh, GLuint **histogram, GLuint numCameras); 
    16 extern void updateTriangleSaliency(Mesh *mesh, GLuint **histogram, GLuint numCameras, int v); 
     15extern void computeSaliency(Mesh *mesh, int **histogram, int numCameras); 
     16extern void updateTriangleSaliency(Mesh *mesh, int **histogram, int numCameras, int v); 
    1717 
    18 extern double computeTriangleSaliency(Mesh *mesh, GLuint **histogram, GLuint numCameras, GLuint k); 
     18extern double computeTriangleSaliency(Mesh *mesh, int **histogram, int numCameras, int k); 
    1919 
    2020extern double computeEdgeSaliency(Mesh *mesh, Change *c, double p); 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/simplify.h

    r2090 r2127  
    1919        extern bheap_t *updateHeap(bheap_t *h, Mesh *mesh, Change *c); 
    2020 
    21         extern void simplifyModel(Mesh *mesh, GLuint numDemandedTri); 
     21        extern void simplifyModel(Mesh *mesh, int numDemandedTri); 
    2222 
    2323 
    2424        extern void bh_mydump(Mesh *mesh, bheap_t *h); 
    25         extern GLdouble computeEdgeLength(Vertex *vertices, int u, int v); 
    2625 
    2726        extern void chooseBestEndPoints(Mesh *mesh, int e); 
  • GTP/trunk/Lib/Geom/shared/GTGeometry/src/libs/vmi/include/vmi_simplifier.h

    r983 r2127  
    1313#include "saliency.h" 
    1414#include "simplify.h" 
    15 #include "interleave.h" 
     15#include "buffers.h" 
    1616 
Note: See TracChangeset for help on using the changeset viewer.