diff options
Diffstat (limited to 'Userland/Applications/3DFileViewer/Mesh.h')
-rw-r--r-- | Userland/Applications/3DFileViewer/Mesh.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/Userland/Applications/3DFileViewer/Mesh.h b/Userland/Applications/3DFileViewer/Mesh.h new file mode 100644 index 0000000000..7f979cff0a --- /dev/null +++ b/Userland/Applications/3DFileViewer/Mesh.h @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2021, Jesse Buhagiar <jooster669@gmail.com> + * Copyright (c) 2021, Mathieu Gaillard <gaillard.mathieu.39@gmail.com> + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +#include <AK/RefCounted.h> +#include <AK/Vector.h> + +#include "Common.h" + +class Mesh : public RefCounted<Mesh> { +public: + Mesh() = delete; + + Mesh(Vector<Vertex> vertices, Vector<Triangle> triangles); + + size_t vertex_count() const { return m_vertex_list.size(); } + + size_t triangle_count() const { return m_triangle_list.size(); } + + void draw(); + +private: + Vector<Vertex> m_vertex_list; + Vector<Triangle> m_triangle_list; +}; |