EBGeometry 1.0
Loading...
Searching...
No Matches
EBGeometry_Soup.hpp
Go to the documentation of this file.
1/* EBGeometry
2 * Copyright © 2026 Robert Marskar
3 * Please refer to Copyright.txt and LICENSE in the EBGeometry root directory.
4 */
5
12#ifndef EBGeometry_Soup
13#define EBGeometry_Soup
14
15// Std includes
16#include <vector>
17
18// Our includes
19#include "EBGeometry_Vec.hpp"
22
26namespace Soup {
32 template <typename T>
33 inline static bool
34 containsDegeneratePolygons(const std::vector<EBGeometry::Vec3T<T>>& a_vertices,
35 const std::vector<std::vector<size_t>>& a_facets) noexcept;
36
42 template <typename T>
43 inline static void
44 compress(std::vector<EBGeometry::Vec3T<T>>& a_vertices, std::vector<std::vector<size_t>>& a_facets) noexcept;
45
53 template <typename T, typename Meta>
54 inline static void
55 soupToDCEL(EBGeometry::DCEL::MeshT<T, Meta>& a_mesh,
56 const std::vector<EBGeometry::Vec3T<T>>& a_vertices,
57 const std::vector<std::vector<size_t>>& a_facets,
58 const std::string a_id) noexcept;
59
65 template <typename T, typename Meta>
66 inline static void
67 reconcilePairEdgesDCEL(std::vector<std::shared_ptr<EBGeometry::DCEL::EdgeT<T, Meta>>>& a_edges) noexcept;
68
69} // namespace Soup
70
72
73#include "EBGeometry_SoupImplem.hpp"
74
75#endif
Declaration of a mesh class which stores a DCEL mesh (with signed distance functions)
Declaration of 2D and 3D point/vector classes with templated precision. Used with DCEL tools.
Three-dimensional vector class with arithmetic operators.
Definition EBGeometry_Vec.hpp:218
Namespace contain the basic functionality for turning planar-polygon soups into DCEL meshes.
Definition EBGeometry_Soup.hpp:26