Isis 3 Programmer Reference
PixelFOV.h
1#ifndef PixelFOV_h
2#define PixelFOV_h
8/* SPDX-License-Identifier: CC0-1.0 */
9#include <QList>
10#include <QPointF>
11
12namespace Isis {
13 class Camera;
14
36 class PixelFOV {
37 public:
38 // Constructors
39 PixelFOV();
40 PixelFOV(const PixelFOV &other);
41 ~PixelFOV();
42
43 QList< QList<QPointF> > latLonVertices(Camera &camera,
44 const double sample,
45 const double line,
46 const int numIfovs = 1) const;
47
48 private:
49 QList<QPointF> instantaneousFov(Camera &camera) const;
50 QList<QPointF> envelope(QList<QPointF> vertices) const;
51 QList< QList<QPointF> > splitIfov(QList<QPointF> vertices) const;
52
53 };
54};
55
56#endif
57
This class defines a field of view.
Definition PixelFOV.h:36
~PixelFOV()
Destroys a PixelFOV object/.
Definition PixelFOV.cpp:41
QList< QPointF > instantaneousFov(Camera &camera) const
Compute the instantaneous fov for the pixel and time that the input camera is set to.
Definition PixelFOV.cpp:188
QList< QList< QPointF > > splitIfov(QList< QPointF > vertices) const
Split an instantaneous field of view across the 360/0 boundary.
Definition PixelFOV.cpp:268
QList< QList< QPointF > > latLonVertices(Camera &camera, const double sample, const double line, const int numIfovs=1) const
Produces an fov for the given line sample.
Definition PixelFOV.cpp:67
PixelFOV()
Constructs an empty PixelFOV object.
Definition PixelFOV.cpp:33
QList< QPointF > envelope(QList< QPointF > vertices) const
Produces a list of boundary points for the convex hull containing the input vertices.
Definition PixelFOV.cpp:231
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16