libigl v2.5.0
Loading...
Searching...
No Matches
project.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) 2013 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_PROJECT_H
9#define IGL_PROJECT_H
10#include "igl_inline.h"
11#include <Eigen/Dense>
12namespace igl
13{
20 template <typename Scalar>
21 IGL_INLINE Eigen::Matrix<Scalar,3,1> project(
22 const Eigen::Matrix<Scalar,3,1>& obj,
23 const Eigen::Matrix<Scalar,4,4>& model,
24 const Eigen::Matrix<Scalar,4,4>& proj,
25 const Eigen::Matrix<Scalar,4,1>& viewport);
43 template <typename DerivedV, typename DerivedM, typename DerivedN, typename DerivedO, typename DerivedP>
45 const Eigen::MatrixBase<DerivedV>& V,
46 const Eigen::MatrixBase<DerivedM>& model,
47 const Eigen::MatrixBase<DerivedN>& proj,
48 const Eigen::MatrixBase<DerivedO>& viewport,
49 Eigen::PlainObjectBase<DerivedP> & P);
50}
51
52#ifndef IGL_STATIC_LIBRARY
53# include "project.cpp"
54#endif
55
56#endif
#define IGL_INLINE
Definition igl_inline.h:15
Definition AABB.h:17
Eigen::Matrix< Scalar, 3, 1 > project(const Eigen::Matrix< Scalar, 3, 1 > &obj, const Eigen::Matrix< Scalar, 4, 4 > &model, const Eigen::Matrix< Scalar, 4, 4 > &proj, const Eigen::Matrix< Scalar, 4, 1 > &viewport)
Eigen reimplementation of gluProject.