diff options
Diffstat (limited to 'src/location/quickmapitems/qdeclarativecirclemapitem.cpp')
-rw-r--r-- | src/location/quickmapitems/qdeclarativecirclemapitem.cpp | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/src/location/quickmapitems/qdeclarativecirclemapitem.cpp b/src/location/quickmapitems/qdeclarativecirclemapitem.cpp index 727e2eb0..0e45d439 100644 --- a/src/location/quickmapitems/qdeclarativecirclemapitem.cpp +++ b/src/location/quickmapitems/qdeclarativecirclemapitem.cpp @@ -455,7 +455,6 @@ QDeclarativeCircleMapItemPrivate::~QDeclarativeCircleMapItemPrivate() QDeclarativeCircleMapItemPrivateCPU::QDeclarativeCircleMapItemPrivateCPU(QDeclarativeCircleMapItem &circle) : QDeclarativeCircleMapItemPrivate(circle) { -#ifdef MAPITEMS_USE_SHAPES m_shape = new QQuickShape(&m_circle); m_shape->setObjectName("_qt_map_item_shape"); m_shape->setZ(-1); @@ -469,14 +468,11 @@ QDeclarativeCircleMapItemPrivateCPU::QDeclarativeCircleMapItemPrivateCPU(QDeclar auto shapePaths = m_shape->data(); shapePaths.append(&shapePaths, m_shapePath); -#endif } QDeclarativeCircleMapItemPrivateCPU::~QDeclarativeCircleMapItemPrivateCPU() { -#ifdef MAPITEMS_USE_SHAPES delete m_shape; -#endif } bool QDeclarativeCircleMapItemPrivate::preserveCircleGeometry (QList<QDoubleVector2D> &path, @@ -634,11 +630,7 @@ void QDeclarativeCircleMapItemPrivateCPU::updatePolish() m_geometry.clear(); m_circle.setWidth(0); m_circle.setHeight(0); -#ifdef MAPITEMS_USE_SHAPES m_shape->setVisible(false); -#else - m_borderGeometry.clear(); -#endif return; } @@ -666,49 +658,6 @@ void QDeclarativeCircleMapItemPrivateCPU::updatePolish() m_geometry.updateSourcePoints(*m_circle.map(), circlePath); } -#ifndef MAPITEMS_USE_SHAPES - if (!invertedCircle) - m_geometry.updateScreenPoints(*m_circle.map(), m_circle.m_border.width()); - - m_borderGeometry.clear(); - QList<QGeoMapItemGeometry *> geoms; - geoms << &m_geometry; - - if (m_circle.m_border.color() != Qt::transparent && m_circle.m_border.width() > 0) { - QList<QDoubleVector2D> closedPath = circlePath; - closedPath << closedPath.first(); - - if (invertedCircle) { - closedPath = m_circlePath; - closedPath << closedPath.first(); - std::reverse(closedPath.begin(), closedPath.end()); - } - - m_borderGeometry.setPreserveGeometry(true, m_leftBound); - m_borderGeometry.setPreserveGeometry(preserve, m_leftBound); - - // Use srcOrigin_ from fill geometry after clipping to ensure that - // translateToCommonOrigin won't fail. - const QGeoCoordinate &geometryOrigin = m_geometry.origin(); - - m_borderGeometry.srcPoints_.clear(); - m_borderGeometry.srcPointTypes_.clear(); - - QDoubleVector2D borderLeftBoundWrapped; - QList<QList<QDoubleVector2D >> clippedPaths = m_borderGeometry.clipPath(*m_circle.map(), - closedPath, borderLeftBoundWrapped); - if (clippedPaths.size()) { - borderLeftBoundWrapped = p.geoToWrappedMapProjection(geometryOrigin); - m_borderGeometry.pathToScreen(*m_circle.map(), clippedPaths, borderLeftBoundWrapped); - m_borderGeometry.updateScreenPoints(*m_circle.map(), m_circle.m_border.width()); - geoms << &m_borderGeometry; - } else { - m_borderGeometry.clear(); - } - } -#endif - -#ifdef MAPITEMS_USE_SHAPES m_circle.setShapeTriangulationScale(m_shape, m_geometry.maxCoord()); const bool hasBorder = m_circle.m_border.color().alpha() != 0 && m_circle.m_border.width() > 0; @@ -731,25 +680,12 @@ void QDeclarativeCircleMapItemPrivateCPU::updatePolish() m_shape->setVisible(true); m_circle.setPositionOnMap(m_geometry.origin(), -1 * bb.topLeft() + QPointF(borderWidth, borderWidth)); -#else - const QRectF combined = QGeoMapItemGeometry::translateToCommonOrigin(geoms); - if (invertedCircle || !preserve) { - m_circle.setWidth(combined.width()); - m_circle.setHeight(combined.height()); - } else { - m_circle.setWidth(combined.width() + 2 * m_circle.m_border.width()); // ToDo: Fix this! - m_circle.setHeight(combined.height() + 2 * m_circle.m_border.width()); - } - // No offsetting here, even in normal case, because first point offset is already translated - m_circle.setPositionOnMap(m_geometry.origin(), m_geometry.firstPointOffset()); -#endif } QSGNode *QDeclarativeCircleMapItemPrivateCPU::updateMapItemPaintNode(QSGNode *oldNode, QQuickItem::UpdatePaintNodeData *data) { Q_UNUSED(data); -#ifdef MAPITEMS_USE_SHAPES delete oldNode; if (m_geometry.isScreenDirty() || m_circle.m_dirtyMaterial) { m_geometry.setPreserveGeometry(false); @@ -757,38 +693,11 @@ QSGNode *QDeclarativeCircleMapItemPrivateCPU::updateMapItemPaintNode(QSGNode *ol m_circle.m_dirtyMaterial = false; } return nullptr; -#else - if (!m_node || !oldNode) { // Apparently the QSG might delete the nodes if they become invisible - m_node = new MapPolygonNode(); - if (oldNode) { - delete oldNode; - oldNode = nullptr; - } - } else { - m_node = static_cast<MapPolygonNode *>(oldNode); - } - - //TODO: update only material - if (m_geometry.isScreenDirty() || m_borderGeometry.isScreenDirty() || m_circle.m_dirtyMaterial) { - m_node->update(m_circle.m_color, m_circle.m_border.color(), &m_geometry, &m_borderGeometry); - m_geometry.setPreserveGeometry(false); - m_borderGeometry.setPreserveGeometry(false); - m_geometry.markClean(); - m_borderGeometry.markClean(); - m_circle.m_dirtyMaterial = false; - } - - return m_node; -#endif } bool QDeclarativeCircleMapItemPrivateCPU::contains(const QPointF &point) const { -#ifdef MAPITEMS_USE_SHAPES return m_shape->contains(m_circle.mapToItem(m_shape, point)); -#else - return (m_geometry.contains(point) || m_borderGeometry.contains(point)); -#endif } QT_END_NAMESPACE |