Inserts again intermediate migration results to remote repo

This commit is contained in:
torsten committed 2026-10-13 17:42:16 +02:00
1 parent 97a2afb81d
commit c6d5dd1649
21 files changed
+153 -24

No files matched your search

@@ -16,6 +16,12 @@
#include <Graphic.h>
#include <GraphicsOverlay.h>
#include <Multipart.h>
#include <GraphicListModel.h>
#include <AttributeListModel.h>
#include <ImmutablePartCollection.h>
#include <ImmutablePart.h>
#include <SpatialReference.h>
#include <SymbolTypes.h>
// Qt
@@ -87,7 +93,7 @@ AbstractGraphicalObject::~AbstractGraphicalObject()
auto graphicCopy = m_graphic;
QObject::connect (m_graphicsLayer->graphics(), &Esri::ArcGISRuntime::GraphicListModel::graphicRemoved,
QObject::connect (m_graphicsLayer->graphics(), &Esri::ArcGISRuntime::GraphicListModel::itemRemoved,
m_graphic, [idx, graphicCopy](int index)
{
if (idx == index)
@@ -16,6 +16,10 @@
// ESRI
#include <Map.h>
#include <GraphicsOverlay.h>
#include <Graphic.h>
#include <Geometry.h>
#include <Point.h>
#include <AttributeListModel.h>
// Qt
@@ -14,6 +14,10 @@
// ESRI
#include <GraphicsOverlay.h>
#include <PolygonBuilder.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Geometry.h>
#include <Polygon.h>
// Qt
@@ -17,6 +17,12 @@
#include <GeometryEngine.h>
#include <SimpleLineSymbol.h>
#include <SimpleFillSymbol.h>
#include <GeodesicEllipseParameters.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Point.h>
#include <ImmutablePart.h>
#include <ImmutablePartCollection.h>
// Qt
@@ -162,7 +168,7 @@ void GraphicalObjectEllipse::parameterToInternal()
Esri::ArcGISRuntime::Point mapPoint(origin.x(), origin.y(), origin.z(), spatialReference()); // center of ellipse
Esri::ArcGISRuntime::Point normalizedPt =
Esri::ArcGISRuntime::GeometryEngine::normalizeCentralMeridian(mapPoint);
static_cast<Esri::ArcGISRuntime::Point>(Esri::ArcGISRuntime::GeometryEngine::normalizeCentralMeridian(mapPoint));
m_internalParameters->setCenter(normalizedPt);
// m_internalParameters->setCenter(mapPoint);
@@ -269,7 +275,7 @@ bool GraphicalObjectEllipse::createCirclePolygon(const Esri::ArcGISRuntime::Poin
const Esri::ArcGISRuntime::Point &mapPoint = originMap; // center of ellipse
Esri::ArcGISRuntime::Point normalizedPt =
Esri::ArcGISRuntime::GeometryEngine::normalizeCentralMeridian(mapPoint);
static_cast<Esri::ArcGISRuntime::Point>(Esri::ArcGISRuntime::GeometryEngine::normalizeCentralMeridian(mapPoint));
ePara.setCenter(normalizedPt);
// 3, 4
@@ -15,6 +15,12 @@
// ESRI
#include <GraphicsOverlay.h>
#include <ModelSceneSymbol.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Point.h>
// Local
#include <Map/point3D.h>
// Qt
@@ -19,6 +19,13 @@
#include <SimpleFillSymbol.h>
#include <GeoView.h>
#include <GeometryEngine.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Part.h>
#include <PartCollection.h>
#include <Polyline.h>
#include <Polygon.h>
#include <Geometry.h>
// Qt
@@ -19,6 +19,12 @@
#include <SimpleFillSymbol.h>
#include <GeoView.h>
#include <GeometryEngine.h>
#include <SpatialReference.h>
#include <Polyline.h>
#include <Polygon.h>
#include <Graphic.h>
#include <LinearUnit.h>
#include <AngularUnit.h>
// Qt
@@ -220,7 +226,15 @@ bool GraphicalObjectPath::updateViewImpl()
break;
} // switch
const int count = AbstractGraphicalObject::countOfPolygonFirstPart(m_graphic->geometry());
// Cast geometry to Multipart for vertex count check
const Esri::ArcGISRuntime::Geometry geom = m_graphic->geometry();
const Esri::ArcGISRuntime::Multipart* multipart = nullptr;
if (geom.geometryType() == Esri::ArcGISRuntime::GeometryType::Polyline)
multipart = static_cast<const Esri::ArcGISRuntime::Polyline*>(&geom);
else if (geom.geometryType() == Esri::ArcGISRuntime::GeometryType::Polygon)
multipart = static_cast<const Esri::ArcGISRuntime::Polygon*>(&geom);
const int count = multipart ? AbstractGraphicalObject::countOfPolygonFirstPart(*multipart) : 0;
if (count > 1000)
WARNING_LOG(m_logger) << LOGFUNCTION << " debugInfo='" << m_debugInfo << "'"
<< ", huge amount of vertices, countOfPolygonFirstPart = " << count;
@@ -18,6 +18,11 @@
#include <PictureMarkerSymbol.h>
#include <SimpleMarkerSymbol.h>
#include <MultipointBuilder.h>
#include <Point.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <PointCollection.h>
#include <Geometry.h>
// Qt
@@ -16,6 +16,13 @@
#include <PolygonBuilder.h>
#include <MultipartBuilder.h>
#include <ImmutablePartCollection.h>
#include <Polygon.h>
#include <Part.h>
#include <PartCollection.h>
#include <ImmutablePart.h>
#include <Point.h>
#include <Graphic.h>
#include <SpatialReference.h>
// Qt
@@ -15,6 +15,9 @@
// ESRI
#include <GraphicsOverlay.h>
#include <ModelSceneSymbol.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Point.h>
// Qt
@@ -98,7 +101,10 @@ bool GraphicalObjectRendererAttributes::updateViewImpl()
if (m_logger.isDebugEnabled())
qCritical() << " debugInfo='" << m_debugInfo << "'" << ", QVariantMap before unite " << cur;
cur.unite(m_attributeMap.value());
// Qt6: QMap::unite removed, use insert() loop instead
const QVariantMap attrs = m_attributeMap.value();
for (auto it = attrs.begin(); it != attrs.end(); ++it)
cur.insert(it.key(), it.value());
if (m_logger.isDebugEnabled())
qCritical() << " debugInfo='" << m_debugInfo << "'" << ", QVariantMap after unite " << cur;
@@ -16,6 +16,13 @@
// ESRI
#include <GraphicsOverlay.h>
#include <SimpleMarkerSceneSymbol.h>
#include <Graphic.h>
#include <SpatialReference.h>
#include <Point.h>
#include <MapTypes.h>
// Local
#include <Map/point3D.h>
// Qt
@@ -15,6 +15,10 @@
#include <GraphicsOverlay.h>
#include <TextSymbol.h>
#include <PictureMarkerSymbol.h>
#include <SymbolTypes.h>
#include <Graphic.h>
#include <Point.h>
#include <SpatialReference.h>
// Qt
#include <QString>
@@ -20,6 +20,11 @@
// ESRI
#include <Map.h>
#include <GraphicsOverlay.h>
#include <Graphic.h>
#include <GraphicListModel.h>
#include <AttributeListModel.h>
#include <Geometry.h>
#include <PointCollection.h>
#include <PolygonBuilder.h>
#include <PolylineBuilder.h>
#include <MultipointBuilder.h>
@@ -623,6 +623,32 @@ QString toString(const Esri::ArcGISRuntime::GraphicsRenderingMode value)
//------------------------------------------------------------------------------
std::ostream &operator<< (std::ostream &stream,
const Esri::ArcGISRuntime::GeometryDimension value)
{
stream << "EsriGD(" << toString(value) << ")";
return stream;
}
QString toString(const Esri::ArcGISRuntime::GeometryDimension value)
{
switch (value)
{
case Esri::ArcGISRuntime::GeometryDimension::Point:
return QStringLiteral("Point");
case Esri::ArcGISRuntime::GeometryDimension::Curve:
return QStringLiteral("Curve");
case Esri::ArcGISRuntime::GeometryDimension::Area:
return QStringLiteral("Area");
case Esri::ArcGISRuntime::GeometryDimension::Volume:
return QStringLiteral("Volume");
} // switch
Q_ASSERT(false);
return QStringLiteral("Esri-GeometryDimensionERROR");
}
//------------------------------------------------------------------------------
std::ostream &operator<< (std::ostream &stream,
@@ -39,6 +39,7 @@ enum class NetworkCachePolicy;
enum class SceneLocationVisibility;
enum class ViewpointType;
enum class GeometryType;
enum class GeometryDimension;
class Viewpoint;
class Camera;
@@ -112,6 +113,7 @@ SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::Error &value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::ElevationSourceType value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::GraphicsRenderingMode value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::GeometryType value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::GeometryDimension value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::LayerType value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::LicenseStatus value);
SITUATIONMAP_EXPORT QString toString(const Esri::ArcGISRuntime::LoadStatus value);
@@ -130,6 +132,8 @@ SITUATIONMAP_EXPORT std::ostream &operator<< (std::ostream &stream,
const Esri::ArcGISRuntime::ElevationSourceType value);
SITUATIONMAP_EXPORT std::ostream &operator<< (std::ostream &stream,
const Esri::ArcGISRuntime::GraphicsRenderingMode value);
SITUATIONMAP_EXPORT std::ostream &operator<< (std::ostream &stream,
const Esri::ArcGISRuntime::GeometryDimension value);
SITUATIONMAP_EXPORT std::ostream &operator<< (std::ostream &stream,
const Esri::ArcGISRuntime::GeometryType value);
SITUATIONMAP_EXPORT std::ostream &operator<< (std::ostream &stream,
@@ -16,7 +16,9 @@
#include <AnalysisOverlay.h>
#include <AnalysisListModel.h>
#include <AnalysisOverlayListModel.h>
#include <ExploratoryLocationViewshed.h>
#include <Point.h>
// Qt
#include <QDebug>
@@ -27,19 +27,30 @@
#include <GeoprocessingParameter.h>
#include <GeoprocessingParameters.h>
#include <GeoprocessingResult.h>
#include <GeoprocessingTypes.h>
#include <FeatureCollectionTable.h>
#include <Feature.h>
#include <SimpleMarkerSymbol.h>
#include <SimpleFillSymbol.h>
#include <SimpleLineSymbol.h>
#include <SymbolTypes.h>
#include <Point.h>
#include <Polygon.h>
#include <LinearUnit.h>
#include <FeatureIterator.h>
#include <AttributeListModel.h>
#include <GeoprocessingLinearUnit.h>
#include <ImageServiceRaster.h>
#include <RasterLayer.h>
#include <GeometryEngine.h>
#include <GraphicListModel.h>
#include <Field.h>
// Qt
#include <QDebug>
#include <QMessageBox>
#include <QUuid>
namespace SituationMap
@@ -394,7 +405,14 @@ bool ViewshedGeoProcessing::processRasterResults(Esri::ArcGISRuntime::Geoprocess
{
DEBUG_LOG(m_logger) << LOGFUNCTION << " viewshedResultRaster -> url = " << viewshedResultRaster->url().toString();
connect(viewshedResultRaster, &Esri::ArcGISRuntime::GeoprocessingRaster::fetchFileCompleted, this, [this] (QUuid, const QString& filePath) {
QFuture<QString> future = viewshedResultRaster->fetchFileAsync(QStringLiteral("/tmp/viewshedFetched.tif"));
if (!future.isValid())
{
ERROR_LOG(m_logger) << LOGFUNCTION << " m_mapImpl failed";
return false;
}
future.then(this, [this] (const QString& filePath) {
DEBUG_LOG(m_logger) << LOGFUNCTION << " filePath=" << filePath;
Esri::ArcGISRuntime::Raster *raster = new Esri::ArcGISRuntime::Raster(filePath, this);
@@ -441,13 +459,6 @@ bool ViewshedGeoProcessing::processRasterResults(Esri::ArcGISRuntime::Geoprocess
raster->load();
});
QFuture<QString> future = viewshedResultRaster->fetchFileAsync(QStringLiteral("/tmp/viewshedFetched.tif"));
if (!future.isValid())
{
ERROR_LOG(m_logger) << LOGFUNCTION << " m_mapImpl failed";
return false;
}
return true;
}
@@ -484,7 +495,7 @@ void ViewshedGeoProcessing::createExtentGraphic(const Esri::ArcGISRuntime::Point
m_resultsOverlay->graphics()->append(m_extentGraphic);
}
const Esri::ArcGISRuntime::Polygon &circlePoly = Esri::ArcGISRuntime::GeometryEngine::buffer(origin, radius); // circlePoly.parts().part(0).pointCount(); -> 96
const Esri::ArcGISRuntime::Polygon &circlePoly = Esri::ArcGISRuntime::GeometryEngine::buffer(static_cast<const Esri::ArcGISRuntime::Geometry&>(origin), radius); // circlePoly.parts().part(0).pointCount(); -> 96
m_extentGraphic->setGeometry(circlePoly);
@@ -14,6 +14,7 @@
// ESRI
#include <Map.h>
#include <SpatialReference.h>
#include <TaskTypes.h>
// Qt
@@ -23,6 +23,12 @@
#include "Rubberbands/rubberband_factory.h"
// ESRI
#include <LinearUnit.h>
#include <AngularUnit.h>
#include <GeometryEngine.h>
#include <GeodeticDistanceResult.h>
// Qt
@@ -707,8 +713,8 @@ void ViewshedImpl::onSightFanRb3DApply(RB::RubberbandBase *rbnd)
Esri::ArcGISRuntime::Point geom2(coord.x(), coord.y(), sr);
Esri::ArcGISRuntime::GeodeticDistanceResult geodeticDistanceResult = gEngine->distanceGeodetic(geom1, geom2,
Esri::ArcGISRuntime::LinearUnitId::Meters,
Esri::ArcGISRuntime::AngularUnitId::Degrees,
Esri::ArcGISRuntime::LinearUnit(Esri::ArcGISRuntime::LinearUnitId::Meters),
Esri::ArcGISRuntime::AngularUnit(Esri::ArcGISRuntime::AngularUnitId::Degrees),
Esri::ArcGISRuntime::GeodeticCurveType::Geodesic);
viewshedParameter.outerRadius = geodeticDistanceResult.distance();
@@ -860,8 +866,8 @@ void ViewshedImpl::onRb3DApply(RB::RubberbandBase *rbnd)
Esri::ArcGISRuntime::Point geom2(coord.x(), coord.y(), sr);
Esri::ArcGISRuntime::GeodeticDistanceResult geodeticDistanceResult = gEngine->distanceGeodetic(geom1, geom2,
Esri::ArcGISRuntime::LinearUnitId::Meters,
Esri::ArcGISRuntime::AngularUnitId::Degrees,
Esri::ArcGISRuntime::LinearUnit(Esri::ArcGISRuntime::LinearUnitId::Meters),
Esri::ArcGISRuntime::AngularUnit(Esri::ArcGISRuntime::AngularUnitId::Degrees),
Esri::ArcGISRuntime::GeodeticCurveType::Geodesic);
viewshedParameter.outerRadius = geodeticDistanceResult.distance();
@@ -73,8 +73,6 @@ namespace SituationMap { namespace MathUtils
*/
void rasterize(qreal tMin, qreal tMax, QVector<QPointF> & vertexList);
void rasterize(qreal tMin, qreal tMax, QList<QPointF> & vertexList);
protected:
qreal _eps;
@@ -121,9 +121,9 @@ void EsriDictionaryProcessor::startBaseSymbolCodeToPropertyTable()
// A-sync:
// (slot is a pure virtual method)
m_baseSymbolCodeToSymbolPropertyTableWatcher = QtConcurrent::run([this]() {
(void)(m_baseSymbolCodeToSymbolPropertyTableWatcher = QtConcurrent::run([this]() {
return this->processBaseSymbolCodeToPropertyTable();
});
}));
// Sync: // processBaseSymbolCodeToPropertyTable();
@@ -137,9 +137,9 @@ void EsriDictionaryProcessor::startModifierTable()
// A-sync:
// (slot is a pure virtual method)
m_modifierTableWatcher = QtConcurrent::run([this]() {
(void)(m_modifierTableWatcher = QtConcurrent::run([this]() {
return this->processModifierTable();
});
}));
// Sync: // processModifierTable();