33#include < osmium/area/detail/node_ref_segment.hpp>
44
55using osmium::area::detail::NodeRefSegment;
6+ using osmium::area::detail::role_type;
67
78TEST_CASE (" Default construction of NodeRefSegment" ) {
89 NodeRefSegment s;
@@ -18,27 +19,27 @@ TEST_CASE("Construction of NodeRefSegment with NodeRefs") {
1819 osmium::NodeRef nr3{3 , {1.2 , 3.6 }};
1920 osmium::NodeRef nr4{4 , {1.2 , 3.7 }};
2021
21- NodeRefSegment s1{nr1, nr2};
22+ NodeRefSegment s1{nr1, nr2, role_type::unknown, nullptr };
2223 REQUIRE (s1.first ().ref () == 1 );
2324 REQUIRE (s1.second ().ref () == 2 );
2425
25- NodeRefSegment s2{nr2, nr3};
26+ NodeRefSegment s2{nr2, nr3, role_type::unknown, nullptr };
2627 REQUIRE (s2.first ().ref () == 3 );
2728 REQUIRE (s2.second ().ref () == 2 );
2829
29- NodeRefSegment s3{nr3, nr4};
30+ NodeRefSegment s3{nr3, nr4, role_type::unknown, nullptr };
3031 REQUIRE (s3.first ().ref () == 3 );
3132 REQUIRE (s3.second ().ref () == 4 );
3233}
3334
3435TEST_CASE (" Intersection of NodeRefSegments" ) {
35- NodeRefSegment s1{{ 1 , {0.0 , 0.0 }}, { 2 , {2.0 , 2.0 }}};
36- NodeRefSegment s2{{ 3 , {0.0 , 2.0 }}, { 4 , {2.0 , 0.0 }}};
37- NodeRefSegment s3{{ 5 , {2.0 , 0.0 }}, { 6 , {4.0 , 2.0 }}};
38- NodeRefSegment s4{{ 7 , {1.0 , 0.0 }}, { 8 , {3.0 , 2.0 }}};
39- NodeRefSegment s5{{ 9 , {0.0 , 4.0 }}, {10 , {4.0 , 0.0 }}};
40- NodeRefSegment s6{{11 , {0.0 , 0.0 }}, {12 , {1.0 , 1.0 }}};
41- NodeRefSegment s7{{13 , {1.0 , 1.0 }}, {14 , {3.0 , 3.0 }}};
36+ NodeRefSegment s1{{ 1 , {0.0 , 0.0 }}, { 2 , {2.0 , 2.0 }}, role_type::unknown, nullptr };
37+ NodeRefSegment s2{{ 3 , {0.0 , 2.0 }}, { 4 , {2.0 , 0.0 }}, role_type::unknown, nullptr };
38+ NodeRefSegment s3{{ 5 , {2.0 , 0.0 }}, { 6 , {4.0 , 2.0 }}, role_type::unknown, nullptr };
39+ NodeRefSegment s4{{ 7 , {1.0 , 0.0 }}, { 8 , {3.0 , 2.0 }}, role_type::unknown, nullptr };
40+ NodeRefSegment s5{{ 9 , {0.0 , 4.0 }}, {10 , {4.0 , 0.0 }}, role_type::unknown, nullptr };
41+ NodeRefSegment s6{{11 , {0.0 , 0.0 }}, {12 , {1.0 , 1.0 }}, role_type::unknown, nullptr };
42+ NodeRefSegment s7{{13 , {1.0 , 1.0 }}, {14 , {3.0 , 3.0 }}, role_type::unknown, nullptr };
4243
4344 REQUIRE (calculate_intersection (s1, s2) == osmium::Location (1.0 , 1.0 ));
4445 REQUIRE (calculate_intersection (s2, s1) == osmium::Location (1.0 , 1.0 ));
@@ -66,15 +67,15 @@ TEST_CASE("Intersection of NodeRefSegments") {
6667}
6768
6869TEST_CASE (" Intersection of collinear NodeRefSegments" ) {
69- NodeRefSegment s1{{ 1 , {0.0 , 0.0 }}, { 2 , {2.0 , 0.0 }}}; // *---*
70- NodeRefSegment s2{{ 3 , {2.0 , 0.0 }}, { 4 , {4.0 , 0.0 }}}; // *---*
71- NodeRefSegment s3{{ 5 , {0.0 , 0.0 }}, { 6 , {1.0 , 0.0 }}}; // *-*
72- NodeRefSegment s4{{ 7 , {1.0 , 0.0 }}, { 8 , {2.0 , 0.0 }}}; // *-*
73- NodeRefSegment s5{{ 9 , {1.0 , 0.0 }}, {10 , {3.0 , 0.0 }}}; // *---*
74- NodeRefSegment s6{{11 , {0.0 , 0.0 }}, {12 , {4.0 , 0.0 }}}; // *-------*
75- NodeRefSegment s7{{13 , {0.0 , 0.0 }}, {14 , {5.0 , 0.0 }}}; // *---------*
76- NodeRefSegment s8{{13 , {1.0 , 0.0 }}, {14 , {5.0 , 0.0 }}}; // *-------*
77- NodeRefSegment s9{{13 , {3.0 , 0.0 }}, {14 , {4.0 , 0.0 }}}; // *-*
70+ NodeRefSegment s1{{ 1 , {0.0 , 0.0 }}, { 2 , {2.0 , 0.0 }}, role_type::unknown, nullptr }; // *---*
71+ NodeRefSegment s2{{ 3 , {2.0 , 0.0 }}, { 4 , {4.0 , 0.0 }}, role_type::unknown, nullptr }; // *---*
72+ NodeRefSegment s3{{ 5 , {0.0 , 0.0 }}, { 6 , {1.0 , 0.0 }}, role_type::unknown, nullptr }; // *-*
73+ NodeRefSegment s4{{ 7 , {1.0 , 0.0 }}, { 8 , {2.0 , 0.0 }}, role_type::unknown, nullptr }; // *-*
74+ NodeRefSegment s5{{ 9 , {1.0 , 0.0 }}, {10 , {3.0 , 0.0 }}, role_type::unknown, nullptr }; // *---*
75+ NodeRefSegment s6{{11 , {0.0 , 0.0 }}, {12 , {4.0 , 0.0 }}, role_type::unknown, nullptr }; // *-------*
76+ NodeRefSegment s7{{13 , {0.0 , 0.0 }}, {14 , {5.0 , 0.0 }}, role_type::unknown, nullptr }; // *---------*
77+ NodeRefSegment s8{{13 , {1.0 , 0.0 }}, {14 , {5.0 , 0.0 }}, role_type::unknown, nullptr }; // *-------*
78+ NodeRefSegment s9{{13 , {3.0 , 0.0 }}, {14 , {4.0 , 0.0 }}, role_type::unknown, nullptr }; // *-*
7879
7980 REQUIRE (calculate_intersection (s1, s1) == osmium::Location ());
8081
@@ -110,16 +111,16 @@ TEST_CASE("Intersection of collinear NodeRefSegments") {
110111}
111112
112113TEST_CASE (" Intersection of very long NodeRefSegments" ) {
113- NodeRefSegment s1{{1 , {90.0 , 90.0 }}, {2 , {-90.0 , -90.0 }}};
114- NodeRefSegment s2{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}};
114+ NodeRefSegment s1{{1 , {90.0 , 90.0 }}, {2 , {-90.0 , -90.0 }}, role_type::unknown, nullptr };
115+ NodeRefSegment s2{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}, role_type::unknown, nullptr };
115116 REQUIRE (calculate_intersection (s1, s2) == osmium::Location (0.0 , 0.0 ));
116117
117- NodeRefSegment s3{{1 , {-90.0 , -90.0 }}, {2 , {90.0 , 90.0 }}};
118- NodeRefSegment s4{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}};
118+ NodeRefSegment s3{{1 , {-90.0 , -90.0 }}, {2 , {90.0 , 90.0 }}, role_type::unknown, nullptr };
119+ NodeRefSegment s4{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}, role_type::unknown, nullptr };
119120 REQUIRE (calculate_intersection (s3, s4) == osmium::Location (0.0 , 0.0 ));
120121
121- NodeRefSegment s5{{1 , {-90.00000001 , -90.0 }}, {2 , {90.0 , 90.0 }}};
122- NodeRefSegment s6{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}};
122+ NodeRefSegment s5{{1 , {-90.00000001 , -90.0 }}, {2 , {90.0 , 90.0 }}, role_type::unknown, nullptr };
123+ NodeRefSegment s6{{1 , {-90.0 , 90.0 }}, {2 , {90.0 , -90.0 }}, role_type::unknown, nullptr };
123124 REQUIRE (calculate_intersection (s5, s6) == osmium::Location (0.0 , 0.0 ));
124125}
125126
@@ -151,13 +152,13 @@ TEST_CASE("More ordering of NodeRefSegments") {
151152 osmium::NodeRef nr6{6 , {2.0 , 2.0 }};
152153 osmium::NodeRef nr7{6 , {1.0 , 2.0 }};
153154
154- NodeRefSegment s1{nr0, nr1};
155- NodeRefSegment s2{nr0, nr2};
156- NodeRefSegment s3{nr0, nr3};
157- NodeRefSegment s4{nr0, nr4};
158- NodeRefSegment s5{nr0, nr5};
159- NodeRefSegment s6{nr0, nr6};
160- NodeRefSegment s7{nr0, nr7};
155+ NodeRefSegment s1{nr0, nr1, role_type::unknown, nullptr };
156+ NodeRefSegment s2{nr0, nr2, role_type::unknown, nullptr };
157+ NodeRefSegment s3{nr0, nr3, role_type::unknown, nullptr };
158+ NodeRefSegment s4{nr0, nr4, role_type::unknown, nullptr };
159+ NodeRefSegment s5{nr0, nr5, role_type::unknown, nullptr };
160+ NodeRefSegment s6{nr0, nr6, role_type::unknown, nullptr };
161+ NodeRefSegment s7{nr0, nr7, role_type::unknown, nullptr };
161162
162163 // s1
163164 REQUIRE_FALSE (s1 < s1);
0 commit comments