]> git.sur5r.net Git - fstl/blob - src/mesh.cpp
New upstream version 0.9.3
[fstl] / src / mesh.cpp
1 #include <QFile>
2 #include <QDataStream>
3 #include <QVector3D>
4
5 #include <cmath>
6
7 #include "mesh.h"
8
9 ////////////////////////////////////////////////////////////////////////////////
10
11 Mesh::Mesh(std::vector<GLfloat> v, std::vector<GLuint> i)
12     : vertices(v), indices(i)
13 {
14     // Nothing to do here
15 }
16
17 float Mesh::min(size_t start) const
18 {
19     if (start >= vertices.size())
20     {
21         return -1;
22     }
23     float v = vertices[start];
24     for (size_t i=start; i < vertices.size(); i += 3)
25     {
26         v = fmin(v, vertices[i]);
27     }
28     return v;
29 }
30
31 float Mesh::max(size_t start) const
32 {
33     if (start >= vertices.size())
34     {
35         return 1;
36     }
37     float v = vertices[start];
38     for (size_t i=start; i < vertices.size(); i += 3)
39     {
40         v = fmax(v, vertices[i]);
41     }
42     return v;
43 }
44
45 bool Mesh::empty() const
46 {
47     return vertices.size() == 0;
48 }