Wildmeshing Toolkit
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
wmtk::history::VolumeEdit Struct Reference

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 Member Functions

std::vector< std::array< uint32_t, 4 > > tets_after (std::vector< uint32_t > *regions_after=nullptr) const
 The tets after the operation, with their regions.
 
std::vector< Eigen::Vector3d > positions_after () const
 The positions after the operation.
 

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.
 

Detailed Description

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.

Member Data Documentation

◆ tets

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).

◆ vertices

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).


The documentation for this struct was generated from the following files: