Initial commit

This commit is contained in:
torsten committed 2026-08-13 18:33:10 +02:00
commit b7d90b9afe
16245 files changed
+3396666

No files matched your search

+88
View File
@@ -0,0 +1,88 @@
/**
* @RDE_HEADER@
* Interface-Implementation of Map
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
// Own
#include "situation_map_types.h"
// ESRI
// Qt
#include <QString>
namespace Esri
{
namespace ArcGISRuntime
{
class Point;
}
}
namespace SituationMap
{
/**
* @brief The CoordTranslationFunctor is a base class translating between
* the GeographicCoordinats (WGS84 - EPSG:4326) and the
* EsriMap working on map coordinates.
*
* Forward (geographicToMap):
* Geo (lon, lat) to map.
*
* Backward (mapToGeographic):
* Map to Geo (lon, lat).
*/
class CoordTranslationFunctor
{
public:
/*! \name Construction, Destruction */
//@{
explicit CoordTranslationFunctor() = default; ///< Contructor
virtual ~CoordTranslationFunctor() = default; ///< Destructor
//@}
/*! \name Complete translation */
//@{
Q_REQUIRED_RESULT virtual QPointF geographicToMap(const double lon, const double lat) const = 0; ///< Forward: geographic coord to mapCoord, in radian
Q_REQUIRED_RESULT virtual QPointF mapToGeographic(const double x, const double y) const = 0; ///< Backward: mapCoord to geographic Coord
Q_REQUIRED_RESULT virtual QPointF geographicToMap(const QPointF &coord) const = 0; ///< Forward: geographic coord to mapCoord
Q_REQUIRED_RESULT virtual QPointF mapToGeographic(const QPointF &coord) const = 0; ///< Backward: mapCoord to geographic Coord
Q_REQUIRED_RESULT virtual QPointF geographicToMap(const Esri::ArcGISRuntime::Point &coord) const = 0; ///< Forward: geographic coord to mapCoord
Q_REQUIRED_RESULT virtual QPointF mapToGeographic(const Esri::ArcGISRuntime::Point &coord) const = 0; ///< Backward: mapCoord to geographic Coord
Q_REQUIRED_RESULT virtual Point3D geographicToMap(const Point3D &point3D) const = 0; ///< Forward: geographic coord to mapCoord
Q_REQUIRED_RESULT virtual Point3D mapToGeographic(const Point3D &point3D) const = 0; ///< Backward: mapCoord to geographic Coord
Q_REQUIRED_RESULT virtual bool mapIsGeographic() const = 0;
virtual void geographicToUtm(const double referenceLon, QList<QPointF> &points) const = 0; ///< tanslate to proper utm coordinate system
virtual void utmToGeographic(const double referenceLon, QList<QPointF> &points) const = 0; ///< translate back to goegraphic coordiante system
//@}
/*! \name For statistic or tests */
//@{
virtual int projectionCounter() const = 0;
virtual void resetProjectionCounter() = 0;
//@}
};
//------------------------------------------------------------------------------
} // namespace SituationMap