Subversion Repositories gelsvn

Rev

Rev 61 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#ifndef __VOXELGRID_TRILINFILTER_H
#define __VOXELGRID_TRILINFILTER_H

#include "CGLA/Vec3f.h"
#include "RGrid.h"
#include "Neighbours.h"

namespace Geometry
{
        template<class GridT>
        class TrilinFilter
        {
        public:
                typedef typename GridT::DataType DataType;
        private:
                const GridT* grid;
        public:
                TrilinFilter(const GridT* _grid):       grid(_grid) {}

                bool in_domain(const CGLA::Vec3f&) const;

                bool map(const CGLA::Vec3f& p, DataType& f) const;
                
                const DataType operator()(const CGLA::Vec3f& p) const
                {
                        DataType f(0);
                        map(p,f);
                        return f;
                }
        };
}


#endif