@@ -579,6 +579,10 @@ void TestQgsGeometry::point()
579
579
std::unique_ptr< QgsPoint >clone ( p10.clone () );
580
580
QVERIFY ( p10 == *clone );
581
581
582
+ // toCurveType
583
+ clone.reset ( p10.toCurveType () );
584
+ QVERIFY ( p10 == *clone );
585
+
582
586
// assignment
583
587
QgsPoint original ( QgsWkbTypes::PointZM, 1.0 , 2.0 , 3.0 , -4.0 );
584
588
QgsPoint assigned ( 6.0 , 7.0 );
@@ -742,7 +746,7 @@ void TestQgsGeometry::point()
742
746
QgsPoint closest;
743
747
QgsVertexId after;
744
748
// return error - points have no segments
745
- QVERIFY ( p20.closestSegment ( QgsPoint ( 4.0 , 6.0 ), closest, after, 0 , 0 ) < 0 );
749
+ QVERIFY ( p20.closestSegment ( QgsPoint ( 4.0 , 6.0 ), closest, after ) < 0 );
746
750
747
751
// nextVertex
748
752
QgsPoint p21 ( 3.0 , 4.0 );
@@ -2002,68 +2006,68 @@ void TestQgsGeometry::circularString()
2002
2006
QgsCircularString l35;
2003
2007
bool leftOf = false ;
2004
2008
p = QgsPoint (); // reset all coords to zero
2005
- ( void )l35.closestSegment ( QgsPoint ( 1 , 2 ), p, v, 0 , 0 ); // empty line, just want no crash
2009
+ ( void )l35.closestSegment ( QgsPoint ( 1 , 2 ), p, v ); // empty line, just want no crash
2006
2010
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 10 ) );
2007
- QVERIFY ( l35.closestSegment ( QgsPoint ( 5 , 10 ), p, v, 0 , 0 ) < 0 );
2011
+ QVERIFY ( l35.closestSegment ( QgsPoint ( 5 , 10 ), p, v ) < 0 );
2008
2012
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 10 ) << QgsPoint ( 7 , 12 ) << QgsPoint ( 5 , 15 ) );
2009
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf, 0 ), 2.0 , 0.0001 );
2013
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf ), 2.0 , 0.0001 );
2010
2014
QCOMPARE ( p, QgsPoint ( 5 , 10 ) );
2011
2015
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2012
2016
QCOMPARE ( leftOf, true );
2013
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf, 0 ), 1.583512 , 0.0001 );
2017
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf ), 1.583512 , 0.0001 );
2014
2018
QGSCOMPARENEAR ( p.x (), 6.84 , 0.01 );
2015
2019
QGSCOMPARENEAR ( p.y (), 11.49 , 0.01 );
2016
2020
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2017
2021
QCOMPARE ( leftOf, false );
2018
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 11.5 ), p, v, &leftOf, 0 ), 1.288897 , 0.0001 );
2022
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 11.5 ), p, v, &leftOf ), 1.288897 , 0.0001 );
2019
2023
QGSCOMPARENEAR ( p.x (), 6.302776 , 0.01 );
2020
2024
QGSCOMPARENEAR ( p.y (), 10.7 , 0.01 );
2021
2025
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2022
2026
QCOMPARE ( leftOf, true );
2023
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 7 , 16 ), p, v, &leftOf, 0 ), 3.068288 , 0.0001 );
2027
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 7 , 16 ), p, v, &leftOf ), 3.068288 , 0.0001 );
2024
2028
QGSCOMPARENEAR ( p.x (), 5.981872 , 0.01 );
2025
2029
QGSCOMPARENEAR ( p.y (), 14.574621 , 0.01 );
2026
2030
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2027
2031
QCOMPARE ( leftOf, false );
2028
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 13.5 ), p, v, &leftOf, 0 ), 1.288897 , 0.0001 );
2032
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 13.5 ), p, v, &leftOf ), 1.288897 , 0.0001 );
2029
2033
QGSCOMPARENEAR ( p.x (), 6.302776 , 0.01 );
2030
2034
QGSCOMPARENEAR ( p.y (), 14.3 , 0.01 );
2031
2035
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2032
2036
QCOMPARE ( leftOf, true );
2033
2037
// point directly on segment
2034
- QCOMPARE ( l35.closestSegment ( QgsPoint ( 5 , 15 ), p, v, &leftOf, 0 ), 0.0 );
2038
+ QCOMPARE ( l35.closestSegment ( QgsPoint ( 5 , 15 ), p, v, &leftOf ), 0.0 );
2035
2039
QCOMPARE ( p, QgsPoint ( 5 , 15 ) );
2036
2040
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2037
2041
2038
2042
// clockwise string
2039
2043
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 15 ) << QgsPoint ( 7 , 12 ) << QgsPoint ( 5 , 10 ) );
2040
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf, 0 ), 2 , 0.0001 );
2044
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf ), 2 , 0.0001 );
2041
2045
QGSCOMPARENEAR ( p.x (), 5 , 0.01 );
2042
2046
QGSCOMPARENEAR ( p.y (), 10 , 0.01 );
2043
2047
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2044
2048
QCOMPARE ( leftOf, false );
2045
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf, 0 ), 1.583512 , 0.0001 );
2049
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf ), 1.583512 , 0.0001 );
2046
2050
QGSCOMPARENEAR ( p.x (), 6.84 , 0.01 );
2047
2051
QGSCOMPARENEAR ( p.y (), 11.49 , 0.01 );
2048
2052
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2049
2053
QCOMPARE ( leftOf, true );
2050
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 11.5 ), p, v, &leftOf, 0 ), 1.288897 , 0.0001 );
2054
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 11.5 ), p, v, &leftOf ), 1.288897 , 0.0001 );
2051
2055
QGSCOMPARENEAR ( p.x (), 6.302776 , 0.01 );
2052
2056
QGSCOMPARENEAR ( p.y (), 10.7 , 0.01 );
2053
2057
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
2054
2058
QCOMPARE ( leftOf, false );
2055
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 7 , 16 ), p, v, &leftOf, 0 ), 3.068288 , 0.0001 );
2059
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 7 , 16 ), p, v, &leftOf ), 3.068288 , 0.0001 );
2056
2060
QGSCOMPARENEAR ( p.x (), 5.981872 , 0.01 );
2057
2061
QGSCOMPARENEAR ( p.y (), 14.574621 , 0.01 );
2058
2062
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2059
2063
QCOMPARE ( leftOf, true );
2060
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 13.5 ), p, v, &leftOf, 0 ), 1.288897 , 0.0001 );
2064
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 5.5 , 13.5 ), p, v, &leftOf ), 1.288897 , 0.0001 );
2061
2065
QGSCOMPARENEAR ( p.x (), 6.302776 , 0.01 );
2062
2066
QGSCOMPARENEAR ( p.y (), 14.3 , 0.01 );
2063
2067
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2064
2068
QCOMPARE ( leftOf, false );
2065
2069
// point directly on segment
2066
- QCOMPARE ( l35.closestSegment ( QgsPoint ( 5 , 15 ), p, v, &leftOf, 0 ), 0.0 );
2070
+ QCOMPARE ( l35.closestSegment ( QgsPoint ( 5 , 15 ), p, v, &leftOf ), 0.0 );
2067
2071
QCOMPARE ( p, QgsPoint ( 5 , 15 ) );
2068
2072
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
2069
2073
@@ -3670,30 +3674,30 @@ void TestQgsGeometry::lineString()
3670
3674
QgsLineString l35;
3671
3675
bool leftOf = false ;
3672
3676
p = QgsPoint (); // reset all coords to zero
3673
- ( void )l35.closestSegment ( QgsPoint ( 1 , 2 ), p, v, 0 , 0 ); // empty line, just want no crash
3677
+ ( void )l35.closestSegment ( QgsPoint ( 1 , 2 ), p, v ); // empty line, just want no crash
3674
3678
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 10 ) );
3675
- QVERIFY ( l35.closestSegment ( QgsPoint ( 5 , 10 ), p, v, 0 , 0 ) < 0 );
3679
+ QVERIFY ( l35.closestSegment ( QgsPoint ( 5 , 10 ), p, v ) < 0 );
3676
3680
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 10 ) << QgsPoint ( 10 , 10 ) );
3677
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf, 0 ), 2.0 , 4 * DBL_EPSILON );
3681
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 4 , 11 ), p, v, &leftOf ), 2.0 , 4 * DBL_EPSILON );
3678
3682
QCOMPARE ( p, QgsPoint ( 5 , 10 ) );
3679
3683
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
3680
3684
QCOMPARE ( leftOf, true );
3681
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf, 0 ), 1.0 , 4 * DBL_EPSILON );
3685
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 11 ), p, v, &leftOf ), 1.0 , 4 * DBL_EPSILON );
3682
3686
QCOMPARE ( p, QgsPoint ( 8 , 10 ) );
3683
3687
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
3684
3688
QCOMPARE ( leftOf, true );
3685
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 9 ), p, v, &leftOf, 0 ), 1.0 , 4 * DBL_EPSILON );
3689
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 8 , 9 ), p, v, &leftOf ), 1.0 , 4 * DBL_EPSILON );
3686
3690
QCOMPARE ( p, QgsPoint ( 8 , 10 ) );
3687
3691
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
3688
3692
QCOMPARE ( leftOf, false );
3689
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 11 , 9 ), p, v, &leftOf, 0 ), 2.0 , 4 * DBL_EPSILON );
3693
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 11 , 9 ), p, v, &leftOf ), 2.0 , 4 * DBL_EPSILON );
3690
3694
QCOMPARE ( p, QgsPoint ( 10 , 10 ) );
3691
3695
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 1 ) );
3692
3696
QCOMPARE ( leftOf, false );
3693
3697
l35.setPoints ( QgsPointSequence () << QgsPoint ( 5 , 10 )
3694
3698
<< QgsPoint ( 10 , 10 )
3695
3699
<< QgsPoint ( 10 , 15 ) );
3696
- QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 11 , 12 ), p, v, &leftOf, 0 ), 1.0 , 4 * DBL_EPSILON );
3700
+ QGSCOMPARENEAR ( l35.closestSegment ( QgsPoint ( 11 , 12 ), p, v, &leftOf ), 1.0 , 4 * DBL_EPSILON );
3697
3701
QCOMPARE ( p, QgsPoint ( 10 , 12 ) );
3698
3702
QCOMPARE ( v, QgsVertexId ( 0 , 0 , 2 ) );
3699
3703
QCOMPARE ( leftOf, false );
@@ -6829,7 +6833,7 @@ void TestQgsGeometry::multiPoint()
6829
6833
QgsPoint closest;
6830
6834
QgsVertexId after;
6831
6835
// return error - points have no segments
6832
- QVERIFY ( boundaryMP.closestSegment ( QgsPoint ( 0.5 , 0.5 ), closest, after, 0 , 0 ) < 0 );
6836
+ QVERIFY ( boundaryMP.closestSegment ( QgsPoint ( 0.5 , 0.5 ), closest, after ) < 0 );
6833
6837
}
6834
6838
6835
6839
void TestQgsGeometry::multiLineString ()
0 commit comments