libigl v2.5.0
Loading...
Searching...
No Matches
slice_mask.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_SLICE_MASK_H
9#define IGL_SLICE_MASK_H
10#include "igl_inline.h"
11
12#include <Eigen/Sparse>
13#include <Eigen/Core>
14namespace igl
15{
25 template <typename XType, typename YType>
27 const Eigen::SparseMatrix<XType> & X,
28 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
29 const Eigen::Array<bool,Eigen::Dynamic,1> & C,
30 Eigen::SparseMatrix<YType> & Y);
36 template <typename XType, typename YType>
38 const Eigen::SparseMatrix<XType> & X,
39 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
40 const int dim,
41 Eigen::SparseMatrix<YType> & Y);
47 template <typename DerivedX,typename DerivedY>
49 const Eigen::DenseBase<DerivedX> & X,
50 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
51 const Eigen::Array<bool,Eigen::Dynamic,1> & C,
52 Eigen::PlainObjectBase<DerivedY> & Y);
53 template <typename DerivedX,typename DerivedY>
55 const Eigen::DenseBase<DerivedX> & X,
56 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
57 const int dim,
58 Eigen::PlainObjectBase<DerivedY> & Y);
64 template <typename DerivedX>
66 const Eigen::DenseBase<DerivedX> & X,
67 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
68 const Eigen::Array<bool,Eigen::Dynamic,1> & C);
70 template <typename DerivedX>
72 const Eigen::DenseBase<DerivedX> & X,
73 const Eigen::Array<bool,Eigen::Dynamic,1> & R,
74 const int dim);
75}
76
77
78#ifndef IGL_STATIC_LIBRARY
79# include "slice_mask.cpp"
80#endif
81
82#endif
#define IGL_INLINE
Definition igl_inline.h:15
Definition AABB.h:17
void slice_mask(const Eigen::SparseMatrix< XType > &X, const Eigen::Array< bool, Eigen::Dynamic, 1 > &R, const Eigen::Array< bool, Eigen::Dynamic, 1 > &C, Eigen::SparseMatrix< YType > &Y)
Act like the matlab X(row_mask,col_mask) operator, where row_mask, col_mask are non-negative integer ...