From 7f4853b8a58c8553ef7e2d1776a2ca7f88db4a46 Mon Sep 17 00:00:00 2001 From: Jeff Young Date: Tue, 13 May 2025 09:57:13 +0100 Subject: [PATCH] Third go at fixing the kimath test. --- .../kimath/geometry/test_shape_line_chain.cpp | 62 ++++++++++--------- 1 file changed, 32 insertions(+), 30 deletions(-) diff --git a/qa/tests/libs/kimath/geometry/test_shape_line_chain.cpp b/qa/tests/libs/kimath/geometry/test_shape_line_chain.cpp index 84863a62fa..dd4c2608a0 100644 --- a/qa/tests/libs/kimath/geometry/test_shape_line_chain.cpp +++ b/qa/tests/libs/kimath/geometry/test_shape_line_chain.cpp @@ -84,30 +84,31 @@ struct SLC_CASES VECTOR2I( 24142136, 10000000 ), VECTOR2I( 0, 20000000 ), 0 ); - Circle1Arc.Append( ArcCircle, 5000 ); + Circle1Arc.Append( ArcCircle, ARC_HIGH_DEF ); Circle1Arc.SetClosed( true ); - Circle2Arcs.Append( Arc0a, 5000 ); - Circle2Arcs.Append( Arc0b, 5000 ); + Circle2Arcs.Append( Arc0a, ARC_HIGH_DEF ); + Circle2Arcs.Append( Arc0b, ARC_HIGH_DEF ); Circle2Arcs.SetClosed( true ); - ArcsCoincident.Append( Arc0a, 5000 ); - ArcsCoincident.Append( Arc1, 5000 ); + ArcsCoincident.Append( Arc0a, ARC_HIGH_DEF ); + ArcsCoincident.Append( Arc1, ARC_HIGH_DEF ); ArcsCoincidentClosed = ArcsCoincident; ArcsCoincidentClosed.SetClosed( true ); - ArcsIndependent.Append( Arc0a, 5000 ); - ArcsIndependent.Append( Arc2, 5000 ); + ArcsIndependent.Append( Arc0a, ARC_HIGH_DEF ); + ArcsIndependent.Append( Arc2, ARC_HIGH_DEF ); DuplicateArcs = ArcsCoincident; - DuplicateArcs.Append( Arc1, 5000 ); //should add a segment between end of the chain and new copy of the arc + DuplicateArcs.Append( Arc1, ARC_HIGH_DEF ); // should add a segment between end of the chain + // and new copy of the arc - ArcAndPoint.Append( Arc0a, 5000 ); + ArcAndPoint.Append( Arc0a, ARC_HIGH_DEF ); ArcAndPoint.Append( VECTOR2I( 233450000, 228360000 ) ); ArcsAndSegMixed = ArcAndPoint; - ArcsAndSegMixed.Append( Arc2, 5000 ); + ArcsAndSegMixed.Append( Arc2, ARC_HIGH_DEF ); OnePoint.Append( VECTOR2I( 233450000, 228360000 ) ); @@ -118,7 +119,7 @@ struct SLC_CASES ThreePoints.Append( VECTOR2I( 263450000, 308360000 ) ); SegAndArcCoincident.Append( VECTOR2I( 0, 20000000 ) ); - SegAndArcCoincident.Append( Arc3, 5000 ); + SegAndArcCoincident.Append( Arc3, ARC_HIGH_DEF ); } }; @@ -224,7 +225,8 @@ BOOST_AUTO_TEST_CASE( ArcToPolylineLargeCoords ) VECTOR2I( 1500000, 0 ), } ); - base_chain.Append( SHAPE_ARC( VECTOR2I( 200000, 0 ), VECTOR2I( 300000, 100000 ), ANGLE_180 ), ARC_HIGH_DEF ); + base_chain.Append( SHAPE_ARC( VECTOR2I( 200000, 0 ), VECTOR2I( 300000, 100000 ), ANGLE_180 ), + ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( base_chain ) ); BOOST_CHECK_EQUAL( base_chain.PointCount(), 11 ); @@ -262,11 +264,11 @@ BOOST_AUTO_TEST_CASE( SetClosedDuplicatePoint ) // Test from issue #9843 SHAPE_LINE_CHAIN chain; - chain.Append( - SHAPE_ARC( { -859598, 2559876 }, { -1632771, 1022403 }, { -3170244, 249230 }, 0 ) ); + chain.Append( SHAPE_ARC( { -859598, 2559876 }, { -1632771, 1022403 }, { -3170244, 249230 }, 0 ), + ARC_HIGH_DEF ); - chain.Append( - SHAPE_ARC( { -3170244, -1657832 }, { -292804, -317564 }, { 1047464, 2559876 }, 0 ) ); + chain.Append( SHAPE_ARC( { -3170244, -1657832 }, { -292804, -317564 }, { 1047464, 2559876 }, 0 ), + ARC_HIGH_DEF ); chain.Append( VECTOR2I( -859598, 2559876 ) ); // add point that is equal to first arc start @@ -680,7 +682,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 100000, 0 ), VECTOR2I( 0, 2499 ), VECTOR2I( -100000, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); @@ -693,7 +695,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 100000, 0 ), VECTOR2I( 0, 0 ), VECTOR2I( 100000, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 1 ); BOOST_CHECK_EQUAL( chain.PointCount(), 10 ); @@ -706,7 +708,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 2499, 0 ), VECTOR2I( 0, 0 ), VECTOR2I( 2499, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 1 ); @@ -717,7 +719,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 1767, 0 ), VECTOR2I( 2499, 2499 ), VECTOR2I( 0, 1767 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); @@ -729,7 +731,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 2499, 0 ), VECTOR2I( 2499, 0 ), VECTOR2I( 2499, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 1 ); @@ -740,7 +742,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( 2499, 0 ), VECTOR2I( 2500, 0 ), VECTOR2I( 2501, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); @@ -752,7 +754,7 @@ BOOST_AUTO_TEST_CASE( AppendArc ) { SHAPE_ARC arc( VECTOR2I( -100000, 0 ), VECTOR2I( 0, 1 ), VECTOR2I( 100000, 0 ), 0 ); SHAPE_LINE_CHAIN chain; - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); BOOST_CHECK_EQUAL( chain.ArcCount(), 0 ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); @@ -771,8 +773,8 @@ BOOST_AUTO_TEST_CASE( ArcWrappingToStartSharedPoints ) // Start a chain with the two arcs SHAPE_LINE_CHAIN chain; - chain.Append( arc1, 5000 ); - chain.Append( arc2, 5000 ); + chain.Append( arc1, ARC_HIGH_DEF ); + chain.Append( arc2, ARC_HIGH_DEF ); BOOST_CHECK_EQUAL( chain.PointCount(), 13 ); //BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); @@ -831,7 +833,7 @@ BOOST_AUTO_TEST_CASE( Split ) SHAPE_LINE_CHAIN chain( { seg1.A, seg1.B } ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); // Add first arc - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK_EQUAL( chain.PointCount(), 9 ); // Add two points (seg2) chain.Append( seg2.A ); @@ -906,14 +908,14 @@ BOOST_AUTO_TEST_CASE( Slice ) SHAPE_LINE_CHAIN chain( { VECTOR2I( 0, 0 ), VECTOR2I( 0, 100000 ), VECTOR2I( 100000, 0 ) } ); BOOST_CHECK_EQUAL( chain.PointCount(), 3 ); // Add first arc - chain.Append( firstArc, 5000 ); + chain.Append( firstArc, ARC_HIGH_DEF ); BOOST_CHECK_EQUAL( chain.PointCount(), 10 ); // Add two points (target segment) chain.Append( targetSegment.A ); chain.Append( targetSegment.B ); BOOST_CHECK_EQUAL( chain.PointCount(), 12 ); // Add a second arc - chain.Append( secondArc, 5000 ); + chain.Append( secondArc, ARC_HIGH_DEF ); BOOST_CHECK_EQUAL( chain.PointCount(), 20 ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( chain ) ); @@ -1149,7 +1151,7 @@ BOOST_AUTO_TEST_CASE( Slice ) BOOST_TEST_CONTEXT( "Case 10: New chain, start at arc middle, finish at end" ) { SHAPE_LINE_CHAIN chain10; - chain10.Append( firstArc ); + chain10.Append( firstArc, ARC_HIGH_DEF ); SHAPE_LINE_CHAIN sliceResult = chain10.Slice( 3, 6 ); BOOST_CHECK( GEOM_TEST::IsOutlineValid( sliceResult ) ); @@ -1195,7 +1197,7 @@ BOOST_AUTO_TEST_CASE( NearestPointPt ) SHAPE_LINE_CHAIN chain( { seg1.A, seg1.B } ); BOOST_CHECK_EQUAL( chain.PointCount(), 2 ); // Add first arc - chain.Append( arc, 5000 ); + chain.Append( arc, ARC_HIGH_DEF ); BOOST_CHECK_EQUAL( chain.PointCount(), 9 ); // Add two points (seg2) chain.Append( seg2.A );