MeshLib
 
Loading...
Searching...
No Matches
MRDotNet/MRMeshFwd.h
Go to the documentation of this file.
1#pragma once
2#pragma managed( push, off )
3#include <functional>
4namespace MR
5{
6template<typename T>
7struct Vector3;
10
12using ConvertToIntVector = std::function<Vector3i( const Vector3f& )>;
14using ConvertToFloatVector = std::function<Vector3f( const Vector3i& )>;
15
16template<typename T>
17struct Matrix3;
18using Matrix3f = Matrix3 <float>;
19
20template<typename V>
21struct AffineXf;
23
24template<typename V>
25struct Box;
27
28struct Mesh;
29struct PointCloud;
30class BitSet;
31
32class ICP;
33class MultiwayICP;
34struct PointPairs;
35
36struct MeshTriPoint;
38}
39
40#pragma managed( pop )
41
42#define MR_DOTNET_NAMESPACE_BEGIN namespace MR { namespace DotNet {
43#define MR_DOTNET_NAMESPACE_END }}
44
45using namespace System::Collections;
46using namespace System::Collections::Generic;
47using namespace System::Collections::ObjectModel;
48
50
51using VertId = int;
52using EdgeId = int;
53using FaceId = int;
54
55public value struct ThreeVertIds
56{
60
62 {
63 this->v0 = v0;
64 this->v1 = v1;
65 this->v2 = v2;
66 }
67};
68
69using Triangulation = List<ThreeVertIds>;
70using TriangulationReadOnly = ReadOnlyCollection<ThreeVertIds>;
71
72using EdgePath = List<EdgeId>;
73using EdgePathReadOnly = ReadOnlyCollection<EdgeId>;
74
75ref class BitSetReadOnly;
76ref class BitSet;
77
78using VertBitSetReadOnly = BitSetReadOnly;
79using FaceBitSetReadOnly = BitSetReadOnly;
80
83
84using VertMap = List<VertId>;
85using VertMapReadOnly = ReadOnlyCollection<VertId>;
86
87using FaceMap = List<FaceId>;
88using FaceMapReadOnly = ReadOnlyCollection<FaceId>;
89
90ref class Vector3f;
91ref class Box3f;
92ref class Matrix3f;
93ref class AffineXf3f;
94
95using VertCoords = List<Vector3f^>;
96using VertCoordsReadOnly = ReadOnlyCollection<Vector3f^>;
97
98using VertNormals = List<Vector3f^>;
99using VertNormalsReadOnly = ReadOnlyCollection<Vector3f^>;
100using FaceNormals = List<Vector3f^>;
101using FaceNormalsReadOnly = ReadOnlyCollection<Vector3f^>;
102
103ref class Mesh;
104value struct MeshPart;
105
106interface class MeshOrPoints;
107ref class PointCloud;
108value struct MeshOrPointsXf;
109
110ref class BooleanMaps;
111ref class BooleanResultMapper;
112
113ref struct MeshTriPoint;
114ref class CoordinateConverters;
115ref class PreciseCollisionResult;
116
117public value struct VariableEdgeTri
118{
122};
123
124using ContinousContour = List<VariableEdgeTri>;
125using ContinousContours = List<ContinousContour^>;
#define MR_DOTNET_NAMESPACE_BEGIN
Definition MRDotNet/MRMeshFwd.h:42
BitSetReadOnly VertBitSetReadOnly
Definition MRDotNet/MRMeshFwd.h:78
ReadOnlyCollection< VertId > VertMapReadOnly
Definition MRDotNet/MRMeshFwd.h:85
ReadOnlyCollection< Vector3f^> VertCoordsReadOnly
Definition MRDotNet/MRMeshFwd.h:96
List< Vector3f^> VertNormals
Definition MRDotNet/MRMeshFwd.h:98
ReadOnlyCollection< ThreeVertIds > TriangulationReadOnly
Definition MRDotNet/MRMeshFwd.h:70
ReadOnlyCollection< EdgeId > EdgePathReadOnly
Definition MRDotNet/MRMeshFwd.h:73
List< Vector3f^> VertCoords
Definition MRDotNet/MRMeshFwd.h:95
List< EdgeId > EdgePath
Definition MRDotNet/MRMeshFwd.h:72
int VertId
Definition MRDotNet/MRMeshFwd.h:51
List< VertId > VertMap
Definition MRDotNet/MRMeshFwd.h:84
#define MR_DOTNET_NAMESPACE_END
Definition MRDotNet/MRMeshFwd.h:43
List< Vector3f^> FaceNormals
Definition MRDotNet/MRMeshFwd.h:100
ReadOnlyCollection< FaceId > FaceMapReadOnly
Definition MRDotNet/MRMeshFwd.h:88
ReadOnlyCollection< Vector3f^> VertNormalsReadOnly
Definition MRDotNet/MRMeshFwd.h:99
int FaceId
Definition MRDotNet/MRMeshFwd.h:53
List< ContinousContour^> ContinousContours
Definition MRDotNet/MRMeshFwd.h:125
List< VariableEdgeTri > ContinousContour
Definition MRDotNet/MRMeshFwd.h:124
int EdgeId
Definition MRDotNet/MRMeshFwd.h:52
ReadOnlyCollection< Vector3f^> FaceNormalsReadOnly
Definition MRDotNet/MRMeshFwd.h:101
BitSetReadOnly FaceBitSetReadOnly
Definition MRDotNet/MRMeshFwd.h:79
List< FaceId > FaceMap
Definition MRDotNet/MRMeshFwd.h:87
affine transformation: y = A*x + b, where A in VxV, and b in V
Definition MRDotNet/MRAffineXf.h:8
Definition MRDotNet/MRBitSet.h:39
BitSet()
creates empty bitset
Definition MRBooleanResultMapper.h:9
this class allows to map faces, vertices and edges of mesh A and mesh B input of MeshBoolean to resul...
Definition MRBooleanResultMapper.h:43
Box given by its min- and max- corners.
Definition MRBox3.h:8
this class contains coordinate converters float-int-float
Definition MRCoordinateConverters.h:12
container of bits
Definition MRMesh/MRBitSet.h:26
Definition MRMesh/MRICP.h:169
Definition MRMesh/MRMultiwayICP.h:82
arbitrary 3x3 matrix
Definition MRDotNet/MRMatrix3.h:8
represents a mesh, including topology (connectivity) information and point coordinates,
Definition MRDotNet/MRMesh.h:30
represents a point cloud
Definition MRDotNet/MRPointCloud.h:7
Definition MRDotNet/MRMeshCollidePrecise.h:14
represents a 3-dimentional float-typed vector
Definition MRDotNet/MRVector3.h:8
represents a point cloud or a mesh
Definition MRDotNet/MRMeshOrPoints.h:12
Definition MRCameraOrientationPlugin.h:7
Vector3< int > Vector3i
Definition MRDotNet/MRMeshFwd.h:9
Vector3< float > Vector3f
Definition MRDotNet/MRMeshFwd.h:8
std::function< Vector3f(const Vector3i &)> ConvertToFloatVector
int-to-float coordinate converter
Definition MRDotNet/MRMeshFwd.h:14
MRMESH_CLASS Vector3
Definition MRMesh/MRMeshFwd.h:136
std::function< Vector3i(const Vector3f &)> ConvertToIntVector
float-to-int coordinate converter
Definition MRDotNet/MRMeshFwd.h:12
Definition Triangulation.dox.py:1
Definition MRMesh/MRAffineXf.h:14
Box given by its min- and max- corners.
Definition MRMesh/MRBox.h:23
Definition MRMesh/MRMatrix3.h:13
Definition MRMesh/MRMeshTriPoint.h:23
Definition MRMesh/MRMesh.h:23
Definition MRMesh/MRPointCloud.h:16
Definition MRMesh/MRICP.h:74
Definition MRMesh/MRMeshCollidePrecise.h:30
Definition MRMesh/MRVector3.h:19
holds together mesh/point cloud and its transformation
Definition MRDotNet/MRMeshOrPoints.h:21
Definition MRDotNet/MRMesh.h:20
Definition MRDotNet/MRMeshTriPoint.h:25
Definition MRDotNet/MRMeshFwd.h:56
VertId v2
Definition MRDotNet/MRMeshFwd.h:59
VertId v0
Definition MRDotNet/MRMeshFwd.h:57
VertId v1
Definition MRDotNet/MRMeshFwd.h:58
ThreeVertIds(VertId v0, VertId v1, VertId v2)
Definition MRDotNet/MRMeshFwd.h:61
Definition MRDotNet/MRMeshFwd.h:118
EdgeId edge
Definition MRDotNet/MRMeshFwd.h:119
bool isEdgeATriB
Definition MRDotNet/MRMeshFwd.h:121
FaceId tri
Definition MRDotNet/MRMeshFwd.h:120