|
Wildmeshing Toolkit
|
One operation that changed the tracked surface of a tet mesh, as the tets around it saw it: the tets before and after, their regions, and where their vertices were. More...
#include <VolumeHistory.hpp>
Public Attributes | |
| VolumeOp | op = VolumeOp::collapse |
| uint64_t | first_edit = 0 |
| The surface history's edits the operation made: [first_edit, first_edit + n_edits). | |
| uint64_t | n_edits = 0 |
| std::vector< uint64_t > | vertices |
| std::vector< Eigen::Vector3d > | positions |
| std::vector< uint64_t > | surface_before |
| std::vector< uint64_t > | surface_after |
| std::vector< std::pair< uint32_t, Eigen::Vector3d > > | moved |
| The vertices the operation moved, and where to. | |
| std::vector< std::array< uint32_t, 4 > > | tets |
| std::vector< uint32_t > | regions |
| std::vector< uint32_t > | removed |
After it: those tets but removed (indices into tets), and added. | |
| std::vector< std::array< uint32_t, 4 > > | added |
| std::vector< uint32_t > | added_regions |
| std::vector< uint32_t > | op_vertices |
| collapse: {removed, kept}; smooth: {the vertex}; swaps: none. | |
One operation that changed the tracked surface of a tet mesh, as the tets around it saw it: the tets before and after, their regions, and where their vertices were.
Vertices are local to the edit, numbered from 0: a volume map follows points in space, so no vertex identity is needed from one edit to the next. The edit links to the surface history by the range of its edits the operation made, and by the surface vertex of each local vertex, so the tracked faces among the tets, and the surface map's local map of the operation, can be found there.
| std::vector<std::array<uint32_t, 4> > wmtk::history::VolumeEdit::tets |
The tets around the operation before it, positively oriented, and the region of each (an index into VolumeHistory::regions).
| std::vector<uint64_t> wmtk::history::VolumeEdit::vertices |
Per local vertex: the vertex it is, an id that lasts the whole history (what a file writes a position against once, while it does not change); its position before the operation, and its vertex on the tracked surface before and after it (kNoVertex: off it).