File: natneighbors.h

package info (click to toggle)
python-scipy 0.6.0-12
  • links: PTS, VCS
  • area: main
  • in suites: lenny
  • size: 32,016 kB
  • ctags: 46,675
  • sloc: cpp: 124,854; ansic: 110,614; python: 108,664; fortran: 76,260; objc: 424; makefile: 384; sh: 10
file content (33 lines) | stat: -rw-r--r-- 923 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef _NATNEIGHBORS_H
#define _NATNEIGHBORS_H

#include <list>
using namespace std;

class NaturalNeighbors
{
public:
    NaturalNeighbors(int npoints, int ntriangles, double *x, double *y,
        double *centers, int *nodes, int *neighbors);
    ~NaturalNeighbors();

    double interpolate_one(double *z, double targetx, double targety,
        double defvalue, int &start_triangle);

    void interpolate_grid(double *z, 
        double x0, double x1, int xsteps,
        double y0, double y1, int ysteps,
        double *output, double defvalue, int start_triangle);

    void interpolate_unstructured(double *z, int size, 
        double *intx, double *inty, double *output, double defvalue);

private:
    int npoints, ntriangles;
    double *x, *y, *centers, *radii2;
    int *nodes, *neighbors;

    int find_containing_triangle(double targetx, double targety, int start_triangle);
};

#endif // _NATNEIGHBORS_H