QGIS API Documentation
2.8.2-Wien
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
src
analysis
interpolation
CloughTocherInterpolator.h
Go to the documentation of this file.
1
/***************************************************************************
2
CloughTocherInterpolator.h - description
3
-------------------
4
copyright : (C) 2004 by Marco Hugentobler
5
email : mhugent@geo.unizh.ch
6
***************************************************************************/
7
8
/***************************************************************************
9
* *
10
* This program is free software; you can redistribute it and/or modify *
11
* it under the terms of the GNU General Public License as published by *
12
* the Free Software Foundation; either version 2 of the License, or *
13
* (at your option) any later version. *
14
* *
15
***************************************************************************/
16
17
#ifndef CLOUGHTOCHERINTERPOLATOR_H
18
#define CLOUGHTOCHERINTERPOLATOR_H
19
20
#include "
NormVecDecorator.h
"
21
#include "
TriangleInterpolator.h
"
22
#include "
Point3D.h
"
23
#include "
Vector3D.h
"
24
#include "
MathUtils.h
"
25
#include "
Bezier3D.h
"
26
28
class
ANALYSIS_EXPORT
CloughTocherInterpolator
:
public
TriangleInterpolator
29
{
30
protected
:
32
NormVecDecorator
*
mTIN
;
34
double
mEdgeTolerance
;
36
Point3D
point1
;
38
Point3D
point2
;
40
Point3D
point3
;
41
Point3D
cp1
;
42
Point3D
cp2
;
43
Point3D
cp3
;
44
Point3D
cp4
;
45
Point3D
cp5
;
46
Point3D
cp6
;
47
Point3D
cp7
;
48
Point3D
cp8
;
49
Point3D
cp9
;
50
Point3D
cp10
;
51
Point3D
cp11
;
52
Point3D
cp12
;
53
Point3D
cp13
;
54
Point3D
cp14
;
55
Point3D
cp15
;
56
Point3D
cp16
;
58
double
der1X
;
60
double
der1Y
;
62
double
der2X
;
64
double
der2Y
;
66
double
der3X
;
68
double
der3Y
;
70
Point3D
lpoint1
;
72
Point3D
lpoint2
;
74
Point3D
lpoint3
;
76
void
init(
double
x,
double
y );
78
double
calcBernsteinPoly
(
int
n,
int
i,
int
j,
int
k,
double
u,
double
v,
double
w );
79
80
public
:
82
CloughTocherInterpolator
();
84
CloughTocherInterpolator
(
NormVecDecorator
* tin );
86
virtual
~
CloughTocherInterpolator
();
88
virtual
bool
calcNormVec
(
double
x,
double
y,
Vector3D
* result )
override
;
90
virtual
bool
calcPoint
(
double
x,
double
y,
Point3D
* result )
override
;
91
virtual
void
setTriangulation(
NormVecDecorator
* tin );
92
};
93
94
#endif
95
96
97
Generated on Sun May 10 2015 16:33:23 for QGIS API Documentation by
1.8.1.2