QGIS API Documentation
4.3.0-Master (52aa6503bed)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
analysis
interpolation
LinTriangleInterpolator.h
Go to the documentation of this file.
1
/***************************************************************************
2
LinTriangleInterpolator.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 LINTRIANGLEINTERPOLATOR_H
18
#define LINTRIANGLEINTERPOLATOR_H
19
20
#include "
TriangleInterpolator.h
"
21
#include "qgis_analysis.h"
22
#include "
qgsdualedgetriangulation.h
"
23
24
#define SIP_NO_FILE
25
31
class
ANALYSIS_EXPORT
LinTriangleInterpolator
:
public
TriangleInterpolator
32
{
33
public
:
34
LinTriangleInterpolator
() =
default
;
36
LinTriangleInterpolator
(
QgsDualEdgeTriangulation
*tin );
38
bool
calcNormVec
(
double
x,
double
y,
QgsPoint
&result
SIP_OUT
)
override
;
39
bool
calcPoint
(
double
x,
double
y,
QgsPoint
&result
SIP_OUT
)
override
;
41
virtual
QgsDualEdgeTriangulation
*
getTriangulation
()
const
;
43
virtual
void
setTriangulation
(
QgsDualEdgeTriangulation
*tin );
44
45
46
protected
:
47
QgsDualEdgeTriangulation
*
mTIN
=
nullptr
;
49
virtual
bool
calcFirstDerX
(
double
x,
double
y,
Vector3D
*result
SIP_OUT
);
51
virtual
bool
calcFirstDerY
(
double
x,
double
y,
Vector3D
*result
SIP_OUT
);
52
};
53
54
#ifndef SIP_RUN
55
56
inline
LinTriangleInterpolator::LinTriangleInterpolator
(
QgsDualEdgeTriangulation
*tin )
57
:
mTIN
( tin )
58
{}
59
60
inline
QgsDualEdgeTriangulation
*
LinTriangleInterpolator::getTriangulation
()
const
61
{
62
return
mTIN
;
63
}
64
65
inline
void
LinTriangleInterpolator::setTriangulation
(
QgsDualEdgeTriangulation
*tin )
66
{
67
mTIN
= tin;
68
}
69
70
#endif
71
#endif
TriangleInterpolator.h
LinTriangleInterpolator::LinTriangleInterpolator
LinTriangleInterpolator()=default
LinTriangleInterpolator::calcFirstDerX
virtual bool calcFirstDerX(double x, double y, Vector3D *result)
Calculates the first derivative with respect to x for a linear surface and assigns it to vec.
Definition
LinTriangleInterpolator.cpp:25
LinTriangleInterpolator::calcFirstDerY
virtual bool calcFirstDerY(double x, double y, Vector3D *result)
Calculates the first derivative with respect to y for a linear surface and assigns it to vec.
Definition
LinTriangleInterpolator.cpp:54
LinTriangleInterpolator::mTIN
QgsDualEdgeTriangulation * mTIN
Definition
LinTriangleInterpolator.h:47
LinTriangleInterpolator::setTriangulation
virtual void setTriangulation(QgsDualEdgeTriangulation *tin)
Sets a Triangulation.
Definition
LinTriangleInterpolator.h:65
LinTriangleInterpolator::getTriangulation
virtual QgsDualEdgeTriangulation * getTriangulation() const
Returns a pointer to the current Triangulation object.
Definition
LinTriangleInterpolator.h:60
QgsDualEdgeTriangulation
DualEdgeTriangulation is an implementation of a triangulation class based on the dual edge data struc...
Definition
qgsdualedgetriangulation.h:49
QgsPoint
Point geometry type, with support for z-dimension and m-values.
Definition
qgspoint.h:53
TriangleInterpolator
An interface for interpolator classes for triangulations.
Definition
TriangleInterpolator.h:35
TriangleInterpolator::calcNormVec
virtual bool calcNormVec(double x, double y, QgsPoint &result)=0
Calculates the normal vector and assigns it to vec.
TriangleInterpolator::calcPoint
virtual bool calcPoint(double x, double y, QgsPoint &result)=0
Performs a linear interpolation in a triangle and assigns the x-,y- and z-coordinates to point.
Vector3D
Represents a 3D-Vector, capable of storing x, y and z-coordinates in double values.
Definition
Vector3D.h:37
SIP_OUT
#define SIP_OUT
Definition
qgis_sip.h:57
qgsdualedgetriangulation.h
Generated on
for QGIS API Documentation by
1.17.0