commit 1aff7335d004bc410eb61e1436ee7648716f9319 Author: Juergen E. Fischer Date: Mon Mar 9 09:27:27 2015 +0100 fix arm build diff --git a/src/app/qgsdecorationgrid.cpp b/src/app/qgsdecorationgrid.cpp index ba2f8c0..ba7735d 100644 --- a/src/app/qgsdecorationgrid.cpp +++ b/src/app/qgsdecorationgrid.cpp @@ -217,14 +217,14 @@ void QgsDecorationGrid::render( QPainter * p ) // p->setPen( mGridPen ); - QList< QPair< double, QLineF > > verticalLines; + QList< QPair< qreal, QLineF > > verticalLines; yGridLines( verticalLines ); - QList< QPair< double, QLineF > > horizontalLines; + QList< QPair< qreal, QLineF > > horizontalLines; xGridLines( horizontalLines ); //QgsDebugMsg( QString("grid has %1 vertical and %2 horizontal lines").arg( verticalLines.size() ).arg( horizontalLines.size() ) ); - QList< QPair< double, QLineF > >::const_iterator vIt = verticalLines.constBegin(); - QList< QPair< double, QLineF > >::const_iterator hIt = horizontalLines.constBegin(); + QList< QPair< qreal, QLineF > >::const_iterator vIt = verticalLines.constBegin(); + QList< QPair< qreal, QLineF > >::const_iterator hIt = horizontalLines.constBegin(); //simpler approach: draw vertical lines first, then horizontal ones if ( mGridStyle == QgsDecorationGrid::Line ) @@ -338,7 +338,7 @@ void QgsDecorationGrid::render( QPainter * p ) } } -void QgsDecorationGrid::drawCoordinateAnnotations( QPainter* p, const QList< QPair< double, QLineF > >& hLines, const QList< QPair< double, QLineF > >& vLines ) +void QgsDecorationGrid::drawCoordinateAnnotations( QPainter* p, const QList< QPair< qreal, QLineF > >& hLines, const QList< QPair< qreal, QLineF > >& vLines ) { if ( !p ) { @@ -346,7 +346,7 @@ void QgsDecorationGrid::drawCoordinateAnnotations( QPainter* p, const QList< QPa } QString currentAnnotationString; - QList< QPair< double, QLineF > >::const_iterator it = hLines.constBegin(); + QList< QPair< qreal, QLineF > >::const_iterator it = hLines.constBegin(); for ( ; it != hLines.constEnd(); ++it ) { currentAnnotationString = QString::number( it->first, 'f', mGridAnnotationPrecision ); @@ -566,7 +566,7 @@ QPolygonF canvasExtent() return poly; } -int QgsDecorationGrid::xGridLines( QList< QPair< double, QLineF > >& lines ) const +int QgsDecorationGrid::xGridLines( QList< QPair< qreal, QLineF > >& lines ) const { // prepare horizontal lines lines.clear(); @@ -612,7 +612,7 @@ int QgsDecorationGrid::xGridLines( QList< QPair< double, QLineF > >& lines ) con return 0; } -int QgsDecorationGrid::yGridLines( QList< QPair< double, QLineF > >& lines ) const +int QgsDecorationGrid::yGridLines( QList< QPair< qreal, QLineF > >& lines ) const { // prepare vertical lines diff --git a/src/app/qgsdecorationgrid.h b/src/app/qgsdecorationgrid.h index 22f4549..3ad7ebf 100644 --- a/src/app/qgsdecorationgrid.h +++ b/src/app/qgsdecorationgrid.h @@ -199,7 +199,7 @@ class APP_EXPORT QgsDecorationGrid: public QgsDecorationItem @param p drawing painter @param hLines horizontal coordinate lines in item coordinates @param vLines vertical coordinate lines in item coordinates*/ - void drawCoordinateAnnotations( QPainter* p, const QList< QPair< double, QLineF > >& hLines, const QList< QPair< double, QLineF > >& vLines ); + void drawCoordinateAnnotations( QPainter* p, const QList< QPair< qreal, QLineF > >& hLines, const QList< QPair< qreal, QLineF > >& vLines ); void drawCoordinateAnnotation( QPainter* p, const QPointF& pos, QString annotationString ); /**Draws a single annotation @param p drawing painter @@ -209,10 +209,10 @@ class APP_EXPORT QgsDecorationGrid: public QgsDecorationItem void drawAnnotation( QPainter* p, const QPointF& pos, int rotation, const QString& annotationText ); /**Returns the grid lines with associated coordinate value @return 0 in case of success*/ - int xGridLines( QList< QPair< double, QLineF > >& lines ) const; + int xGridLines( QList< QPair< qreal, QLineF > >& lines ) const; /**Returns the grid lines for the y-coordinates. Not vertical in case of rotation @return 0 in case of success*/ - int yGridLines( QList< QPair< double, QLineF > >& lines ) const; + int yGridLines( QList< QPair< qreal, QLineF > >& lines ) const; /**Returns the item border of a point (in item coordinates)*/ Border borderForLineCoord( const QPointF& point, QPainter* p ) const; diff --git a/src/app/qgsmapmouseevent.cpp b/src/app/qgsmapmouseevent.cpp index 997aaa0..631c750 100644 --- a/src/app/qgsmapmouseevent.cpp +++ b/src/app/qgsmapmouseevent.cpp @@ -86,8 +86,7 @@ void QgsMapMouseEvent::snapPoint() QPoint QgsMapMouseEvent::mapToPixelCoordinates( QgsMapCanvas* canvas, const QgsPoint& point ) { - double x = point.x(); - double y = point.y(); + qreal x = point.x(), y = point.y(); canvas->mapSettings().mapToPixel().transformInPlace( x, y ); diff --git a/src/core/composer/qgscomposermapgrid.cpp b/src/core/composer/qgscomposermapgrid.cpp index 7d790e6..7656be2 100644 --- a/src/core/composer/qgscomposermapgrid.cpp +++ b/src/core/composer/qgscomposermapgrid.cpp @@ -1838,7 +1838,7 @@ bool QgsComposerMapGrid::shouldShowDivisionForDisplayMode( const QgsComposerMapG || ( mode == QgsComposerMapGrid::LongitudeOnly && coordinate == QgsComposerMapGrid::Longitude ); } -bool sortByDistance( const QPair& a, const QPair& b ) +bool sortByDistance( const QPair& a, const QPair& b ) { return a.first < b.first; } @@ -1885,7 +1885,7 @@ QgsComposerMapGrid::BorderSide QgsComposerMapGrid::borderForLineCoord( const QPo } //otherwise, guess side based on closest map side to point - QList< QPair > distanceToSide; + QList< QPair > distanceToSide; distanceToSide << qMakePair( p.x(), QgsComposerMapGrid::Left ); distanceToSide << qMakePair( mComposerMap->rect().width() - p.x(), QgsComposerMapGrid::Right ); distanceToSide << qMakePair( p.y(), QgsComposerMapGrid::Top ); diff --git a/src/core/qgsgeometry.cpp b/src/core/qgsgeometry.cpp index 81753c4..ab7281a 100644 --- a/src/core/qgsgeometry.cpp +++ b/src/core/qgsgeometry.cpp @@ -4679,7 +4679,7 @@ bool QgsGeometry::convertToMultiType() void QgsGeometry::transformVertex( QgsWkbPtr &wkbPtr, const QTransform& trans, bool hasZValue ) { - double x, y, rotated_x, rotated_y; + qreal x, y, rotated_x, rotated_y; QgsWkbPtr tmp = wkbPtr; tmp >> x >> y; diff --git a/src/core/qgsgeometry.h b/src/core/qgsgeometry.h index 46f4a7f..36d23ac 100644 --- a/src/core/qgsgeometry.h +++ b/src/core/qgsgeometry.h @@ -686,12 +686,18 @@ class CORE_EXPORT QgsWkbPtr inline const QgsWkbPtr &operator>>( unsigned int &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } inline const QgsWkbPtr &operator>>( char &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } inline const QgsWkbPtr &operator>>( QGis::WkbType &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } +#ifdef QT_ARCH_ARM + inline const QgsWkbPtr &operator>>( qreal &v ) const { double d; memcpy( &d, mP, sizeof( d ) ); mP += sizeof( d ); v=d; return *this; } +#endif inline QgsWkbPtr &operator<<( const double &v ) { memcpy( mP, &v, sizeof( v ) ); mP += sizeof( v ); return *this; } inline QgsWkbPtr &operator<<( const int &v ) { memcpy( mP, &v, sizeof( v ) ); mP += sizeof( v ); return *this; } inline QgsWkbPtr &operator<<( const unsigned int &v ) { memcpy( mP, &v, sizeof( v ) ); mP += sizeof( v ); return *this; } inline QgsWkbPtr &operator<<( const char &v ) { memcpy( mP, &v, sizeof( v ) ); mP += sizeof( v ); return *this; } inline QgsWkbPtr &operator<<( const QGis::WkbType &v ) { memcpy( mP, &v, sizeof( v ) ); mP += sizeof( v ); return *this; } +#ifdef QT_ARCH_ARM + inline QgsWkbPtr &operator<<( const qreal &v ) { double d = v; memcpy( mP, &d, sizeof( d ) ); mP += sizeof( d ); return *this; } +#endif inline void operator+=( int n ) { mP += n; } @@ -710,6 +716,9 @@ class CORE_EXPORT QgsConstWkbPtr inline const QgsConstWkbPtr &operator>>( unsigned int &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } inline const QgsConstWkbPtr &operator>>( char &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } inline const QgsConstWkbPtr &operator>>( QGis::WkbType &v ) const { memcpy( &v, mP, sizeof( v ) ); mP += sizeof( v ); return *this; } +#ifdef QT_ARCH_ARM + inline const QgsConstWkbPtr &operator>>( qreal &v ) const { double d; memcpy( &d, mP, sizeof( d ) ); mP += sizeof( d ); v=d; return *this; } +#endif inline void operator+=( int n ) { mP += n; } diff --git a/src/core/qgsmaptopixel.cpp b/src/core/qgsmaptopixel.cpp index 16ade54..08e06e4 100644 --- a/src/core/qgsmaptopixel.cpp +++ b/src/core/qgsmaptopixel.cpp @@ -114,22 +114,18 @@ void QgsMapToPixel::updateMatrix() mMatrix = QTransform::fromTranslate( cx, cy ) .rotate( rotation ) .scale( 1 / mMapUnitsPerPixel, -1 / mMapUnitsPerPixel ) - .translate( -xCenter, -yCenter ) - ; + .translate( -xCenter, -yCenter ); } -QgsPoint QgsMapToPixel::toMapPoint( double x, double y ) const +QgsPoint QgsMapToPixel::toMapPoint( qreal x, qreal y ) const { bool invertible; QTransform matrix = mMatrix.inverted( &invertible ); assert( invertible ); - double mx, my; + qreal mx, my; matrix.map( x, y, &mx, &my ); - QgsPoint ret( mx, my ); - //QgsDebugMsg(QString("XXX toMapPoint x:%1 y:%2 -> x:%3 y:%4").arg(x).arg(y).arg(mx).arg(my)); - - return ret; + return QgsPoint( mx, my ); } QgsPoint QgsMapToPixel::toMapCoordinates( QPoint p ) const @@ -232,42 +228,34 @@ QString QgsMapToPixel::showParameters() const << " rotation: " << mRotation << " size: " << mWidth << "x" << mHeight; return rep; - } - -QgsPoint QgsMapToPixel::transform( double x, double y ) const +QgsPoint QgsMapToPixel::transform( qreal x, qreal y ) const { transformInPlace( x, y ); return QgsPoint( x, y ); } -QgsPoint QgsMapToPixel::transform( const QgsPoint& p ) const +QgsPoint QgsMapToPixel::transform( const QgsPoint &p ) const { - double dx = p.x(); - double dy = p.y(); - transformInPlace( dx, dy ); - + qreal x = p.x(), y = p.y(); + transformInPlace( x, y ); // QgsDebugMsg(QString("Point to pixel...X : %1-->%2, Y: %3 -->%4").arg(p.x()).arg(dx).arg(p.y()).arg(dy)); - return QgsPoint( dx, dy ); + return QgsPoint( x, y ); } -void QgsMapToPixel::transform( QgsPoint* p ) const +void QgsMapToPixel::transform( QgsPoint *p ) const { - double x = p->x(); - double y = p->y(); + qreal x = p->x(), y = p->y(); transformInPlace( x, y ); - -#ifdef QGISDEBUG // QgsDebugMsg(QString("Point to pixel...X : %1-->%2, Y: %3 -->%4").arg(p->x()).arg(x).arg(p->y()).arg(y)); -#endif p->set( x, y ); } -void QgsMapToPixel::transformInPlace( qreal& x, qreal& y ) const +void QgsMapToPixel::transformInPlace( qreal &x, qreal &y ) const { // Map 2 Pixel - double mx, my; + qreal mx, my; mMatrix.map( x, y, &mx, &my ); //QgsDebugMsg(QString("XXX transformInPlace X : %1-->%2, Y: %3 -->%4").arg(x).arg(mx).arg(y).arg(my)); x = mx; y = my; diff --git a/src/core/qgsmaptopixel.h b/src/core/qgsmaptopixel.h index c11fb90..081e5d1 100644 --- a/src/core/qgsmaptopixel.h +++ b/src/core/qgsmaptopixel.h @@ -74,7 +74,7 @@ class CORE_EXPORT QgsMapToPixel * @param y y coordinate of point to transform * @return QgsPoint in device coordinates */ - QgsPoint transform( double x, double y ) const; + QgsPoint transform( qreal x, qreal y ) const; /*! Transform device coordinates to map (world) coordinates * @param x x coordinate of point to be converted to map cooordinates * @param y y coordinate of point to be converted to map cooordinates @@ -110,7 +110,7 @@ class CORE_EXPORT QgsMapToPixel */ QgsPoint toMapCoordinates( QPoint p ) const; - QgsPoint toMapPoint( double x, double y ) const; + QgsPoint toMapPoint( qreal x, qreal y ) const; /*! Set map units per pixel * @param mapUnitsPerPixel Map units per pixel diff --git a/src/core/qgspallabeling.cpp b/src/core/qgspallabeling.cpp index 768a511..b5ecc8c 100644 --- a/src/core/qgspallabeling.cpp +++ b/src/core/qgspallabeling.cpp @@ -2105,7 +2105,7 @@ void QgsPalLayerSettings::registerFeature( QgsFeature& f, const QgsRenderContext QTransform t = QTransform::fromTranslate( center.x(), center.y() ); t.rotate( -m2p.mapRotation() ); t.translate( -center.x(), -center.y() ); - double xPosR, yPosR; + qreal xPosR, yPosR; t.map( xPos, yPos, &xPosR, &yPosR ); xPos = xPosR; yPos = yPosR; } diff --git a/src/core/qgspointlocator.cpp b/src/core/qgspointlocator.cpp index 534e7da..4bea360 100644 --- a/src/core/qgspointlocator.cpp +++ b/src/core/qgspointlocator.cpp @@ -268,6 +268,8 @@ struct _CohenSutherland y = y0 + ( y1 - y0 ) * ( mRect.xMinimum() - x0 ) / ( x1 - x0 ); x = mRect.xMinimum(); } + else + break; // Now we move outside point to intersection point to clip // and get ready for next pass. @@ -536,13 +538,13 @@ class QgsPointLocator_DumpTree : public SpatialIndex::IQueryStrategy if ( !n ) return; - qDebug( "NODE: %ld", n->getIdentifier() ); + QgsDebugMsg( QString( "NODE: %1" ).arg( n->getIdentifier() ) ); if ( n->getLevel() > 0 ) { // inner nodes for ( uint32_t cChild = 0; cChild < n->getChildrenCount(); cChild++ ) { - qDebug( "- CH: %ld", n->getChildIdentifier( cChild ) ); + QgsDebugMsg( QString( "- CH: %1" ).arg( n->getChildIdentifier( cChild ) ) ); ids.push( n->getChildIdentifier( cChild ) ); } } @@ -551,7 +553,7 @@ class QgsPointLocator_DumpTree : public SpatialIndex::IQueryStrategy // leaves for ( uint32_t cChild = 0; cChild < n->getChildrenCount(); cChild++ ) { - qDebug( "- L: %ld", n->getChildIdentifier( cChild ) ); + QgsDebugMsg( QString( "- L: %1" ).arg( n->getChildIdentifier( cChild ) ) ); } } diff --git a/src/core/symbology-ng/qgsrendererv2.cpp b/src/core/symbology-ng/qgsrendererv2.cpp index 73b4f22..6e114ca 100644 --- a/src/core/symbology-ng/qgsrendererv2.cpp +++ b/src/core/symbology-ng/qgsrendererv2.cpp @@ -39,10 +39,7 @@ const unsigned char* QgsFeatureRendererV2::_getPoint( QPointF& pt, QgsRenderCont { QgsConstWkbPtr wkbPtr( wkb + 1 ); unsigned int wkbType; - wkbPtr >> wkbType; - - double x, y; - wkbPtr >> x >> y; + wkbPtr >> wkbType >> pt.rx() >> pt.ry(); if ( wkbType == QGis::WKBPoint25D ) wkbPtr += sizeof( double ); @@ -50,12 +47,11 @@ const unsigned char* QgsFeatureRendererV2::_getPoint( QPointF& pt, QgsRenderCont if ( context.coordinateTransform() ) { double z = 0; // dummy variable for coordiante transform - context.coordinateTransform()->transformInPlace( x, y, z ); + context.coordinateTransform()->transformInPlace( pt.rx(), pt.ry(), z ); } - context.mapToPixel().transformInPlace( x, y ); + context.mapToPixel().transformInPlace( pt.rx(), pt.ry() ); - pt = QPointF( x, y ); return wkbPtr; } @@ -65,7 +61,7 @@ const unsigned char* QgsFeatureRendererV2::_getLineString( QPolygonF& pts, QgsRe unsigned int wkbType, nPoints; wkbPtr >> wkbType >> nPoints; - bool hasZValue = ( wkbType == QGis::WKBLineString25D ); + bool hasZValue = wkbType == QGis::WKBLineString25D; double x, y; const QgsCoordinateTransform* ct = context.coordinateTransform(); diff --git a/src/gui/qgsmapcanvasitem.cpp b/src/gui/qgsmapcanvasitem.cpp index c0dd3ec..763f340 100644 --- a/src/gui/qgsmapcanvasitem.cpp +++ b/src/gui/qgsmapcanvasitem.cpp @@ -63,7 +63,7 @@ QgsPoint QgsMapCanvasItem::toMapCoordinates( const QPoint& point ) const QPointF QgsMapCanvasItem::toCanvasCoordinates( const QgsPoint& point ) const { - double x = point.x(), y = point.y(); + qreal x = point.x(), y = point.y(); mMapCanvas->getCoordinateTransform()->transformInPlace( x, y ); return QPointF( x, y ) + mPanningOffset; } diff --git a/src/gui/qgsmaptool.cpp b/src/gui/qgsmaptool.cpp index 463a07a..4fd0f4c 100644 --- a/src/gui/qgsmaptool.cpp +++ b/src/gui/qgsmaptool.cpp @@ -68,7 +68,7 @@ QgsRectangle QgsMapTool::toLayerCoordinates( QgsMapLayer* layer, const QgsRectan QPoint QgsMapTool::toCanvasCoordinates( const QgsPoint& point ) { - double x = point.x(), y = point.y(); + qreal x = point.x(), y = point.y(); mCanvas->getCoordinateTransform()->transformInPlace( x, y ); return QPoint( qRound( x ), qRound( y ) ); } diff --git a/src/providers/wcs/qgswcsprovider.cpp b/src/providers/wcs/qgswcsprovider.cpp index 77022ac..88618ef 100644 --- a/src/providers/wcs/qgswcsprovider.cpp +++ b/src/providers/wcs/qgswcsprovider.cpp @@ -516,7 +516,7 @@ void QgsWcsProvider::readBlock( int bandNo, QgsRectangle const & viewExtent, in // TODO: set block to null values, move that to function and call only if fails memset( block, 0, pixelWidth * pixelHeight * QgsRasterBlock::typeSize( dataType( bandNo ) ) ); - // Requested extent must at least partialy overlap coverage extent, otherwise + // Requested extent must at least partially overlap coverage extent, otherwise // server gives error. QGIS usually does not request blocks outside raster extent // (higher level checks) but it is better to do check here as well if ( !viewExtent.intersects( mCoverageExtent ) ) diff --git a/tests/src/core/testqgsatlascomposition.cpp b/tests/src/core/testqgsatlascomposition.cpp index 1a26cc2..4b94bfb 100644 --- a/tests/src/core/testqgsatlascomposition.cpp +++ b/tests/src/core/testqgsatlascomposition.cpp @@ -308,13 +308,13 @@ void TestQgsAtlasComposition::predefinedscales_render() mAtlasMap->setAtlasDriven( true ); mAtlasMap->setAtlasScalingMode( QgsComposerMap::Predefined ); - QVector scales; - scales << 1800000; - scales << 5000000; + QVector scales; + scales << 1800000.0; + scales << 5000000.0; mAtlas->setPredefinedScales( scales ); { - const QVector& setScales = mAtlas->predefinedScales(); + const QVector &setScales = mAtlas->predefinedScales(); for ( int i = 0; i < setScales.size(); i++ ) { QVERIFY( setScales[i] == scales[i] );