Mantid
Loading...
Searching...
No Matches
RenderingMesh.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2018 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
9#include "MantidGeometry/DllConfig.h"
10#include <vector>
11
12namespace Mantid {
13namespace Geometry {
14
17class MANTID_GEOMETRY_DLL RenderingMesh {
18
19public:
20 virtual size_t numberOfVertices() const = 0;
21 virtual size_t numberOfTriangles() const = 0;
22 virtual std::vector<double> getVertices() const = 0;
23 virtual std::vector<uint32_t> getTriangles() const = 0;
24 virtual ~RenderingMesh() = default;
25};
26
27} // namespace Geometry
28} // namespace Mantid
RenderingMesh : Mesh abstraction required for rendering.
Definition: RenderingMesh.h:17
virtual size_t numberOfVertices() const =0
virtual std::vector< double > getVertices() const =0
virtual ~RenderingMesh()=default
virtual std::vector< uint32_t > getTriangles() const =0
virtual size_t numberOfTriangles() const =0
Helper class which provides the Collimation Length for SANS instruments.