@@ -66,9 +66,9 @@ TEST(1)
6666 EXPECT_EQ (res.object_snap , lay::PointSnapToObjectResult::ObjectUnspecific); // center point of edge
6767 EXPECT_EQ (res.snapped_point .to_string (), " 0.5,0.5" );
6868
69- res = lay::obj_snap (&view, db::DPoint (0.485 , 0.505 ), db::DVector (0.01 , 0.01 ), 0.1 );
69+ res = lay::obj_snap (&view, db::DPoint (0.385 , 0.605 ), db::DVector (0.01 , 0.01 ), 0.1 );
7070 EXPECT_EQ (res.object_snap , lay::PointSnapToObjectResult::ObjectEdge);
71- EXPECT_EQ (res.snapped_point .to_string (), " 0.49 ,0.51 " );
71+ EXPECT_EQ (res.snapped_point .to_string (), " 0.39 ,0.61 " );
7272 EXPECT_EQ (res.object_ref .to_string (), " (0,1;1,0)" );
7373
7474 res = lay::obj_snap (&view, db::DPoint (0.205 , 0.215 ), db::DVector (0.01 , 0.025 ), 0.1 );
@@ -87,7 +87,7 @@ TEST(1)
8787 EXPECT_EQ (res.object_snap , lay::PointSnapToObjectResult::ObjectVertex);
8888 EXPECT_EQ (res.snapped_point .to_string (), " 0,1" );
8989
90- res = lay::obj_snap (&view, db::DPoint (1.000 , 0.605 ), db::DPoint (0.405 , 0.600 ), db::DVector (), lay::AC_Horizontal, 0.1 );
90+ res = lay::obj_snap (&view, db::DPoint (1.000 , 0.605 ), db::DPoint (0.405 , 0.600 ), db::DVector (), lay::AC_Horizontal, 0.05 );
9191 EXPECT_EQ (res.object_snap , lay::PointSnapToObjectResult::ObjectEdge);
9292 EXPECT_EQ (res.snapped_point .to_string (), " 0.395,0.605" );
9393
@@ -136,16 +136,20 @@ TEST(1)
136136 EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0.355,0.645;0,0.29)" );
137137
138138 res2 = lay::obj_snap2 (&view, db::DPoint (0.5 , 0.5 ), db::DVector (), 0.005 , 1.0 );
139+ EXPECT_EQ (res2.any , false ); // on edge -> measurement chooses wrong direction
140+ EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0;0,0)" );
141+
142+ res2 = lay::obj_snap2 (&view, db::DPoint (0.495 , 0.495 ), db::DVector (), 0.005 , 1.0 );
139143 EXPECT_EQ (res2.any , true );
140- EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0.5,0.5;0.5,0.5 )" );
144+ EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0.5,0.5;0,0 )" );
141145
142146 res2 = lay::obj_snap2 (&view, db::DPoint (0.6 , 0.4 ), db::DVector (), 0.005 , 1.0 );
143147 EXPECT_EQ (res2.any , false );
144148 EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0;0,0)" );
145149
146150 res2 = lay::obj_snap2 (&view, db::DPoint (0.005 , 0.5 ), db::DVector (), 0.005 , 1.0 );
147151 EXPECT_EQ (res2.any , true );
148- EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0.5;0,0.5)" );
152+ EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0.5;0.5 ,0.5)" );
149153
150154 res2 = lay::obj_snap2 (&view, db::DPoint (0.005 , 0.4 ), db::DVector (), 0.005 , 1.0 );
151155 EXPECT_EQ (res2.any , true );
@@ -156,10 +160,6 @@ TEST(1)
156160 EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0;0,0)" );
157161
158162 res2 = lay::obj_snap2 (&view, db::DPoint (-0.2 , 0.5 ), db::DVector (), 0.005 , 1.0 );
159- EXPECT_EQ (res2.any , true );
160- EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0.5;0,0.5)" );
161-
162- res2 = lay::obj_snap2 (&view, db::DPoint (-0.2 , 0.4 ), db::DVector (), 0.005 , 1.0 );
163163 EXPECT_EQ (res2.any , false );
164164 EXPECT_EQ (db::DEdge (res2.first , res2.second ).to_string (), " (0,0;0,0)" );
165165}
0 commit comments