Marble
Go to the documentation of this file.
8 #ifndef MARBLE_ABSTRACTPROJECTION_H
9 #define MARBLE_ABSTRACTPROJECTION_H
21 #include "GeoDataCoordinates.h"
22 #include "marble_export.h"
34 static const int tessellationPrecision = 10;
35 static const int latLonAltBoxSamplingRate = 4;
37 class GeoDataLineString;
38 class GeoDataLatLonAltBox;
40 class AbstractProjectionPrivate;
60 enum PreservationType {
78 virtual QString name()
const = 0;
84 virtual QString description()
const = 0;
89 virtual QIcon icon()
const = 0;
97 virtual qreal maxValidLat()
const;
104 qreal maxLat()
const;
105 void setMaxLat( qreal maxLat );
113 virtual qreal minValidLat()
const;
120 qreal minLat()
const;
121 void setMinLat( qreal minLat );
128 virtual bool repeatableX()
const;
135 virtual bool traversablePoles()
const;
136 virtual bool traversableDateLine()
const;
138 virtual SurfaceType surfaceType()
const = 0;
140 virtual PreservationType preservationType()
const;
147 virtual bool isOrientedNormal()
const;
155 virtual bool isClippedToSphere()
const;
157 virtual qreal clippingRadius()
const;
171 bool screenCoordinates(
const qreal lon,
const qreal lat,
173 qreal& x, qreal& y )
const;
192 bool &globeHidesPoint )
const = 0;
197 qreal &x, qreal &y )
const;
218 qreal *x, qreal &y,
int &pointRepeatNum,
220 bool &globeHidesPoint )
const = 0;
237 virtual bool geoCoordinates(
const int x,
const int y,
239 qreal& lon, qreal& lat,
254 virtual bool mapCoversViewport(
const ViewportParams *viewport )
const = 0;
A 3d point representation.
A class that defines a 3D bounding box for geographic data.
A base class for all projections in Marble.
A LineString that allows to store a contiguous set of line segments.
A public class that controls what is visible in the viewport of a Marble map.
Binds a QML item to a specific geodetic location in screen coordinates.
Unit
enum used constructor to specify the units used
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Wed Sep 27 2023 04:09:05 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.