MeshLib C++ Docs
Loading...
Searching...
No Matches
MRMeshTopologyDiff.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMeshTopology.h"
4#include "MRphmap.h"
5
6namespace MR
7{
10
11
16{
17public:
19 MeshTopologyDiff() = default;
20
22 MRMESH_API MeshTopologyDiff( const MeshTopology & from, const MeshTopology & to );
23
26 MRMESH_API void applyAndSwap( MeshTopology & t );
27
31 [[nodiscard]] bool any() const { return !changedEdges_.empty(); }
32
34 [[nodiscard]] MRMESH_API size_t heapBytes() const;
35
36private:
37 size_t toEdgesSize_ = 0;
38 HashMap<EdgeId, MeshTopology::HalfEdgeRecord> changedEdges_;
39};
40
41}
Definition MRMeshTopologyDiff.h:16
Definition MRMeshTopology.h:22
MRMESH_API MeshTopologyDiff(const MeshTopology &from, const MeshTopology &to)
computes the difference, that can be applied to topology-from in order to get topology-to
MRMESH_API size_t heapBytes() const
returns the amount of memory this object occupies on heap
MRMESH_API void applyAndSwap(MeshTopology &t)
bool any() const
Definition MRMeshTopologyDiff.h:31
MeshTopologyDiff()=default
constructs minimal difference, where applyAndSwap( t ) will produce empty topology
only for bindings generation
Definition MRCameraOrientationPlugin.h:8