8#ifndef IGL_PER_FACE_NORMALS_H 
    9#define IGL_PER_FACE_NORMALS_H 
   24  template <
typename DerivedV, 
typename DerivedF, 
typename DerivedZ, 
typename DerivedN>
 
   26    const Eigen::MatrixBase<DerivedV>& V,
 
   27    const Eigen::MatrixBase<DerivedF>& F,
 
   28    const Eigen::MatrixBase<DerivedZ> & Z,
 
   29    Eigen::PlainObjectBase<DerivedN> & N);
 
   33  template <
typename DerivedV, 
typename DerivedF, 
typename DerivedN>
 
   35    const Eigen::MatrixBase<DerivedV>& V,
 
   36    const Eigen::MatrixBase<DerivedF>& F,
 
   37    Eigen::PlainObjectBase<DerivedN> & N);
 
   41  template <
typename DerivedV, 
typename DerivedF, 
typename DerivedN>
 
   43    const Eigen::MatrixBase<DerivedV>& V,
 
   44    const Eigen::MatrixBase<DerivedF>& F,
 
   45    Eigen::PlainObjectBase<DerivedN> & N);
 
   66    const Eigen::MatrixBase<DerivedV> & V,
 
   67    const Eigen::MatrixBase<DerivedI> & I,
 
   68    const Eigen::MatrixBase<DerivedC> & C,
 
   69    Eigen::PlainObjectBase<DerivedN> & N,
 
   70    Eigen::PlainObjectBase<DerivedVV> & VV,
 
   71    Eigen::PlainObjectBase<DerivedFF> & FF,
 
   72    Eigen::PlainObjectBase<DerivedJ> & J);
 
   75#ifndef IGL_STATIC_LIBRARY 
   76#  include "per_face_normals.cpp" 
#define IGL_INLINE
Definition igl_inline.h:15
 
void per_face_normals(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DerivedZ > &Z, Eigen::PlainObjectBase< DerivedN > &N)
Compute face normals via vertex position list, face list.
 
void per_face_normals_stable(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedN > &N)
This is an overloaded member function, provided for convenience. It differs from the above function o...