libigl v2.5.0
Loading...
Searching...
No Matches
collapse_edge.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) 2015 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_COLLAPSE_EDGE_H
9#define IGL_COLLAPSE_EDGE_H
10#include "igl_inline.h"
11#include "COLLAPSE_EDGE_NULL.h"
12#include <Eigen/Core>
13#include <vector>
14namespace igl
15{
104 template <
105 typename Derivedp,
106 typename DerivedV,
107 typename DerivedF,
108 typename DerivedE,
109 typename DerivedEMAP,
110 typename DerivedEF,
111 typename DerivedEI>
113 const int e,
114 const Eigen::MatrixBase<Derivedp> & p,
115 Eigen::MatrixBase<DerivedV> & V,
116 Eigen::MatrixBase<DerivedF> & F,
117 Eigen::MatrixBase<DerivedE> & E,
118 Eigen::MatrixBase<DerivedEMAP> & EMAP,
119 Eigen::MatrixBase<DerivedEF> & EF,
120 Eigen::MatrixBase<DerivedEI> & EI,
121 int & e1,
122 int & e2,
123 int & f1,
124 int & f2);
131 template
132 <
133 typename Derivedp,
134 typename DerivedV,
135 typename DerivedF,
136 typename DerivedE,
137 typename DerivedEMAP,
138 typename DerivedEF,
139 typename DerivedEI>
141 const int e,
142 const Eigen::MatrixBase<Derivedp> & p,
143 /*const*/ std::vector<int> & Nsv,
144 const std::vector<int> & Nsf,
145 /*const*/ std::vector<int> & Ndv,
146 const std::vector<int> & Ndf,
147 Eigen::MatrixBase<DerivedV> & V,
148 Eigen::MatrixBase<DerivedF> & F,
149 Eigen::MatrixBase<DerivedE> & E,
150 Eigen::MatrixBase<DerivedEMAP> & EMAP,
151 Eigen::MatrixBase<DerivedEF> & EF,
152 Eigen::MatrixBase<DerivedEI> & EI,
153 int & a_e1,
154 int & a_e2,
155 int & a_f1,
156 int & a_f2);
157}
158
159#ifndef IGL_STATIC_LIBRARY
160# include "collapse_edge.cpp"
161#endif
162#endif
#define IGL_INLINE
Definition igl_inline.h:15
Definition AABB.h:18
bool collapse_edge(const int e, const Eigen::MatrixBase< Derivedp > &p, Eigen::MatrixBase< DerivedV > &V, Eigen::MatrixBase< DerivedF > &F, Eigen::MatrixBase< DerivedE > &E, Eigen::MatrixBase< DerivedEMAP > &EMAP, Eigen::MatrixBase< DerivedEF > &EF, Eigen::MatrixBase< DerivedEI > &EI, int &e1, int &e2, int &f1, int &f2)
Attempt to collapse a given edge of a mesh.