libigl v2.5.0
Loading...
Searching...
No Matches
decimate_callback_types.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) 2020 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_DECIMATE_CALLBACK_TYPES_H
9#define IGL_DECIMATE_CALLBACK_TYPES_H
10#include <Eigen/Core>
11#include "min_heap.h"
15namespace igl
16{
36 std::function<void(
37 const int ,/*e*/
38 const Eigen::MatrixXd & ,/*V*/
39 const Eigen::MatrixXi & ,/*F*/
40 const Eigen::MatrixXi & ,/*E*/
41 const Eigen::VectorXi & ,/*EMAP*/
42 const Eigen::MatrixXi & ,/*EF*/
43 const Eigen::MatrixXi & ,/*EI*/
44 double & ,/*cost*/
45 Eigen::RowVectorXd & /*p*/
46 )>;
73 std::function<bool(
74 const Eigen::MatrixXd & ,/*V*/
75 const Eigen::MatrixXi & ,/*F*/
76 const Eigen::MatrixXi & ,/*E*/
77 const Eigen::VectorXi & ,/*EMAP*/
78 const Eigen::MatrixXi & ,/*EF*/
79 const Eigen::MatrixXi & ,/*EI*/
80 const igl::min_heap< std::tuple<double,int,int> > & ,/*Q*/
81 const Eigen::VectorXi & ,/*EQ*/
82 const Eigen::MatrixXd & ,/*C*/
83 const int ,/*e*/
84 const int ,/*e1*/
85 const int ,/*e2*/
86 const int ,/*f1*/
87 const int /*f2*/
88 )>;
111 std::function<bool(
112 const Eigen::MatrixXd & ,/*V*/
113 const Eigen::MatrixXi & ,/*F*/
114 const Eigen::MatrixXi & ,/*E*/
115 const Eigen::VectorXi & ,/*EMAP*/
116 const Eigen::MatrixXi & ,/*EF*/
117 const Eigen::MatrixXi & ,/*EI*/
118 const igl::min_heap< std::tuple<double,int,int> > & ,/*Q*/
119 const Eigen::VectorXi & ,/*EQ*/
120 const Eigen::MatrixXd & ,/*C*/
121 const int /*e*/
122 )>;
148 std::function<void(
149 const Eigen::MatrixXd & ,/*V*/
150 const Eigen::MatrixXi & ,/*F*/
151 const Eigen::MatrixXi & ,/*E*/
152 const Eigen::VectorXi & ,/*EMAP*/
153 const Eigen::MatrixXi & ,/*EF*/
154 const Eigen::MatrixXi & ,/*EI*/
155 const igl::min_heap< std::tuple<double,int,int> > & ,/*Q*/
156 const Eigen::VectorXi & ,/*EQ*/
157 const Eigen::MatrixXd & ,/*C*/
158 const int ,/*e*/
159 const int ,/*e1*/
160 const int ,/*e2*/
161 const int ,/*f1*/
162 const int ,/*f2*/
163 const bool /*collapsed*/
164 )>;
165}
166#endif
Definition AABB.h:17
std::function< void(const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const igl::min_heap< std::tuple< double, int, int > > &, const Eigen::VectorXi &, const Eigen::MatrixXd &, const int, const int, const int, const int, const int, const bool)> decimate_post_collapse_callback
Function handle called just after collapse_edge is attempted.
Definition decimate_callback_types.h:164
std::function< bool(const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const igl::min_heap< std::tuple< double, int, int > > &, const Eigen::VectorXi &, const Eigen::MatrixXd &, const int, const int, const int, const int, const int)> decimate_stopping_condition_callback
Function handle used to control whether the queue processing in igl::decimate should stop.
Definition decimate_callback_types.h:88
std::priority_queue< T, std::vector< T >, std::greater< T > > min_heap
Templated min heap (reverses sort order of std::priority_queue)
Definition min_heap.h:18
std::function< bool(const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const igl::min_heap< std::tuple< double, int, int > > &, const Eigen::VectorXi &, const Eigen::MatrixXd &, const int)> decimate_pre_collapse_callback
Function handle called just before collapse_edge is attempted.
Definition decimate_callback_types.h:122
std::function< void(const int, const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, double &, Eigen::RowVectorXd &)> decimate_cost_and_placement_callback
Function handle used to control the cost of each edge collapse in igl::decimate.
Definition decimate_callback_types.h:46