MeshLib C++ Docs
Loading...
Searching...
No Matches
MRMeshBooleanFacade.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRMesh.h"
4#include "MRAffineXf3.h"
5
6namespace MR
7{
10
11
14{
16 AffineXf3f xf;
17 TransformedMesh() = default;
18 TransformedMesh( Mesh mesh, const AffineXf3f& xf = {} ) : mesh( std::move( mesh ) ), xf( xf ) {}
19};
20
24{
25 TransformedMesh operator() ( Mesh mesh, const AffineXf3f& xf = {} ) const
26 { return TransformedMesh( std::move( mesh ), xf ); }
27 MRMESH_API TransformedMesh operator() ( const ObjectMesh & obj ) const;
28
29 const Mesh & operator() ( const TransformedMesh & xm ) const
30 { return xm.mesh; }
32 { return std::move( xm.mesh ); }
33};
34
37
40
43
44}
45
46
Definition MRObjectMesh.h:14
Mesh mesh
Definition MRMeshBooleanFacade.h:15
MRMESH_API TransformedMesh & operator+=(TransformedMesh &a, const TransformedMesh &b)
union operation on two meshes
TransformedMesh(Mesh mesh, const AffineXf3f &xf={})
Definition MRMeshBooleanFacade.h:18
AffineXf3f xf
Definition MRMeshBooleanFacade.h:16
MRMESH_API TransformedMesh & operator-=(TransformedMesh &a, const TransformedMesh &b)
difference operation on two meshes
TransformedMesh operator()(Mesh mesh, const AffineXf3f &xf={}) const
Definition MRMeshBooleanFacade.h:25
MRMESH_API TransformedMesh & operator*=(TransformedMesh &a, const TransformedMesh &b)
intersection operation on two meshes
TransformedMesh()=default
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRMeshBooleanFacade.h:24
Definition MRMesh.h:23
just stores a mesh and its transformation to some fixed reference frame
Definition MRMeshBooleanFacade.h:14