MeshLib C++ Docs
Loading...
Searching...
No Matches
MRPartMappingAdapters.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRPartMapping.h"
4#include "MRMapOrHashMap.h"
5
6namespace MR
7{
8
10class Src2TgtMaps
11{
12public:
13 MRMESH_API Src2TgtMaps( FaceMap * outFmap, VertMap * outVmap, WholeEdgeMap * outEmap );
14 MRMESH_API ~Src2TgtMaps(); // maps are moved back to user here
15
16 operator const PartMapping &() const { return map_; }
17 const PartMapping & getPartMapping() const { return map_; }
18
19private:
20 FaceMap * outFmap_ = nullptr;
21 VertMap * outVmap_ = nullptr;
22 WholeEdgeMap * outEmap_ = nullptr;
23 PartMapping map_;
24 FaceMapOrHashMap src2tgtFaces_;
25 VertMapOrHashMap src2tgtVerts_;
26 WholeEdgeMapOrHashMap src2tgtEdges_;
27};
28
30class Tgt2SrcMaps
31{
32public:
33 MRMESH_API Tgt2SrcMaps( FaceMap * outFmap, VertMap * outVmap, WholeEdgeMap * outEmap );
34 MRMESH_API ~Tgt2SrcMaps(); // maps are moved back to user here
35
36 operator const PartMapping &() const { return map_; }
37 const PartMapping & getPartMapping() const { return map_; }
38
39private:
40 FaceMap * outFmap_ = nullptr;
41 VertMap * outVmap_ = nullptr;
42 WholeEdgeMap * outEmap_ = nullptr;
43 PartMapping map_;
44 FaceMapOrHashMap tgt2srcFaces_;
45 VertMapOrHashMap tgt2srcVerts_;
46 WholeEdgeMapOrHashMap tgt2srcEdges_;
47};
48
49} //namespace MR
#define MRMESH_API
Definition MRMeshFwd.h:80
unsafe Src2TgtMaps(MR._ByValue_Src2TgtMaps _other)
unsafe Tgt2SrcMaps(MR._ByValue_Tgt2SrcMaps _other)
Definition MRCameraOrientationPlugin.h:8
WholeEdgeMapOrHashMap