#include "igl_inline.h"
#include "AABB.h"
#include <Eigen/Core>
#include <functional>
#include "ambient_occlusion.cpp"
 
Go to the source code of this file.
 | 
| template<typename DerivedP , typename DerivedN , typename DerivedS >  | 
| void  | igl::ambient_occlusion (const std::function< bool(const Eigen::Vector3f &, const Eigen::Vector3f &) > &shoot_ray, const Eigen::MatrixBase< DerivedP > &P, const Eigen::MatrixBase< DerivedN > &N, const int num_samples, Eigen::PlainObjectBase< DerivedS > &S) | 
|   | Compute ambient occlusion per given point using ray-mesh intersection function handle.  
  | 
|   | 
| template<typename DerivedV , int DIM, typename DerivedF , typename DerivedP , typename DerivedN , typename DerivedS >  | 
| void  | igl::ambient_occlusion (const igl::AABB< DerivedV, DIM > &aabb, const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DerivedP > &P, const Eigen::MatrixBase< DerivedN > &N, const int num_samples, Eigen::PlainObjectBase< DerivedS > &S) | 
|   | Compute ambient occlusion per given point for mesh (V,F) with precomputed AABB tree.  
  | 
|   | 
| template<typename DerivedV , typename DerivedF , typename DerivedP , typename DerivedN , typename DerivedS >  | 
| void  | igl::ambient_occlusion (const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DerivedP > &P, const Eigen::MatrixBase< DerivedN > &N, const int num_samples, Eigen::PlainObjectBase< DerivedS > &S) | 
|   | Compute ambient occlusion per given point for mesh (V,F)  
  | 
|   |