Skip to content

File Mesh.cpp

File List > core > mesh > Mesh.cpp

Go to the documentation of this file

#include "mesh/Mesh.h"
#include "mesh/Face.h"
#include "mesh/Vertex.h"

namespace Argos {

Mesh::Mesh(std::vector<Vector3D<double>> vertices, std::vector<Face> faces): vertices(vertices), faces(faces) {}
Mesh::Mesh(const Mesh& other): vertices(other.vertices), faces(other.faces) {}

  int Mesh::vertexCount() const {
    return vertices.size();
  }
  int Mesh::faceCount() const {
    return faces.size();
  }

  Vertex Mesh::getVertex(int i) const {
    return vertices[i];
  }
  std::vector<Vertex> Mesh::getFace(int i) const {
      std::vector<Vertex> vec;
      for(int offset = 0 ; i < 3 ; i++) {
        vec.push_back(vertices[3*i+offset]);
      }
      return vec;
  }

  std::vector<Vector3D<double>> Mesh::getVertices() const {
    return vertices;
  }
  std::vector<Face> Mesh::getFaces() const {
    return faces;
  }

}