From d91bd457497065ef04cda3656c62995992796158 Mon Sep 17 00:00:00 2001 From: Blottiere Paul Date: Mon, 15 Jan 2018 08:30:53 +0000 Subject: [PATCH] Take into account z dimension from center points --- src/core/geometry/qgscircle.cpp | 2 +- src/core/geometry/qgsellipse.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/core/geometry/qgscircle.cpp b/src/core/geometry/qgscircle.cpp index 96373bb112e..77864754ea9 100644 --- a/src/core/geometry/qgscircle.cpp +++ b/src/core/geometry/qgscircle.cpp @@ -183,7 +183,7 @@ QgsCircle QgsCircle::fromCenterPoint( const QgsPoint ¢er, const QgsPoint &pt double azimuth = QgsGeometryUtils::lineAngle( center.x(), center.y(), pt1.x(), pt1.y() ) * 180.0 / M_PI; QgsPoint centerPt( center ); - QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << pt1, centerPt ); + QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << center << pt1, centerPt ); return QgsCircle( centerPt, centerPt.distance( pt1 ), azimuth ); } diff --git a/src/core/geometry/qgsellipse.cpp b/src/core/geometry/qgsellipse.cpp index 6e01f32029f..6561c57cd25 100644 --- a/src/core/geometry/qgsellipse.cpp +++ b/src/core/geometry/qgsellipse.cpp @@ -81,7 +81,7 @@ QgsEllipse QgsEllipse::fromCenterPoint( const QgsPoint ¢er, const QgsPoint & double azimuth = 90.0; QgsPoint centerPt( center ); - QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << pt1, centerPt ); + QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << center << pt1, centerPt ); return QgsEllipse( centerPt, axis_a, axis_b, azimuth ); } @@ -96,7 +96,7 @@ QgsEllipse QgsEllipse::fromCenter2Points( const QgsPoint ¢er, const QgsPoint double axis_b = center.distance( pp ); QgsPoint centerPt( center ); - QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << pt1 << pt2, centerPt ); + QgsGeometryUtils::setZValueFromPoints( QgsPointSequence() << center << pt1 << pt2, centerPt ); return QgsEllipse( centerPt, axis_a, axis_b, azimuth ); }