computeEdges method
void
computeEdges()
Computes uniqueEdges
Implementation
void computeEdges() {
final List<List<int>> faces = this.faces;
final List<Vec3> vertices = this.vertices;
final List<Vec3> edges = uniqueEdges;
edges.clear();
Vec3 edge = Vec3();
for (int i = 0; i != faces.length; i++) {
final List<int> face = faces[i];
int numVertices = face.length;
for (int j = 0; j != numVertices; j++) {
int k = (j + 1) % numVertices;
vertices[face[j]].vsub(vertices[face[k]], edge);
edge.normalize();
bool found = false;
for (int p = 0; p != edges.length; p++) {
if (edges[p].almostEquals(edge) || edges[p].almostEquals(edge)) {
found = true;
break;
}
}
if (!found) {
edges.add(edge.clone());
}
}
}
}