Skip to content

Class Argos::Mesh

ClassList > Argos > Mesh

Core mesh representation storing vertices and polygonal faces. More...

  • #include <Mesh.h>

Public Functions

Type Name
Mesh () = default
Default constructor — creates an empty mesh.
Mesh (const std::vector< Vector3D< double > > & vertices, const std::vector< Face > & faces)
Construct a mesh from vertex positions and faces.
Mesh (const Mesh & other)
Copy constructor.
int faceCount () const
Number of faces in the mesh.
std::vector< Vertex > getFace (int i) const
Get the vertices of a face by index.
const std::vector< Face > & getFaces () const
Const access to all faces.
std::vector< Face > & getFaces ()
Mutable access to all faces.
Vertex getVertex (int i) const
Get a vertex by index.
const std::vector< Vector3D< double > > & getVertices () const
Const access to all vertex positions.
std::vector< Vector3D< double > > & getVertices ()
Mutable access to all vertex positions.
bool isEmpty () const
Whether the mesh is empty.
int vertexCount () const
Number of vertices in the mesh.

Detailed Description

A Mesh holds a list of 3D vertex positions and a list of Face objects that reference vertices by index. Faces may be triangles, quads, or arbitrary polygons.

Public Functions Documentation

function Mesh [1/3]

Default constructor — creates an empty mesh.

Argos::Mesh::Mesh () = default


function Mesh [2/3]

Construct a mesh from vertex positions and faces.

Argos::Mesh::Mesh (
    const std::vector< Vector3D < double > > & vertices,
    const std::vector< Face > & faces
) 

Parameters:

  • vertices The 3D vertex coordinates.
  • faces The polygonal faces referencing vertex indices.

function Mesh [3/3]

Copy constructor.

Argos::Mesh::Mesh (
    const  Mesh & other
) 

Parameters:

  • other Mesh to copy.

function faceCount

Number of faces in the mesh.

int Argos::Mesh::faceCount () const

Returns:

Face count.


function getFace

Get the vertices of a face by index.

std::vector< Vertex > Argos::Mesh::getFace (
    int i
) const

Parameters:

  • i Face index (0-based).

Returns:

Vector of Vertex objects forming the face.


function getFaces [1/2]

Const access to all faces.

const std::vector< Face > & Argos::Mesh::getFaces () const

Returns:

Const reference to the face vector.


function getFaces [2/2]

Mutable access to all faces.

std::vector< Face > & Argos::Mesh::getFaces () 

Returns:

Mutable reference to the face vector.


function getVertex

Get a vertex by index.

Vertex Argos::Mesh::getVertex (
    int i
) const

Parameters:

Returns:

A Vertex object wrapping the position at index i.


function getVertices [1/2]

Const access to all vertex positions.

const std::vector< Vector3D < double > > & Argos::Mesh::getVertices () const

Returns:

Const reference to the vertex vector.


function getVertices [2/2]

Mutable access to all vertex positions.

std::vector< Vector3D < double > > & Argos::Mesh::getVertices () 

Returns:

Mutable reference to the vertex vector.


function isEmpty

Whether the mesh is empty.

bool Argos::Mesh::isEmpty () const

Returns:

true if the mesh has no vertices and no faces.


function vertexCount

Number of vertices in the mesh.

int Argos::Mesh::vertexCount () const

Returns:

Vertex count.



The documentation for this class was generated from the following file include/mesh/Mesh.h