libigl v2.5.0
Loading...
Searching...
No Matches
minkowski_sum.h
Go to the documentation of this file.
1// This file is part of libigl, a simple c++ geometry processing library.
2//
3// Copyright (C) 2016 Alec Jacobson <alecjacobson@gmail.com>
4//
5// This Source Code Form is subject to the terms of the Mozilla Public License
6// v. 2.0. If a copy of the MPL was not distributed with this file, You can
7// obtain one at http://mozilla.org/MPL/2.0/.
8#ifndef IGL_COPYLEFT_CGAL_MINKOWSKI_SUM_H
9#define IGL_COPYLEFT_CGAL_MINKOWSKI_SUM_H
10
11#include "../../igl_inline.h"
12#include <Eigen/Core>
13
14namespace igl
15{
16 namespace copyleft
17 {
18 namespace cgal
19 {
34 template <
35 typename DerivedVA,
36 typename DerivedFA,
37 typename DerivedVB,
38 typename DerivedFB,
39 typename DerivedW,
40 typename DerivedG,
41 typename DerivedJ>
43 const Eigen::MatrixBase<DerivedVA> & VA,
44 const Eigen::MatrixBase<DerivedFA> & FA,
45 const Eigen::MatrixBase<DerivedVB> & VB,
46 const Eigen::MatrixBase<DerivedFB> & FB,
47 const bool resolve_overlaps,
48 Eigen::PlainObjectBase<DerivedW> & W,
49 Eigen::PlainObjectBase<DerivedG> & G,
50 Eigen::PlainObjectBase<DerivedJ> & J);
57 template <
58 typename DerivedVA,
59 typename DerivedFA,
60 typename sType, int sCols, int sOptions,
61 typename dType, int dCols, int dOptions,
62 typename DerivedW,
63 typename DerivedG,
64 typename DerivedJ>
66 const Eigen::MatrixBase<DerivedVA> & VA,
67 const Eigen::MatrixBase<DerivedFA> & FA,
68 const Eigen::Matrix<sType,1,sCols,sOptions> & s,
69 const Eigen::Matrix<dType,1,dCols,dOptions> & d,
70 const bool resolve_overlaps,
71 Eigen::PlainObjectBase<DerivedW> & W,
72 Eigen::PlainObjectBase<DerivedG> & G,
73 Eigen::PlainObjectBase<DerivedJ> & J);
75 template <
76 typename DerivedVA,
77 typename DerivedFA,
78 typename sType, int sCols, int sOptions,
79 typename dType, int dCols, int dOptions,
80 typename DerivedW,
81 typename DerivedG,
82 typename DerivedJ>
84 const Eigen::MatrixBase<DerivedVA> & VA,
85 const Eigen::MatrixBase<DerivedFA> & FA,
86 const Eigen::Matrix<sType,1,sCols,sOptions> & s,
87 const Eigen::Matrix<dType,1,dCols,dOptions> & d,
88 Eigen::PlainObjectBase<DerivedW> & W,
89 Eigen::PlainObjectBase<DerivedG> & G,
90 Eigen::PlainObjectBase<DerivedJ> & J);
91 }
92 }
93}
94
95#ifndef IGL_STATIC_LIBRARY
96# include "minkowski_sum.cpp"
97#endif
98
99#endif
#define IGL_INLINE
Definition igl_inline.h:15
void minkowski_sum(const Eigen::MatrixBase< DerivedVA > &VA, const Eigen::MatrixBase< DerivedFA > &FA, const Eigen::MatrixBase< DerivedVB > &VB, const Eigen::MatrixBase< DerivedFB > &FB, const bool resolve_overlaps, Eigen::PlainObjectBase< DerivedW > &W, Eigen::PlainObjectBase< DerivedG > &G, Eigen::PlainObjectBase< DerivedJ > &J)
Compute the Minkowski sum of a closed triangle mesh (V,F) and a set of simplices in 3D.
Definition AABB.h:17