annotate OrthancStone/Resources/Graveyard/RTStructTentativeReimplementation-BGO/TestStructureSet.cpp @ 1908:affde38b84de

moved tentative bgo reimplementation of rt-struct into graveyard
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 01 Feb 2022 08:38:32 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1908
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
2 #define BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
3
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
4 // working around a bug where the Visual C++ compiler would get
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
5 // stuck trying to compile this cpp file in release mode
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
6 // (versions: https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
7 #ifdef _MSC_VER
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
8 # pragma optimize("", off)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
9 // warning C4748: /GS can not protect parameters and local variables from
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
10 // local buffer overrun because optimizations are disabled in function
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
11 # pragma warning(disable: 4748)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
12 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
13
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
14
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
15
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
16 #include <boost/date_time/posix_time/posix_time.hpp>
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
17 #include <boost/make_shared.hpp>
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
18 #include <string>
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
19
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
20
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
21
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
22 using namespace OrthancStone;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
23
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
24 static const double DELTA_MAX = 10.0 * std::numeric_limits<float>::epsilon();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
25
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
26
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
27
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
28 #define STONE_ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
29
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
30 static double pointsCoord1[] = { 2, 2, 3, 3, 6, 8, 8, 7, 8, 8, 6 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
31 static double pointsCoord2[] = { 2, 6, 8, 10, 12, 10, 8, 6, 4, 2, 4 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
32 static const size_t pointsCoord1Count = STONE_ARRAY_SIZE(pointsCoord1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
33 static const size_t pointsCoord2Count = STONE_ARRAY_SIZE(pointsCoord2);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
34 const size_t POLYGON_POINT_COUNT = pointsCoord1Count;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
35
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
36
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
37 #ifdef BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
38
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
39 static void CheckGroundTruth(
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
40 const std::vector<DicomStructure2>& structures,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
41 const size_t structureIndex,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
42 const size_t sliceIndex,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
43 std::vector<double> groundTruth)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
44 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
45 const std::vector<DicomStructurePolygon2>& polygonsForThisStruct = structures.at(structureIndex).GetPolygons();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
46 const DicomStructurePolygon2& polygon = polygonsForThisStruct.at(sliceIndex);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
47
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
48 //double groundTruth[] = { 7.657838, 108.2725, 304.01, 6.826687, 107.4413, 304.01, 6.152492, 106.4785, 304.01, 5.655735, 105.4132, 304.01, 5.351513, 104.2778, 304.01, 5.249068, 103.1069, 304.01, 5.351513, 101.9359, 304.01, 5.655735, 100.8005, 304.01, 6.152492, 99.73524, 304.01, 6.826687, 98.77239, 304.01, 7.657838, 97.94124, 304.01, 8.620689, 97.26704, 304.01, 9.685987, 96.77029, 304.01, 10.82136, 96.46606, 304.01, 11.99231, 96.36362, 304.01, 13.16326, 96.46606, 304.01, 14.29864, 96.77029, 304.01, 15.36393, 97.26704, 304.01, 16.32678, 97.94124, 304.01, 17.15794, 98.77239, 304.01, 17.83213, 99.73524, 304.01, 18.32889, 100.8005, 304.01, 18.63311, 101.9359, 304.01, 18.73555, 103.1069, 304.01, 18.63311, 104.2778, 304.01, 18.32889, 105.4132, 304.01, 17.83213, 106.4785, 304.01, 17.15794, 107.4413, 304.01, 16.32678, 108.2725, 304.01, 15.36393, 108.9467, 304.01, 14.29864, 109.4434, 304.01, 13.16326, 109.7477, 304.01, 11.99231, 109.8501, 304.01, 10.82136, 109.7477, 304.01, 9.685987, 109.4434, 304.01, 8.620689, 108.9467, 304.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
49 size_t groundTruthItems = groundTruth.size();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
50
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
51 size_t pointCount = 3 * polygon.GetPointCount();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
52
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
53 EXPECT_EQ(groundTruthItems, pointCount);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
54
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
55 for (size_t i = 0; i < polygon.GetPointCount(); ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
56 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
57 const Vector& point = polygon.GetPoint(i);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
58
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
59 // loop over X, Y then Z.
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
60 for (size_t j = 0; j < 3; ++j)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
61 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
62 size_t index = 3 * i + j;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
63 ASSERT_LT(index, groundTruthItems);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
64 bool isNear = LinearAlgebra::IsNear(groundTruth[index], point[j]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
65 EXPECT_TRUE(isNear);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
66 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
67 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
68 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
69
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
70
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
71 #include <Toolbox.h>
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
72
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
73 TEST(StructureSet2, ReadFromJsonThatsAll)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
74 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
75 /*
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
76 The "RT_STRUCT_00" string is the reply to the following Orthanc request:
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
77
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
78 http://localhost:8042/instances/1aa5f84b-c32a03b4-3c1857da-da2e69f3-3ef6e2b3/tags?ignore-length=3006-0050
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
79
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
80 The tag hierarchy can be found here: https://dicom.innolitics.com/ciods/rt-dose
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
81 */
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
82
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
83 DicomStructureSet2 structureSet;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
84
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
85 FullOrthancDataset dicom(Orthanc::EmbeddedResources::GetFileResourceBuffer(Orthanc::EmbeddedResources::RT_STRUCT_00),
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
86 Orthanc::EmbeddedResources::GetFileResourceSize(Orthanc::EmbeddedResources::RT_STRUCT_00));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
87 structureSet.Clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
88
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
89 structureSet.FillStructuresFromDataset(dicom);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
90 structureSet.ComputeDependentProperties();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
91
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
92 const std::vector<DicomStructure2>& structures = structureSet.structures_;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
93
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
94 /*
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
95
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
96 ██████╗ █████╗ ███████╗██╗ ██████╗ ██████╗██╗ ██╗███████╗ ██████╗██╗ ██╗███████╗
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
97 ██╔══██╗██╔══██╗██╔════╝██║██╔════╝ ██╔════╝██║ ██║██╔════╝██╔════╝██║ ██╔╝██╔════╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
98 ██████╔╝███████║███████╗██║██║ ██║ ███████║█████╗ ██║ █████╔╝ ███████╗
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
99 ██╔══██╗██╔══██║╚════██║██║██║ ██║ ██╔══██║██╔══╝ ██║ ██╔═██╗ ╚════██║
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
100 ██████╔╝██║ ██║███████║██║╚██████╗ ╚██████╗██║ ██║███████╗╚██████╗██║ ██╗███████║
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
101 ╚═════╝ ╚═╝ ╚═╝╚══════╝╚═╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝╚══════╝ ╚═════╝╚═╝ ╚═╝╚══════╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
102 http://patorjk.com/software/taag/#p=display&f=ANSI%20Shadow&t=BASIC%20CHECKS
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
103 */
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
104
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
105 // (0x3006, 0x0080) seq. size
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
106 EXPECT_EQ(7u, structures.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
107
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
108 // (0x3006, 0x0080)[i]/(0x3006, 0x00a4)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
109 for (size_t i = 0; i < 5; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
110 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
111 EXPECT_EQ(std::string("ORGAN"), structures[i].interpretation_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
112 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
113 EXPECT_EQ(std::string("EXTERNAL"), structures[5].interpretation_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
114 EXPECT_EQ(std::string("PTV"), structures[6].interpretation_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
115
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
116 // (0x3006, 0x0020)[i]/(0x3006, 0x0026)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
117 EXPECT_EQ(std::string("LN300"), structures[0].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
118 EXPECT_EQ(std::string("Cortical Bone"), structures[1].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
119 EXPECT_EQ(std::string("Adipose"), structures[2].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
120 EXPECT_EQ(std::string("CB2-50%"), structures[3].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
121 EXPECT_EQ(std::string("Water"), structures[4].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
122 EXPECT_EQ(std::string("External"), structures[5].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
123 EXPECT_EQ(std::string("PTV"), structures[6].name_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
124
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
125 // (0x3006, 0x0039)[i]/(0x3006, 0x002a)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
126 EXPECT_EQ(0xff, structures[0].red_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
127 EXPECT_EQ(0x00, structures[0].green_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
128 EXPECT_EQ(0x00, structures[0].blue_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
129
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
130 EXPECT_EQ(0x00, structures[1].red_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
131 EXPECT_EQ(0xff, structures[1].green_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
132 EXPECT_EQ(0xff, structures[1].blue_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
133
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
134 // ...
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
135
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
136 EXPECT_EQ(0x00, structures[5].red_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
137 EXPECT_EQ(0x80, structures[5].green_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
138 EXPECT_EQ(0x00, structures[5].blue_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
139
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
140 EXPECT_EQ(0xff, structures[6].red_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
141 EXPECT_EQ(0x00, structures[6].green_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
142 EXPECT_EQ(0xff, structures[6].blue_);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
143
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
144 /*
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
145
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
146 ██████╗ ███████╗ ██████╗ ███╗ ███╗███████╗████████╗██████╗ ██╗ ██╗
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
147 ██╔════╝ ██╔════╝██╔═══██╗████╗ ████║██╔════╝╚══██╔══╝██╔══██╗╚██╗ ██╔╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
148 ██║ ███╗█████╗ ██║ ██║██╔████╔██║█████╗ ██║ ██████╔╝ ╚████╔╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
149 ██║ ██║██╔══╝ ██║ ██║██║╚██╔╝██║██╔══╝ ██║ ██╔══██╗ ╚██╔╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
150 ╚██████╔╝███████╗╚██████╔╝██║ ╚═╝ ██║███████╗ ██║ ██║ ██║ ██║
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
151 ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
152 http://patorjk.com/software/taag/#p=display&f=ANSI%20Shadow&t=BASIC%20CHECKS
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
153 */
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
154
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
155
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
156 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
157 double groundTruthRaw[] = { 7.657838, 108.2725, 304.01, 6.826687, 107.4413, 304.01, 6.152492, 106.4785, 304.01, 5.655735, 105.4132, 304.01, 5.351513, 104.2778, 304.01, 5.249068, 103.1069, 304.01, 5.351513, 101.9359, 304.01, 5.655735, 100.8005, 304.01, 6.152492, 99.73524, 304.01, 6.826687, 98.77239, 304.01, 7.657838, 97.94124, 304.01, 8.620689, 97.26704, 304.01, 9.685987, 96.77029, 304.01, 10.82136, 96.46606, 304.01, 11.99231, 96.36362, 304.01, 13.16326, 96.46606, 304.01, 14.29864, 96.77029, 304.01, 15.36393, 97.26704, 304.01, 16.32678, 97.94124, 304.01, 17.15794, 98.77239, 304.01, 17.83213, 99.73524, 304.01, 18.32889, 100.8005, 304.01, 18.63311, 101.9359, 304.01, 18.73555, 103.1069, 304.01, 18.63311, 104.2778, 304.01, 18.32889, 105.4132, 304.01, 17.83213, 106.4785, 304.01, 17.15794, 107.4413, 304.01, 16.32678, 108.2725, 304.01, 15.36393, 108.9467, 304.01, 14.29864, 109.4434, 304.01, 13.16326, 109.7477, 304.01, 11.99231, 109.8501, 304.01, 10.82136, 109.7477, 304.01, 9.685987, 109.4434, 304.01, 8.620689, 108.9467, 304.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
158 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
159 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
160 CheckGroundTruth(structures, 0, 0, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
161 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
162 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
163 double groundTruthRaw[] = { 7.657838, 108.2725, 310.01, 6.826687, 107.4413, 310.01, 6.152492, 106.4785, 310.01, 5.655735, 105.4132, 310.01, 5.351513, 104.2778, 310.01, 5.249068, 103.1069, 310.01, 5.351513, 101.9359, 310.01, 5.655735, 100.8005, 310.01, 6.152492, 99.73524, 310.01, 6.826687, 98.77239, 310.01, 7.657838, 97.94124, 310.01, 8.620689, 97.26704, 310.01, 9.685987, 96.77029, 310.01, 10.82136, 96.46606, 310.01, 11.99231, 96.36362, 310.01, 13.16326, 96.46606, 310.01, 14.29864, 96.77029, 310.01, 15.36393, 97.26704, 310.01, 16.32678, 97.94124, 310.01, 17.15794, 98.77239, 310.01, 17.83213, 99.73524, 310.01, 18.32889, 100.8005, 310.01, 18.63311, 101.9359, 310.01, 18.73555, 103.1069, 310.01, 18.63311, 104.2778, 310.01, 18.32889, 105.4132, 310.01, 17.83213, 106.4785, 310.01, 17.15794, 107.4413, 310.01, 16.32678, 108.2725, 310.01, 15.36393, 108.9467, 310.01, 14.29864, 109.4434, 310.01, 13.16326, 109.7477, 310.01, 11.99231, 109.8501, 310.01, 10.82136, 109.7477, 310.01, 9.685987, 109.4434, 310.01, 8.620689, 108.9467, 310.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
164 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
165 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
166 CheckGroundTruth(structures, 0, 2, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
167 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
168 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
169 double groundTruthRaw[] = { -37.967, 161.9664, 304.01, -39.10237, 161.6622, 304.01, -40.16767, 161.1655, 304.01, -41.13052, 160.4913, 304.01, -41.96167, 159.6601, 304.01, -42.63587, 158.6973, 304.01, -43.13263, 157.632, 304.01, -43.43685, 156.4966, 304.01, -43.53929, 155.3257, 304.01, -43.43685, 154.1547, 304.01, -43.13263, 153.0193, 304.01, -42.63587, 151.954, 304.01, -41.96167, 150.9912, 304.01, -41.13052, 150.16, 304.01, -40.16767, 149.4858, 304.01, -39.10237, 148.9891, 304.01, -37.967, 148.6849, 304.01, -36.79605, 148.5824, 304.01, -35.6251, 148.6849, 304.01, -34.48972, 148.9891, 304.01, -33.42443, 149.4858, 304.01, -32.46157, 150.16, 304.01, -31.63042, 150.9912, 304.01, -30.95623, 151.954, 304.01, -30.45947, 153.0193, 304.01, -30.15525, 154.1547, 304.01, -30.0528, 155.3257, 304.01, -30.15525, 156.4966, 304.01, -30.45947, 157.632, 304.01, -30.95623, 158.6973, 304.01, -31.63042, 159.6601, 304.01, -32.46157, 160.4913, 304.01, -33.42443, 161.1655, 304.01, -34.48972, 161.6622, 304.01, -35.6251, 161.9664, 304.01, -36.79605, 162.0689, 304.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
170 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
171 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
172 CheckGroundTruth(structures, 1, 0, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
173 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
174 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
175 double groundTruthRaw[] = { 69.4042, 150.7324, 307.01, 69.70842, 151.8678, 307.01, 69.81087, 153.0387, 307.01, 69.70842, 154.2097, 307.01, 69.4042, 155.345, 307.01, 68.90745, 156.4103, 307.01, 68.23325, 157.3732, 307.01, 67.4021, 158.2043, 307.01, 66.43925, 158.8785, 307.01, 65.37395, 159.3753, 307.01, 64.23858, 159.6795, 307.01, 63.06762, 159.7819, 307.01, 61.89667, 159.6795, 307.01, 60.7613, 159.3753, 307.01, 59.696, 158.8785, 307.01, 58.73315, 158.2043, 307.01, 57.902, 157.3732, 307.01, 57.22781, 156.4103, 307.01, 56.73105, 155.345, 307.01, 56.42683, 154.2097, 307.01, 56.32438, 153.0387, 307.01, 56.42683, 151.8678, 307.01, 56.73105, 150.7324, 307.01, 57.22781, 149.6671, 307.01, 57.902, 148.7042, 307.01, 58.73315, 147.8731, 307.01, 59.696, 147.1989, 307.01, 60.7613, 146.7021, 307.01, 61.89667, 146.3979, 307.01, 63.06762, 146.2955, 307.01, 64.23858, 146.3979, 307.01, 65.37395, 146.7021, 307.01, 66.43925, 147.1989, 307.01, 67.4021, 147.8731, 307.01, 68.23325, 148.7042, 307.01, 68.90745, 149.6671, 307.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
176 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
177 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
178 CheckGroundTruth(structures, 2, 1, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
179 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
180
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
181 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
182 double groundTruthRaw[] = { 108.3984, 232.7406, 274.01, 106.0547, 231.7948, 274.01, 103.7109, 232.8407, 274.01, 96.67969, 232.8757, 274.01, 77.92969, 232.887, 274.01, 47.46094, 232.8902, 274.01, 38.08594, 232.7537, 274.01, 37.6668, 232.3734, 274.01, 38.08594, 231.9774, 274.01, 40.42969, 231.8475, 274.01, 41.76413, 230.0297, 274.01, 42.77344, 229.1388, 274.01, 45.11719, 228.5069, 274.01, 47.46094, 227.1533, 274.01, 49.80469, 226.3505, 274.01, 52.14844, 224.6564, 274.01, 54.49219, 223.923, 274.01, 56.83594, 222.0692, 274.01, 59.17969, 220.3438, 274.01, 61.52344, 219.3888, 274.01, 63.86719, 217.1287, 274.01, 65.83488, 215.9672, 274.01, 68.55469, 213.2383, 274.01, 70.89844, 211.2328, 274.01, 72.8125, 208.9359, 274.01, 75.58594, 206.3615, 274.01, 76.91445, 204.2484, 274.01, 78.89509, 201.9047, 274.01, 80.51276, 199.5609, 274.01, 81.51955, 197.2172, 274.01, 83.67448, 194.8734, 274.01, 84.60938, 192.5297, 274.01, 85.86986, 190.1859, 274.01, 86.57623, 187.8422, 274.01, 88.30051, 185.4984, 274.01, 88.94002, 183.1547, 274.01, 89.23261, 180.8109, 274.01, 89.64844, 180.3263, 274.01, 90.71885, 178.4672, 274.01, 90.97656, 176.1234, 274.01, 91.99219, 174.4794, 274.01, 92.56773, 173.7797, 274.01, 92.80016, 171.4359, 274.01, 93.23473, 169.0922, 274.01, 93.37606, 166.7484, 274.01, 93.60748, 157.3734, 274.01, 93.6341, 152.6859, 274.01, 93.35742, 140.9672, 274.01, 92.89317, 138.6234, 274.01, 92.7069, 136.2797, 274.01, 92.03726, 133.9359, 274.01, 90.84009, 131.5922, 274.01, 90.3769, 129.2484, 274.01, 89.09074, 126.9047, 274.01, 88.13225, 122.2172, 274.01, 86.17828, 119.8734, 274.01, 84.96094, 117.4163, 274.01, 83.99619, 115.1859, 274.01, 83.13079, 112.8422, 274.01, 82.61719, 112.2984, 274.01, 80.27344, 108.8454, 274.01, 79.64514, 108.1547, 274.01, 77.21497, 105.8109, 274.01, 76.47787, 103.4672, 274.01, 75.58594, 102.6177, 274.01, 73.24219, 100.0077, 274.01, 69.54492, 96.43594, 274.01, 67.34096, 94.09219, 274.01, 64.66306, 91.74844, 274.01, 63.86719, 90.92619, 274.01, 61.52344, 90.20454, 274.01, 59.17969, 87.78574, 274.01, 56.83594, 86.48566, 274.01, 54.49219, 84.31388, 274.01, 52.14844, 83.44438, 274.01, 49.80469, 82.75121, 274.01, 49.37617, 82.37344, 274.01, 47.46094, 81.26244, 274.01, 45.71391, 80.02969, 274.01, 45.11719, 79.45415, 274.01, 42.77344, 79.08185, 274.01, 40.42969, 78.51941, 274.01, 38.08594, 78.27534, 274.01, 37.36932, 77.68594, 274.01, 35.74219, 76.67624, 274.01, 33.39844, 76.49941, 274.01, 31.05469, 76.03495, 274.01, 28.71094, 74.83174, 274.01, 26.36719, 74.62859, 274.01, 24.02344, 74.55463, 274.01, 21.67969, 74.22861, 274.01, 19.33594, 74.05312, 274.01, 12.30469, 73.99397, 274.01, 5.273438, 74.0736, 274.01, 2.929688, 74.55463, 274.01, 0.5859375, 74.68513, 274.01, -1.757813, 74.914, 274.01, -2.319131, 75.34219, 274.01, -4.101563, 76.31516, 274.01, -8.789063, 76.74514, 274.01, -11.13281, 78.39038, 274.01, -13.47656, 78.6124, 274.01, -15.82031, 79.19784, 274.01, -18.16406, 81.11024, 274.01, -20.50781, 82.03296, 274.01, -22.85156, 83.13991, 274.01, -25.19531, 83.70732, 274.01, -27.53906, 85.85863, 274.01, -29.88281, 87.03368, 274.01, -32.22656, 88.3274, 274.01, -34.57031, 90.53674, 274.01, -36.91406, 92.5602, 274.01, -39.25781, 93.55952, 274.01, -41.60156, 95.74537, 274.01, -43.94531, 98.26609, 274.01, -46.28906, 100.3701, 274.01, -47.02621, 101.1234, 274.01, -47.86611, 103.4672, 274.01, -49.83594, 105.8109, 274.01, -51.98182, 108.1547, 274.01, -53.06448, 110.4984, 274.01, -53.32031, 110.7675, 274.01, -54.53804, 112.8422, 274.01, -55.66406, 114.273, 274.01, -56.55722, 115.1859, 274.01, -57.13953, 117.5297, 274.01, -58.29264, 119.8734, 274.01, -59.26869, 122.2172, 274.01, -60.35156, 124.0119, 274.01, -60.84229, 124.5609, 274.01, -61.54484, 126.9047, 274.01, -61.71691, 129.2484, 274.01, -63.62281, 131.5922, 274.01, -63.81256, 133.9359, 274.01, -64.12511, 136.2797, 274.01, -64.84515, 138.6234, 274.01, -65.13599, 140.9672, 274.01, -65.33604, 143.3109, 274.01, -65.87358, 145.6547, 274.01, -66.10577, 147.9984, 274.01, -66.17618, 155.0297, 274.01, -66.09933, 162.0609, 274.01, -65.40382, 164.4047, 274.01, -65.24833, 166.7484, 274.01, -64.71442, 171.4359, 274.01, -63.88171, 173.7797, 274.01, -63.69299, 176.1234, 274.01, -61.79081, 178.4672, 274.01, -61.59269, 180.8109, 274.01, -61.19405, 183.1547, 274.01, -60.35156, 185.2055, 274.01, -59.08288, 187.8422, 274.01, -58.00781, 189.3499, 274.01, -57.25858, 190.1859, 274.01, -56.64558, 192.5297, 274.01, -55.29191, 194.8734, 274.01, -54.28698, 197.2172, 274.01, -52.28595, 199.5609, 274.01, -51.47569, 201.9047, 274.01, -48.63281, 204.6417, 274.01, -47.10181, 206.5922, 274.01, -44.64154, 208.9359, 274.01, -42.38504, 211.2797, 274.01, -39.25781, 214.4025, 274.01, -37.42723, 215.9672, 274.01, -34.57031, 218.9107, 274.01, -32.22656, 219.7277, 274.01, -29.88281, 221.6934, 274.01, -27.53906, 222.852, 274.01, -25.19531, 224.5168, 274.01, -22.85156, 225.9419, 274.01, -20.50781, 226.7359, 274.01, -18.16406, 228.3332, 274.01, -15.82031, 229.065, 274.01, -13.47656, 229.267, 274.01, -12.63854, 230.0297, 274.01, -11.13281, 231.9201, 274.01, -10.65505, 232.3734, 274.01, -11.13281, 232.7794, 274.01, -15.82031, 232.792, 274.01, -18.16406, 232.8902, 274.01, -36.91406, 232.9015, 274.01, -39.25781, 232.8902, 274.01, -50.97656, 232.9236, 274.01, -60.35156, 232.9126, 274.01, -67.38281, 232.8407, 274.01, -72.07031, 232.8642, 274.01, -79.10156, 232.8555, 274.01, -83.78906, 232.8788, 274.01, -95.50781, 232.8902, 274.01, -97.85156, 233.4886, 274.01, -100.1953, 233.647, 274.01, -102.5391, 232.9858, 274.01, -104.8828, 233.6969, 274.01, -109.5703, 233.722, 274.01, -125.9766, 233.7086, 274.01, -128.3203, 233.2849, 274.01, -130.6641, 233.702, 274.01, -135.3516, 233.727, 274.01, -149.4141, 233.7135, 274.01, -156.4453, 233.727, 274.01, -163.4766, 233.7119, 274.01, -168.1641, 233.7643, 274.01, -191.6016, 233.7809, 274.01, -210.3516, 233.7716, 274.01, -224.4141, 233.7998, 274.01, -233.7891, 233.7647, 274.01, -243.1641, 233.7785, 274.01, -247.8516, 233.7378, 274.01, -254.8828, 233.8578, 274.01, -257.2266, 235.2519, 274.01, -259.5703, 236.0817, 274.01, -260.7617, 237.0609, 274.01, -261.9141, 238.2262, 274.01, -262.8989, 239.4047, 274.01, -262.9743, 241.7484, 274.01, -262.5977, 244.0922, 274.01, -260.6675, 246.4359, 274.01, -259.6161, 248.7797, 274.01, -257.2266, 251.0035, 274.01, -255.0361, 253.4672, 274.01, -252.5391, 256.0995, 274.01, -251.2277, 258.1547, 274.01, -246.7444, 262.8422, 274.01, -243.1641, 266.3515, 274.01, -239.7411, 269.8734, 274.01, -238.4766, 270.9495, 274.01, -237.2269, 272.2172, 274.01, -236.1328, 273.5215, 274.01, -235.0934, 274.5609, 274.01, -233.7891, 275.6655, 274.01, -232.5319, 276.9047, 274.01, -231.4453, 278.1693, 274.01, -227.917, 281.5922, 274.01, -224.4141, 285.1802, 274.01, -222.0703, 287.4025, 274.01, -218.6841, 290.9672, 274.01, -217.3828, 291.9709, 274.01, -215.0391, 293.1788, 274.01, -212.6953, 294.5138, 274.01, -210.3516, 295.2614, 274.01, -209.8994, 295.6547, 274.01, -208.0078, 296.7083, 274.01, -203.3203, 296.9372, 274.01, -196.2891, 296.9317, 274.01, -193.9453, 296.8988, 274.01, -172.8516, 296.8482, 274.01, -161.1328, 296.843, 274.01, -137.6953, 296.8542, 274.01, -130.6641, 296.8378, 274.01, -107.2266, 296.8379, 274.01, -93.16406, 296.8208, 274.01, -74.41406, 296.838, 274.01, -65.03906, 296.8609, 274.01, -50.97656, 296.8556, 274.01, -46.28906, 296.9051, 274.01, -41.60156, 298.5331, 274.01, -39.25781, 298.5624, 274.01, -36.91406, 297.1455, 274.01, -34.57031, 297.0498, 274.01, -32.22656, 298.5589, 274.01, -25.19531, 298.5624, 274.01, -22.85156, 297.2842, 274.01, -20.50781, 298.5624, 274.01, -1.757813, 298.5624, 274.01, 0.5859375, 297.2104, 274.01, 2.929688, 298.5624, 274.01, 5.273438, 297.6946, 274.01, 7.617188, 298.5168, 274.01, 9.960938, 298.5512, 274.01, 12.30469, 296.937, 274.01, 14.64844, 298.5478, 274.01, 16.99219, 298.5478, 274.01, 19.33594, 297.0782, 274.01, 21.67969, 296.844, 274.01, 23.54531, 297.9984, 274.01, 24.02344, 298.4023, 274.01, 24.50156, 297.9984, 274.01, 26.36719, 296.844, 274.01, 38.08594, 296.8381, 274.01, 52.14844, 296.8033, 274.01, 59.17969, 296.8033, 274.01, 73.24219, 296.7682, 274.01, 99.02344, 296.7566, 274.01, 117.7734, 296.7216, 274.01, 129.4922, 296.7152, 274.01, 131.8359, 295.9083, 274.01, 134.1797, 295.5245, 274.01, 138.8672, 295.4763, 274.01, 155.2734, 295.4763, 274.01, 176.3672, 295.3861, 274.01, 190.4297, 295.3718, 274.01, 197.4609, 295.4763, 274.01, 202.1484, 295.4454, 274.01, 204.4922, 295.3438, 274.01, 206.8359, 295.0757, 274.01, 209.1797, 294.4124, 274.01, 211.5234, 292.3133, 274.01, 213.8672, 291.0809, 274.01, 216.2109, 289.6743, 274.01, 217.3081, 288.6234, 274.01, 219.3558, 286.2797, 274.01, 221.8608, 283.9359, 274.01, 225.5859, 280.045, 274.01, 227.9297, 277.8885, 274.01, 230.2734, 275.2857, 274.01, 232.6172, 273.2225, 274.01, 233.6225, 272.2172, 274.01, 234.9609, 270.5822, 274.01, 238.2254, 267.5297, 274.01, 240.3691, 265.1859, 274.01, 244.3359, 261.3326, 274.01, 246.6797, 258.8034, 274.01, 249.0234, 256.7196, 274.01, 251.3672, 254.0746, 274.01, 254.5313, 251.1234, 274.01, 255.333, 248.7797, 274.01, 257.3723, 246.4359, 274.01, 259.7201, 244.0922, 274.01, 260.106, 241.7484, 274.01, 261.6423, 239.4047, 274.01, 261.0804, 237.0609, 274.01, 259.3552, 234.7172, 274.01, 258.3984, 233.7696, 274.01, 256.0547, 232.8757, 274.01, 253.7109, 232.792, 274.01, 251.3672, 232.8161, 274.01, 246.6797, 232.6981, 274.01, 244.3359, 232.725, 274.01, 239.6484, 232.9137, 274.01, 234.9609, 232.8525, 274.01, 225.5859, 232.8757, 274.01, 209.1797, 232.8757, 274.01, 204.4922, 232.7537, 274.01, 195.1172, 232.7794, 274.01, 171.6797, 232.792, 274.01, 164.6484, 232.7666, 274.01, 152.9297, 232.7666, 274.01, 148.2422, 232.792, 274.01, 138.8672, 232.7406, 274.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
183 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
184 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
185 EXPECT_EQ(340u * 3, groundTruth.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
186 CheckGroundTruth(structures, 5, 0, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
187 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
188
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
189 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
190 double groundTruthRaw[] = { -18.16406, 233.0632, 298.01, -27.53906, 233.1042, 298.01, -29.88281, 233.0819, 298.01, -34.57031, 233.131, 298.01, -43.94531, 233.1221, 298.01, -50.97656, 233.1736, 298.01, -62.69531, 233.1397, 298.01, -65.03906, 232.8376, 298.01, -69.72656, 232.9839, 298.01, -79.10156, 233.0245, 298.01, -90.82031, 233.0382, 298.01, -93.16406, 233.0859, 298.01, -109.5703, 233.1132, 298.01, -111.9141, 233.1791, 298.01, -114.2578, 233.7139, 298.01, -118.9453, 233.9793, 298.01, -128.3203, 234.0284, 298.01, -130.6641, 233.9793, 298.01, -135.3516, 234.0591, 298.01, -137.6953, 234.0284, 298.01, -142.3828, 234.0855, 298.01, -144.7266, 234.0284, 298.01, -151.7578, 234.002, 298.01, -158.7891, 234.0263, 298.01, -163.4766, 233.9784, 298.01, -165.8203, 234.0072, 298.01, -168.1641, 234.1756, 298.01, -170.5078, 234.2214, 298.01, -179.8828, 234.1934, 298.01, -186.9141, 234.2721, 298.01, -189.2578, 234.2289, 298.01, -193.9453, 234.2431, 298.01, -198.6328, 234.1692, 298.01, -200.9766, 234.2326, 298.01, -205.6641, 234.1271, 298.01, -212.6953, 234.2224, 298.01, -215.0391, 234.1992, 298.01, -222.0703, 234.3115, 298.01, -224.4141, 234.2224, 298.01, -226.7578, 234.2502, 298.01, -233.7891, 234.0906, 298.01, -238.4766, 234.0329, 298.01, -243.1641, 234.0283, 298.01, -247.8516, 233.7949, 298.01, -250.1953, 233.8681, 298.01, -252.5391, 234.7626, 298.01, -254.3469, 237.0609, 298.01, -255.6034, 239.4047, 298.01, -254.5181, 241.7484, 298.01, -254.2274, 244.0922, 298.01, -254.181, 248.7797, 298.01, -253.9355, 251.1234, 298.01, -253.5926, 253.4672, 298.01, -252.7483, 255.8109, 298.01, -250.8092, 258.1547, 298.01, -248.713, 260.4984, 298.01, -246.263, 262.8422, 298.01, -244.1406, 265.1859, 298.01, -241.6671, 267.5297, 298.01, -239.4754, 269.8734, 298.01, -237.0156, 272.2172, 298.01, -233.7891, 275.382, 298.01, -231.4453, 277.8249, 298.01, -229.1016, 279.9981, 298.01, -226.7578, 282.5281, 298.01, -224.4141, 284.6784, 298.01, -222.0703, 287.2355, 298.01, -220.5414, 288.6234, 298.01, -218.2745, 290.9672, 298.01, -217.3828, 291.6508, 298.01, -212.6953, 294.5949, 298.01, -210.3516, 295.3142, 298.01, -208.0078, 296.4674, 298.01, -205.6641, 296.8852, 298.01, -203.3203, 297.1563, 298.01, -196.2891, 297.1488, 298.01, -193.9453, 297.0597, 298.01, -182.2266, 296.9529, 298.01, -168.1641, 296.8576, 298.01, -154.1016, 296.9249, 298.01, -149.4141, 296.8921, 298.01, -128.3203, 296.9228, 298.01, -121.2891, 296.8623, 298.01, -111.9141, 296.8549, 298.01, -107.2266, 296.8266, 298.01, -102.5391, 296.8731, 298.01, -95.50781, 296.8453, 298.01, -88.47656, 296.9218, 298.01, -83.78906, 296.9016, 298.01, -69.72656, 296.979, 298.01, -67.38281, 296.9514, 298.01, -65.03906, 297.2199, 298.01, -62.69531, 296.9622, 298.01, -55.66406, 296.9926, 298.01, -50.97656, 296.9467, 298.01, -48.63281, 297.3652, 298.01, -46.28906, 297.0439, 298.01, -43.94531, 297.2875, 298.01, -39.25781, 297.0121, 298.01, -34.57031, 297.1564, 298.01, -32.22656, 297.3612, 298.01, -29.88281, 297.4229, 298.01, -27.53906, 297.1687, 298.01, -25.19531, 297.4334, 298.01, -18.16406, 297.3612, 298.01, -15.82031, 297.4441, 298.01, -13.47656, 297.4125, 298.01, -11.13281, 297.2468, 298.01, -8.789063, 297.4125, 298.01, -6.445313, 297.373, 298.01, -4.101563, 297.4195, 298.01, -1.757813, 297.077, 298.01, 0.5859375, 297.4229, 298.01, 2.929688, 297.4125, 298.01, 5.273438, 296.9489, 298.01, 7.617188, 297.3168, 298.01, 9.960938, 296.9377, 298.01, 12.30469, 296.8998, 298.01, 14.64844, 297.1975, 298.01, 16.99219, 296.8579, 298.01, 28.71094, 296.878, 298.01, 40.42969, 296.8163, 298.01, 42.77344, 296.8369, 298.01, 49.80469, 296.734, 298.01, 59.17969, 296.6906, 298.01, 61.52344, 296.6365, 298.01, 68.55469, 296.6278, 298.01, 73.24219, 296.5777, 298.01, 75.58594, 296.6191, 298.01, 84.96094, 296.5284, 298.01, 96.67969, 296.5538, 298.01, 103.7109, 296.479, 298.01, 115.4297, 296.4259, 298.01, 122.4609, 296.3434, 298.01, 129.4922, 296.3495, 298.01, 131.8359, 295.9141, 298.01, 136.5234, 296.2256, 298.01, 138.8672, 295.833, 298.01, 143.5547, 295.9857, 298.01, 145.8984, 295.8791, 298.01, 152.9297, 295.833, 298.01, 164.6484, 295.6819, 298.01, 171.6797, 295.6819, 298.01, 181.0547, 295.5401, 298.01, 185.7422, 295.5742, 298.01, 192.7734, 295.557, 298.01, 197.4609, 295.8012, 298.01, 202.1484, 295.6819, 298.01, 204.4922, 295.3698, 298.01, 206.8359, 294.803, 298.01, 209.1797, 294.3656, 298.01, 211.5234, 292.4764, 298.01, 213.8672, 291.1765, 298.01, 216.2109, 289.5873, 298.01, 217.229, 288.6234, 298.01, 218.5547, 287.0752, 298.01, 221.7097, 283.9359, 298.01, 225.5859, 279.8775, 298.01, 227.9297, 277.5633, 298.01, 230.2734, 275.0808, 298.01, 233.1989, 272.2172, 298.01, 234.9609, 270.2887, 298.01, 237.7384, 267.5297, 298.01, 241.9922, 263.0843, 298.01, 244.3359, 260.7643, 298.01, 246.788, 258.1547, 298.01, 249.0234, 255.451, 298.01, 250.3651, 253.4672, 298.01, 251.5297, 251.1234, 298.01, 252.1947, 248.7797, 298.01, 252.4915, 246.4359, 298.01, 252.5755, 241.7484, 298.01, 252.8592, 239.4047, 298.01, 252.9236, 237.0609, 298.01, 252.2924, 234.7172, 298.01, 251.3672, 233.4697, 298.01, 249.0234, 232.882, 298.01, 244.3359, 232.9048, 298.01, 241.9922, 233.0145, 298.01, 232.6172, 232.9048, 298.01, 227.9297, 233.0007, 298.01, 216.2109, 233.0632, 298.01, 211.5234, 233.0537, 298.01, 206.8359, 232.9699, 298.01, 204.4922, 232.7322, 298.01, 199.8047, 232.7186, 298.01, 190.4297, 232.7719, 298.01, 183.3984, 232.7719, 298.01, 181.0547, 232.7322, 298.01, 174.0234, 232.7048, 298.01, 171.6797, 232.7322, 298.01, 166.9922, 232.6908, 298.01, 157.6172, 232.7975, 298.01, 155.2734, 232.7588, 298.01, 148.2422, 232.7875, 298.01, 143.5547, 232.7614, 298.01, 138.8672, 232.6477, 298.01, 124.8047, 232.6179, 298.01, 122.4609, 232.6477, 298.01, 113.0859, 232.6027, 298.01, 110.7422, 232.4552, 298.01, 108.3984, 232.2192, 298.01, 106.0547, 231.6764, 298.01, 103.7109, 231.8559, 298.01, 102.8237, 232.3734, 298.01, 101.3672, 232.9839, 298.01, 99.02344, 233.0951, 298.01, 87.30469, 233.0819, 298.01, 84.96094, 233.1091, 298.01, 80.27344, 233.0726, 298.01, 77.92969, 233.1132, 298.01, 70.89844, 233.1397, 298.01, 68.55469, 233.1132, 298.01, 52.14844, 233.131, 298.01, 45.11719, 233.0859, 298.01, 44.16726, 232.3734, 298.01, 42.77344, 231.0206, 298.01, 42.04498, 230.0297, 298.01, 42.77344, 229.2462, 298.01, 45.11719, 228.5664, 298.01, 47.46094, 227.0695, 298.01, 49.80469, 226.0552, 298.01, 52.14844, 224.5723, 298.01, 54.49219, 223.6857, 298.01, 56.83594, 221.8519, 298.01, 59.17969, 220.2086, 298.01, 61.52344, 218.8854, 298.01, 64.94469, 215.9672, 298.01, 66.21094, 215.0191, 298.01, 67.72036, 213.6234, 298.01, 68.55469, 212.6986, 298.01, 70.89844, 210.5055, 298.01, 74.53191, 206.5922, 298.01, 76.54903, 204.2484, 298.01, 78.26105, 201.9047, 298.01, 80.27344, 198.9262, 298.01, 82.61719, 195.2822, 298.01, 82.98087, 194.8734, 298.01, 84.96094, 190.9255, 298.01, 85.43701, 190.1859, 298.01, 86.33423, 187.8422, 298.01, 87.78722, 185.4984, 298.01, 88.60233, 183.1547, 298.01, 89.10253, 180.8109, 298.01, 90.17504, 178.4672, 298.01, 90.88959, 176.1234, 298.01, 91.43783, 173.7797, 298.01, 92.39601, 171.4359, 298.01, 92.95762, 169.0922, 298.01, 93.55695, 159.7172, 298.01, 93.65527, 157.3734, 298.01, 93.67542, 152.6859, 298.01, 93.61213, 150.3422, 298.01, 93.22542, 143.3109, 298.01, 93.06345, 140.9672, 298.01, 92.77563, 138.6234, 298.01, 91.21714, 133.9359, 298.01, 90.67235, 131.5922, 298.01, 89.88776, 129.2484, 298.01, 88.8737, 126.9047, 298.01, 88.44087, 124.5609, 298.01, 86.09712, 119.8734, 298.01, 85.05786, 117.5297, 298.01, 83.87151, 115.1859, 298.01, 82.22388, 112.8422, 298.01, 81.09117, 110.4984, 298.01, 77.92969, 106.4052, 298.01, 77.3894, 105.8109, 298.01, 75.94332, 103.4672, 298.01, 71.71799, 98.77969, 298.01, 68.55469, 95.65721, 298.01, 63.86719, 91.54878, 298.01, 61.52344, 90.1121, 298.01, 59.17969, 88.15762, 298.01, 56.83594, 86.51503, 298.01, 54.49219, 85.42721, 298.01, 52.14844, 83.64907, 298.01, 49.80469, 82.89023, 298.01, 47.46094, 81.50237, 298.01, 45.11719, 80.62591, 298.01, 42.77344, 79.18153, 298.01, 40.42969, 78.7203, 298.01, 38.08594, 78.1349, 298.01, 35.74219, 77.11755, 298.01, 33.39844, 76.51949, 298.01, 31.05469, 76.07934, 298.01, 26.36719, 74.67744, 298.01, 24.02344, 74.42056, 298.01, 14.64844, 74.07317, 298.01, 9.960938, 74.11538, 298.01, 2.929688, 74.40105, 298.01, 0.5859375, 74.67952, 298.01, -1.757813, 75.31406, 298.01, -4.101563, 76.07065, 298.01, -6.445313, 76.49051, 298.01, -8.789063, 77.17276, 298.01, -11.13281, 78.20097, 298.01, -15.82031, 79.31967, 298.01, -18.16406, 80.76948, 298.01, -20.50781, 81.64266, 298.01, -22.85156, 83.0305, 298.01, -25.19531, 83.7937, 298.01, -27.53906, 85.63515, 298.01, -29.88281, 86.7363, 298.01, -32.22656, 88.36089, 298.01, -34.57031, 90.3302, 298.01, -36.56719, 91.74844, 298.01, -41.60156, 95.93605, 298.01, -46.58845, 101.1234, 298.01, -50.17995, 105.8109, 298.01, -52.10386, 108.1547, 298.01, -53.63992, 110.4984, 298.01, -54.95532, 112.8422, 298.01, -56.64794, 115.1859, 298.01, -57.4403, 117.5297, 298.01, -58.91927, 119.8734, 298.01, -59.78655, 122.2172, 298.01, -61.11754, 124.5609, 298.01, -61.58921, 126.9047, 298.01, -62.38012, 129.2484, 298.01, -63.49118, 131.5922, 298.01, -64.02599, 133.9359, 298.01, -64.3932, 136.2797, 298.01, -65.11897, 138.6234, 298.01, -65.64544, 140.9672, 298.01, -66.23938, 147.9984, 298.01, -66.46289, 152.6859, 298.01, -66.48911, 155.0297, 298.01, -66.34437, 159.7172, 298.01, -65.99894, 164.4047, 298.01, -65.49149, 169.0922, 298.01, -64.6875, 171.4359, 298.01, -63.7739, 176.1234, 298.01, -62.9398, 178.4672, 298.01, -61.86011, 180.8109, 298.01, -61.33423, 183.1547, 298.01, -60.43332, 185.4984, 298.01, -58.00781, 190.0632, 298.01, -56.85406, 192.5297, 298.01, -55.66406, 194.7283, 298.01, -54.11692, 197.2172, 298.01, -50.97656, 201.8369, 298.01, -47.36435, 206.5922, 298.01, -45.04395, 208.9359, 298.01, -42.83026, 211.2797, 298.01, -39.25781, 214.7435, 298.01, -34.57031, 218.4974, 298.01, -32.22656, 219.9595, 298.01, -28.02053, 222.9984, 298.01, -27.53906, 223.4238, 298.01, -25.19531, 224.4187, 298.01, -22.85156, 225.8252, 298.01, -20.50781, 226.9067, 298.01, -18.16406, 228.4286, 298.01, -15.82031, 229.1235, 298.01, -14.9447, 230.0297, 298.01, -15.82031, 231.3969, 298.01, -16.94484, 232.3734, 298.01 };
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
191 size_t n = sizeof(groundTruthRaw) / sizeof(groundTruthRaw[0]);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
192 std::vector<double> groundTruth(groundTruthRaw, groundTruthRaw+n);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
193 EXPECT_EQ(358u * 3, groundTruth.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
194 CheckGroundTruth(structures, 5, 8, groundTruth);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
195 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
196 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
197
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
198 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
199 // BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
200
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
201 #if 0
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
202
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
203 TEST(StructureSet2, ReadFromJsonAndCompute1)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
204 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
205 DicomStructureSet2 structureSet;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
206
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
207 OrthancPlugins::FullOrthancDataset dicom(GetTestJson());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
208 structureSet.Clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
209
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
210 structureSet.FillStructuresFromDataset(dicom);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
211
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
212 structureSet.ComputeDependentProperties();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
213 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
214
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
215 TEST(StructureSet2, ReadFromJsonAndCompute2)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
216 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
217 DicomStructureSet2 structureSet;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
218
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
219 OrthancPlugins::FullOrthancDataset dicom(GetTestJson());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
220 structureSet.Clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
221
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
222 structureSet.SetContents(dicom);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
223 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
224 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
225
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
226 #ifdef BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
227
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
228 static bool CutStructureWithPlane(
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
229 std::vector< std::pair<ScenePoint2D, ScenePoint2D> >& segments,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
230 const DicomStructure2& structure,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
231 const double originX, const double originY, const double originZ,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
232 const double axisX_X, const double axisX_Y, const double axisX_Z,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
233 const double axisY_X, const double axisY_Y, const double axisY_Z
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
234 )
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
235 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
236 // create an AXIAL cutting plane, too far away from the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
237 // (> sliceThickness/2)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
238 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
239 LinearAlgebra::AssignVector(origin, originX, originY, originZ);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
240 LinearAlgebra::AssignVector(axisX, axisX_X, axisX_Y, axisX_Z);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
241 LinearAlgebra::AssignVector(axisY, axisY_X, axisY_Y, axisY_Z);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
242 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
243
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
244 // compute intersection
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
245 bool ok = structure.Project(segments, cuttingPlane);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
246 return ok;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
247 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
248
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
249 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
250 // BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
251
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
252 #ifdef BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
253
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
254 static void CreateBasicStructure(DicomStructure2& structure)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
255 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
256 // see https://www.dropbox.com/s/1o1vg53hsbvx4cc/test-rtstruct-polygons.jpg?dl=0
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
257 EXPECT_EQ(pointsCoord1Count, pointsCoord2Count);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
258 EXPECT_EQ(11u, pointsCoord2Count);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
259
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
260 for (size_t slice = 0; slice < 3; ++slice)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
261 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
262 DicomStructurePolygon2 polygon("Oblomptu", "CLOSED_PLANAR");
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
263 for (size_t ip = 0; ip < pointsCoord1Count; ++ip)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
264 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
265 Vector pt;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
266 double pt0 = pointsCoord1[ip];
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
267 double pt1 = pointsCoord2[ip];
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
268 double pt2 = 4 * (static_cast<double>(slice) - 1); // -4, 0, 4
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
269 LinearAlgebra::AssignVector(pt, pt0, pt1, pt2);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
270 polygon.AddPoint(pt);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
271 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
272 structure.AddPolygon(polygon);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
273 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
274 structure.ComputeDependentProperties();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
275 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
276
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
277
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
278 TEST(StructureSet2, CutAxialOutsideTop)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
279 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
280 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
281 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
282 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
283
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
284 // create an AXIAL cutting plane, too far away from the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
285 // (> sliceThickness/2)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
286 bool ok = CutStructureWithPlane(segments, structure,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
287 0, 0, 7,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
288 1, 0, 0,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
289 0, 1, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
290 EXPECT_FALSE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
291 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
292
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
293
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
294 TEST(StructureSet2, CutAxialOutsideBottom)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
295 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
296 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
297 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
298 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
299
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
300 // create an AXIAL cutting plane, too far away from the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
301 // (> sliceThickness/2)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
302 bool ok = CutStructureWithPlane(segments, structure,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
303 0, 0, -6.66,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
304 1, 0, 0,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
305 0, 1, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
306 EXPECT_FALSE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
307 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
308
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
309 TEST(StructureSet2, CutAxialInsideClose)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
310 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
311 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
312 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
313 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
314
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
315 // create an AXIAL cutting plane in the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
316 bool ok = CutStructureWithPlane(segments, structure,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
317 0, 0, 1.1,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
318 1, 0, 0,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
319 0, 1, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
320 EXPECT_TRUE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
321 EXPECT_EQ(POLYGON_POINT_COUNT, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
322
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
323 for (size_t i = 0; i < segments.size(); ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
324 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
325 EXPECT_LT(i, POLYGON_POINT_COUNT);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
326 EXPECT_LT(i, POLYGON_POINT_COUNT);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
327
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
328 const ScenePoint2D& pt = segments[i].first;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
329
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
330 // ...should be at the same location as the 3D coords since the plane
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
331 // is rooted at 0,0,0 with normal 0,0,1
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
332 EXPECT_NEAR(pt.GetX(), pointsCoord1[i], DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
333 EXPECT_NEAR(pt.GetY(), pointsCoord2[i], DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
334 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
335 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
336
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
337
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
338 TEST(StructureSet2, CutAxialInsideFar)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
339 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
340 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
341 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
342 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
343
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
344 // create an AXIAL cutting plane
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
345 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
346 LinearAlgebra::AssignVector(origin, 0, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
347 LinearAlgebra::AssignVector(axisX, 1, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
348 LinearAlgebra::AssignVector(axisY, 0, 1, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
349 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
350
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
351 // compute intersection
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
352 bool ok = structure.Project(segments, cuttingPlane);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
353 EXPECT_TRUE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
354
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
355 EXPECT_EQ(11u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
356 for (size_t i = 0; i < segments.size(); ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
357 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
358 EXPECT_LT(i, pointsCoord1Count);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
359 EXPECT_LT(i, pointsCoord2Count);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
360
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
361 // the 2D points of the projected polygon
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
362 const ScenePoint2D& pt = segments[i].first;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
363
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
364 // ...should be at the same location as the 3D coords since the plane
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
365 // is rooted at 0,0,0 with normal 0,0,1
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
366 EXPECT_NEAR(pt.GetX(), pointsCoord1[i], DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
367 EXPECT_NEAR(pt.GetY(), pointsCoord2[i], DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
368 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
369 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
370
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
371 TEST(StructureSet2, CutCoronalOutsideClose)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
372 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
373 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
374 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
375 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
376
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
377 // create an X,Z cutting plane, outside of the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
378 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
379 LinearAlgebra::AssignVector(origin, 0, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
380 LinearAlgebra::AssignVector(axisX, 1, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
381 LinearAlgebra::AssignVector(axisY, 0, 0, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
382 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
383
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
384 // compute intersection
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
385 bool ok = structure.Project(segments, cuttingPlane);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
386 EXPECT_FALSE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
387 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
388
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
389 TEST(StructureSet2, CutCoronalInsideClose1DTest)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
390 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
391 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
392 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
393
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
394 // create an X,Z cutting plane, outside of the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
395 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
396 LinearAlgebra::AssignVector(origin, 0, 3, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
397 LinearAlgebra::AssignVector(axisX, 1, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
398 LinearAlgebra::AssignVector(axisY, 0, 0, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
399 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
400
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
401 ASSERT_EQ(3u, structure.GetPolygons().size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
402
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
403 for (int i = 0; i < 3; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
404 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
405 double polygonZ = static_cast<double>(i - 1) * 4.0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
406
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
407 const DicomStructurePolygon2& topSlab = structure.GetPolygons()[i];
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
408
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
409 // let's compute the intersection between the polygon and the plane
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
410 // intersections are in plane coords
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
411 std::vector<ScenePoint2D> intersects;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
412 topSlab.ProjectOnConstantPlane(intersects, cuttingPlane);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
413
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
414 ASSERT_EQ(4u, intersects.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
415
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
416 EXPECT_NEAR(2, intersects[0].GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
417 EXPECT_NEAR(4, intersects[1].GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
418 EXPECT_NEAR(7, intersects[2].GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
419 EXPECT_NEAR(8, intersects[3].GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
420
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
421 for (size_t i = 0; i < 4u; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
422 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
423 EXPECT_NEAR(polygonZ, intersects[i].GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
424 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
425 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
426 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
427
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
428 TEST(StructureSet2, CutCoronalInsideClose)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
429 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
430 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
431 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
432 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
433
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
434 // create an X,Z cutting plane, outside of the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
435 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
436 LinearAlgebra::AssignVector(origin, 0, 3, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
437 LinearAlgebra::AssignVector(axisX, 1, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
438 LinearAlgebra::AssignVector(axisY, 0, 0, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
439 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
440
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
441 // compute intersection
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
442 ASSERT_TRUE(structure.Project(segments, cuttingPlane));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
443 EXPECT_EQ(24u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
444
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
445 size_t numberOfVeryShortSegments = 0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
446 for (size_t iSegment = 0; iSegment < segments.size(); ++iSegment)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
447 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
448 // count the NON vertical very short segments
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
449 if (LinearAlgebra::IsNear(segments[iSegment].first.GetX(), segments[iSegment].second.GetX()))
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
450 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
451 if (LinearAlgebra::IsNear(segments[iSegment].first.GetY(), segments[iSegment].second.GetY()))
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
452 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
453 numberOfVeryShortSegments++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
454 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
455 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
456 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
457 EXPECT_EQ(8u, numberOfVeryShortSegments);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
458 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
459
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
460 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
461 // BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
462
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
463 TEST(DisjointDataSet, BasicTest)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
464 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
465 const size_t ITEM_COUNT = 10;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
466 DisjointDataSet ds(ITEM_COUNT);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
467
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
468 for (size_t i = 0; i < ITEM_COUNT; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
469 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
470 EXPECT_EQ(i, ds.Find(i));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
471 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
472
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
473 ds.Union(0, 4);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
474 EXPECT_EQ(0u, ds.Find(0));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
475 EXPECT_EQ(0u, ds.Find(4));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
476
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
477 ds.Union(4, 6);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
478 ds.Union(8, 9);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
479 ds.Union(0, 8);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
480
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
481 for (size_t i = 0; i < ITEM_COUNT; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
482 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
483 size_t parent = ds.Find(i);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
484 EXPECT_TRUE(0 == parent || 1 == parent || 2 == parent || 3 == parent || 5 == parent || 7 == parent);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
485 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
486
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
487 ds.Union(1, 2);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
488 ds.Union(1, 7);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
489 for (size_t i = 0; i < ITEM_COUNT; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
490 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
491 size_t parent = ds.Find(i);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
492 EXPECT_TRUE(0 == parent || 1 == parent || 3 == parent || 5 == parent);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
493 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
494
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
495 ds.Union(3, 5);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
496 for (size_t i = 0; i < ITEM_COUNT; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
497 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
498 size_t parent = ds.Find(i);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
499 EXPECT_TRUE(0 == parent || 1 == parent || 3 == parent);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
500 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
501
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
502 EXPECT_EQ(ds.Find(0), ds.Find(0));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
503 EXPECT_EQ(ds.Find(0), ds.Find(4));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
504 EXPECT_EQ(ds.Find(0), ds.Find(6));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
505 EXPECT_EQ(ds.Find(0), ds.Find(8));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
506 EXPECT_EQ(ds.Find(0), ds.Find(8));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
507
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
508 EXPECT_EQ(ds.Find(1), ds.Find(7));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
509 EXPECT_EQ(ds.Find(2), ds.Find(1));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
510 EXPECT_EQ(ds.Find(7), ds.Find(2));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
511
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
512 EXPECT_EQ(ds.Find(3), ds.Find(5));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
513 EXPECT_EQ(ds.Find(5), ds.Find(3));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
514
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
515 ds.Union(0, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
516 ds.Union(3, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
517 for (size_t i = 0; i < ITEM_COUNT; ++i)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
518 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
519 EXPECT_EQ(ds.Find(0), ds.Find(i));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
520 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
521 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
522
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
523 #ifdef BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
524
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
525 TEST(StructureSet2, CutSagittalInsideClose)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
526 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
527 DicomStructure2 structure;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
528 CreateBasicStructure(structure);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
529 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
530
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
531 // create an X,Z cutting plane, inside of the volume
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
532 Vector origin, axisX, axisY;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
533 LinearAlgebra::AssignVector(origin, 0, 3, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
534 LinearAlgebra::AssignVector(axisX, 1, 0, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
535 LinearAlgebra::AssignVector(axisY, 0, 0, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
536 CoordinateSystem3D cuttingPlane(origin, axisX, axisY);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
537
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
538 // compute intersection
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
539 bool ok = structure.Project(segments, cuttingPlane);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
540 EXPECT_TRUE(ok);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
541 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
542
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
543 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
544 // BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
545
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
546
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
547 static size_t ConvertListOfSlabsToSegments_Add(RtStructRectanglesInSlab& rectangles, int row, double xmin, double xmax)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
548 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
549 double ymin = static_cast<double>(row) * 5.0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
550 double ymax = static_cast<double>(row + 1) * 5.0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
551
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
552 RtStructRectangleInSlab rectangle;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
553 rectangle.xmin = xmin;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
554 rectangle.xmax = xmax;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
555 rectangle.ymin = ymin;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
556 rectangle.ymax = ymax;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
557
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
558 rectangles.push_back(rectangle);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
559
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
560 return 1u;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
561 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
562
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
563 static size_t FillTestRectangleList(std::vector< RtStructRectanglesInSlab >& rectanglesForEachSlab)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
564 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
565 // ConvertListOfSlabsToSegments
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
566 size_t rectCount = 0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
567
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
568 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
569 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 0, 5, 31);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
570 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 0, 36, 50);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
571
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
572 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
573 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 1, 20, 45);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
574 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 1, 52, 70);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
575
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
576 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
577 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 2, 0, 32);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
578 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 2, 35, 44);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
579 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 2, 60, 75);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
580
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
581 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
582 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 3, 10, 41);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
583 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 3, 46, 80);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
584
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
585 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
586 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 4, 34, 42);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
587 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 4, 90, 96);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
588
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
589 rectanglesForEachSlab.push_back(RtStructRectanglesInSlab());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
590 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 5, 1, 33);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
591 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 5, 40, 43);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
592 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 5, 51, 61);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
593 rectCount += ConvertListOfSlabsToSegments_Add(rectanglesForEachSlab.back(), 5, 76, 95);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
594
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
595 return rectCount;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
596 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
597
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
598 /*
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
599 void AddSlabBoundaries(
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
600 std::vector<std::pair<double, RectangleBoundaryKind> >& boundaries,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
601 const std::vector<RtStructRectanglesInSlab>& slabCuts, size_t iSlab)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
602 */
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
603
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
604
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
605 /*
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
606 void ProcessBoundaryList(
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
607 std::vector< std::pair<ScenePoint2D, ScenePoint2D> >& segments,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
608 const std::vector<std::pair<double, RectangleBoundaryKind> >& boundaries,
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
609 double y)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
610 */
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
611
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
612
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
613 TEST(StructureSet2, ProcessBoundaryList_Empty)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
614 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
615 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
616 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
617
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
618 boundaries.clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
619 EXPECT_NO_THROW(AddSlabBoundaries(boundaries, slabCuts, 0));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
620 ASSERT_EQ(0u, boundaries.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
621 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
622
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
623 TEST(StructureSet2, ProcessBoundaryListTopRow)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
624 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
625 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
626 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
627 FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
628
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
629 boundaries.clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
630 AddSlabBoundaries(boundaries, slabCuts, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
631
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
632 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
633 size_t i = 0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
634 ASSERT_EQ(4u, boundaries.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
635
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
636 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
637 ASSERT_NEAR(5, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
638 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
639
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
640 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
641 ASSERT_NEAR(31, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
642 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
643
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
644 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
645 ASSERT_NEAR(36, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
646 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
647
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
648 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
649 ASSERT_NEAR(50, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
650 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
651 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
652 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
653
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
654 TEST(StructureSet2, ProcessBoundaryListRows_0_and_1)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
655 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
656 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
657 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
658 FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
659
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
660 boundaries.clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
661 AddSlabBoundaries(boundaries, slabCuts, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
662 AddSlabBoundaries(boundaries, slabCuts, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
663
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
664 ASSERT_EQ(8u, boundaries.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
665
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
666 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
667 size_t i = 0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
668
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
669 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
670 ASSERT_NEAR(5, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
671 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
672
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
673 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
674 ASSERT_NEAR(20, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
675 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
676
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
677 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
678 ASSERT_NEAR(31, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
679 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
680
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
681 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
682 ASSERT_NEAR(36, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
683 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
684
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
685 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
686 ASSERT_NEAR(45, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
687 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
688
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
689 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
690 ASSERT_NEAR(50, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
691 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
692
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
693 ASSERT_EQ(RectangleBoundaryKind_Start, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
694 ASSERT_NEAR(52, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
695 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
696
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
697 ASSERT_EQ(RectangleBoundaryKind_End, boundaries[i].second);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
698 ASSERT_NEAR(70, boundaries[i].first, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
699 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
700 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
701 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
702
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
703 TEST(StructureSet2, ConvertListOfSlabsToSegments_EmptyBoundaries)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
704 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
705 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
706 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
707 FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
708 boundaries.clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
709 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
710 ASSERT_NO_THROW(ProcessBoundaryList(segments, boundaries, 42.0));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
711 ASSERT_EQ(0u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
712 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
713
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
714 TEST(StructureSet2, ConvertListOfSlabsToSegments_TopRow_Horizontal)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
715 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
716 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
717 FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
718
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
719 // top row
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
720 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
721 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
722 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
723 AddSlabBoundaries(boundaries, slabCuts, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
724 ProcessBoundaryList(segments, boundaries, slabCuts[0][0].ymin);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
725
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
726 ASSERT_EQ(2u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
727
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
728 ASSERT_NEAR( 5.0, segments[0].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
729 ASSERT_NEAR(31.0, segments[0].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
730 ASSERT_NEAR( 0.0, segments[0].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
731 ASSERT_NEAR( 0.0, segments[0].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
732
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
733 ASSERT_NEAR(36.0, segments[1].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
734 ASSERT_NEAR(50.0, segments[1].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
735 ASSERT_NEAR( 0.0, segments[1].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
736 ASSERT_NEAR( 0.0, segments[1].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
737 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
738 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
739
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
740 TEST(StructureSet2, ConvertListOfSlabsToSegments_All_Horizontal)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
741 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
742 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
743 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
744 FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
745
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
746 // top row
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
747 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
748 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
749 AddSlabBoundaries(boundaries, slabCuts, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
750 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
751 ProcessBoundaryList(segments, boundaries, slabCuts[0][0].ymin);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
752 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
753
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
754 // mids
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
755 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
756 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
757 AddSlabBoundaries(boundaries, slabCuts, 0);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
758 AddSlabBoundaries(boundaries, slabCuts, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
759 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
760 ProcessBoundaryList(segments, boundaries, slabCuts[0][0].ymax);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
761
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
762 ASSERT_EQ(4u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
763
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
764 ASSERT_NEAR(05.0, segments[0].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
765 ASSERT_NEAR(20.0, segments[0].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
766 ASSERT_NEAR(05.0, segments[0].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
767 ASSERT_NEAR(05.0, segments[0].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
768
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
769 ASSERT_NEAR(31.0, segments[1].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
770 ASSERT_NEAR(36.0, segments[1].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
771 ASSERT_NEAR(05.0, segments[1].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
772 ASSERT_NEAR(05.0, segments[1].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
773
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
774 ASSERT_NEAR(45.0, segments[2].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
775 ASSERT_NEAR(50.0, segments[2].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
776 ASSERT_NEAR(05.0, segments[2].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
777 ASSERT_NEAR(05.0, segments[2].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
778
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
779 ASSERT_NEAR(52.0, segments[3].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
780 ASSERT_NEAR(70.0, segments[3].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
781 ASSERT_NEAR(05.0, segments[3].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
782 ASSERT_NEAR(05.0, segments[3].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
783 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
784
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
785 // bottom row
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
786 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
787 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
788 AddSlabBoundaries(boundaries, slabCuts, 1);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
789 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
790 ProcessBoundaryList(segments, boundaries, slabCuts[1][0].ymax);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
791
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
792 ASSERT_EQ(2u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
793
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
794 ASSERT_NEAR(20.0, segments[0].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
795 ASSERT_NEAR(45.0, segments[0].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
796 ASSERT_NEAR(10.0, segments[0].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
797 ASSERT_NEAR(10.0, segments[0].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
798
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
799 ASSERT_NEAR(52.0, segments[1].first.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
800 ASSERT_NEAR(70.0, segments[1].second.GetX(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
801 ASSERT_NEAR(10.0, segments[1].first.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
802 ASSERT_NEAR(10.0, segments[1].second.GetY(), DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
803 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
804
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
805 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
806
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
807 TEST(StructureSet2, ConvertListOfSlabsToSegments_Complete_Empty)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
808 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
809 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
810 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
811
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
812 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
813
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
814 ASSERT_NO_THROW(ConvertListOfSlabsToSegments(segments, slabCuts, 0));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
815 ASSERT_EQ(0u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
816 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
817
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
818 TEST(StructureSet2, ConvertListOfSlabsToSegments_Complete_Regular)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
819 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
820 std::vector< RtStructRectanglesInSlab > slabCuts;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
821 std::vector<std::pair<double, RectangleBoundaryKind> > boundaries;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
822 size_t totalRectCount = FillTestRectangleList(slabCuts);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
823
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
824 std::vector< std::pair<ScenePoint2D, ScenePoint2D> > segments;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
825
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
826 ASSERT_NO_THROW(ConvertListOfSlabsToSegments(segments, slabCuts, totalRectCount));
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
827 ASSERT_EQ(60u, segments.size());
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
828
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
829 size_t i = 0;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
830
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
831 ASSERT_NEAR(segments[i].first.GetX(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
832 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
833 ASSERT_NEAR(segments[i].second.GetX(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
834 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
835 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
836 ASSERT_NEAR(segments[i].first.GetX(), 31.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
837 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
838 ASSERT_NEAR(segments[i].second.GetX(), 31.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
839 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
840 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
841 ASSERT_NEAR(segments[i].first.GetX(), 36.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
842 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
843 ASSERT_NEAR(segments[i].second.GetX(), 36.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
844 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
845 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
846 ASSERT_NEAR(segments[i].first.GetX(), 50.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
847 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
848 ASSERT_NEAR(segments[i].second.GetX(), 50.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
849 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
850 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
851 ASSERT_NEAR(segments[i].first.GetX(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
852 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
853 ASSERT_NEAR(segments[i].second.GetX(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
854 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
855 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
856 ASSERT_NEAR(segments[i].first.GetX(), 45.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
857 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
858 ASSERT_NEAR(segments[i].second.GetX(), 45.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
859 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
860 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
861 ASSERT_NEAR(segments[i].first.GetX(), 52.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
862 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
863 ASSERT_NEAR(segments[i].second.GetX(), 52.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
864 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
865 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
866 ASSERT_NEAR(segments[i].first.GetX(), 70.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
867 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
868 ASSERT_NEAR(segments[i].second.GetX(), 70.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
869 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
870 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
871 ASSERT_NEAR(segments[i].first.GetX(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
872 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
873 ASSERT_NEAR(segments[i].second.GetX(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
874 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
875 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
876 ASSERT_NEAR(segments[i].first.GetX(), 32.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
877 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
878 ASSERT_NEAR(segments[i].second.GetX(), 32.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
879 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
880 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
881 ASSERT_NEAR(segments[i].first.GetX(), 35.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
882 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
883 ASSERT_NEAR(segments[i].second.GetX(), 35.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
884 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
885 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
886 ASSERT_NEAR(segments[i].first.GetX(), 44.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
887 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
888 ASSERT_NEAR(segments[i].second.GetX(), 44.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
889 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
890 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
891 ASSERT_NEAR(segments[i].first.GetX(), 60.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
892 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
893 ASSERT_NEAR(segments[i].second.GetX(), 60.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
894 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
895 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
896 ASSERT_NEAR(segments[i].first.GetX(), 75.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
897 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
898 ASSERT_NEAR(segments[i].second.GetX(), 75.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
899 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
900 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
901 ASSERT_NEAR(segments[i].first.GetX(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
902 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
903 ASSERT_NEAR(segments[i].second.GetX(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
904 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
905 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
906 ASSERT_NEAR(segments[i].first.GetX(), 41.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
907 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
908 ASSERT_NEAR(segments[i].second.GetX(), 41.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
909 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
910 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
911 ASSERT_NEAR(segments[i].first.GetX(), 46.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
912 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
913 ASSERT_NEAR(segments[i].second.GetX(), 46.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
914 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
915 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
916 ASSERT_NEAR(segments[i].first.GetX(), 80.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
917 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
918 ASSERT_NEAR(segments[i].second.GetX(), 80.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
919 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
920 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
921 ASSERT_NEAR(segments[i].first.GetX(), 34.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
922 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
923 ASSERT_NEAR(segments[i].second.GetX(), 34.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
924 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
925 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
926 ASSERT_NEAR(segments[i].first.GetX(), 42.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
927 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
928 ASSERT_NEAR(segments[i].second.GetX(), 42.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
929 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
930 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
931 ASSERT_NEAR(segments[i].first.GetX(), 90.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
932 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
933 ASSERT_NEAR(segments[i].second.GetX(), 90.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
934 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
935 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
936 ASSERT_NEAR(segments[i].first.GetX(), 96.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
937 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
938 ASSERT_NEAR(segments[i].second.GetX(), 96.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
939 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
940 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
941 ASSERT_NEAR(segments[i].first.GetX(), 1.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
942 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
943 ASSERT_NEAR(segments[i].second.GetX(), 1.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
944 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
945 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
946 ASSERT_NEAR(segments[i].first.GetX(), 33.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
947 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
948 ASSERT_NEAR(segments[i].second.GetX(), 33.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
949 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
950 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
951 ASSERT_NEAR(segments[i].first.GetX(), 40.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
952 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
953 ASSERT_NEAR(segments[i].second.GetX(), 40.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
954 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
955 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
956 ASSERT_NEAR(segments[i].first.GetX(), 43.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
957 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
958 ASSERT_NEAR(segments[i].second.GetX(), 43.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
959 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
960 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
961 ASSERT_NEAR(segments[i].first.GetX(), 51.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
962 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
963 ASSERT_NEAR(segments[i].second.GetX(), 51.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
964 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
965 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
966 ASSERT_NEAR(segments[i].first.GetX(), 61.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
967 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
968 ASSERT_NEAR(segments[i].second.GetX(), 61.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
969 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
970 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
971 ASSERT_NEAR(segments[i].first.GetX(), 76.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
972 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
973 ASSERT_NEAR(segments[i].second.GetX(), 76.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
974 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
975 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
976 ASSERT_NEAR(segments[i].first.GetX(), 95.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
977 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
978 ASSERT_NEAR(segments[i].second.GetX(), 95.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
979 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
980 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
981 ASSERT_NEAR(segments[i].first.GetX(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
982 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
983 ASSERT_NEAR(segments[i].second.GetX(), 31.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
984 ASSERT_NEAR(segments[i].second.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
985 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
986 ASSERT_NEAR(segments[i].first.GetX(), 36.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
987 ASSERT_NEAR(segments[i].first.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
988 ASSERT_NEAR(segments[i].second.GetX(), 50.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
989 ASSERT_NEAR(segments[i].second.GetY(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
990 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
991 ASSERT_NEAR(segments[i].first.GetX(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
992 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
993 ASSERT_NEAR(segments[i].second.GetX(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
994 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
995 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
996 ASSERT_NEAR(segments[i].first.GetX(), 31.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
997 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
998 ASSERT_NEAR(segments[i].second.GetX(), 36.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
999 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1000 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1001 ASSERT_NEAR(segments[i].first.GetX(), 45.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1002 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1003 ASSERT_NEAR(segments[i].second.GetX(), 50.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1004 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1005 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1006 ASSERT_NEAR(segments[i].first.GetX(), 52.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1007 ASSERT_NEAR(segments[i].first.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1008 ASSERT_NEAR(segments[i].second.GetX(), 70.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1009 ASSERT_NEAR(segments[i].second.GetY(), 5.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1010 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1011 ASSERT_NEAR(segments[i].first.GetX(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1012 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1013 ASSERT_NEAR(segments[i].second.GetX(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1014 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1015 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1016 ASSERT_NEAR(segments[i].first.GetX(), 32.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1017 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1018 ASSERT_NEAR(segments[i].second.GetX(), 35.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1019 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1020 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1021 ASSERT_NEAR(segments[i].first.GetX(), 44.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1022 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1023 ASSERT_NEAR(segments[i].second.GetX(), 45.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1024 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1025 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1026 ASSERT_NEAR(segments[i].first.GetX(), 52.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1027 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1028 ASSERT_NEAR(segments[i].second.GetX(), 60.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1029 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1030 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1031 ASSERT_NEAR(segments[i].first.GetX(), 70.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1032 ASSERT_NEAR(segments[i].first.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1033 ASSERT_NEAR(segments[i].second.GetX(), 75.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1034 ASSERT_NEAR(segments[i].second.GetY(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1035 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1036 ASSERT_NEAR(segments[i].first.GetX(), 0.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1037 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1038 ASSERT_NEAR(segments[i].second.GetX(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1039 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1040 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1041 ASSERT_NEAR(segments[i].first.GetX(), 32.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1042 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1043 ASSERT_NEAR(segments[i].second.GetX(), 35.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1044 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1045 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1046 ASSERT_NEAR(segments[i].first.GetX(), 41.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1047 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1048 ASSERT_NEAR(segments[i].second.GetX(), 44.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1049 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1050 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1051 ASSERT_NEAR(segments[i].first.GetX(), 46.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1052 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1053 ASSERT_NEAR(segments[i].second.GetX(), 60.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1054 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1055 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1056 ASSERT_NEAR(segments[i].first.GetX(), 75.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1057 ASSERT_NEAR(segments[i].first.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1058 ASSERT_NEAR(segments[i].second.GetX(), 80.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1059 ASSERT_NEAR(segments[i].second.GetY(), 15.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1060 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1061 ASSERT_NEAR(segments[i].first.GetX(), 10.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1062 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1063 ASSERT_NEAR(segments[i].second.GetX(), 34.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1064 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1065 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1066 ASSERT_NEAR(segments[i].first.GetX(), 41.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1067 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1068 ASSERT_NEAR(segments[i].second.GetX(), 42.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1069 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1070 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1071 ASSERT_NEAR(segments[i].first.GetX(), 46.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1072 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1073 ASSERT_NEAR(segments[i].second.GetX(), 80.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1074 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1075 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1076 ASSERT_NEAR(segments[i].first.GetX(), 90.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1077 ASSERT_NEAR(segments[i].first.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1078 ASSERT_NEAR(segments[i].second.GetX(), 96.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1079 ASSERT_NEAR(segments[i].second.GetY(), 20.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1080 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1081 ASSERT_NEAR(segments[i].first.GetX(), 1.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1082 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1083 ASSERT_NEAR(segments[i].second.GetX(), 33.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1084 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1085 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1086 ASSERT_NEAR(segments[i].first.GetX(), 34.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1087 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1088 ASSERT_NEAR(segments[i].second.GetX(), 40.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1089 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1090 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1091 ASSERT_NEAR(segments[i].first.GetX(), 42.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1092 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1093 ASSERT_NEAR(segments[i].second.GetX(), 43.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1094 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1095 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1096 ASSERT_NEAR(segments[i].first.GetX(), 51.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1097 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1098 ASSERT_NEAR(segments[i].second.GetX(), 61.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1099 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1100 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1101 ASSERT_NEAR(segments[i].first.GetX(), 76.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1102 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1103 ASSERT_NEAR(segments[i].second.GetX(), 90.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1104 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1105 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1106 ASSERT_NEAR(segments[i].first.GetX(), 95.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1107 ASSERT_NEAR(segments[i].first.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1108 ASSERT_NEAR(segments[i].second.GetX(), 96.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1109 ASSERT_NEAR(segments[i].second.GetY(), 25.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1110 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1111 ASSERT_NEAR(segments[i].first.GetX(), 1.0000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1112 ASSERT_NEAR(segments[i].first.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1113 ASSERT_NEAR(segments[i].second.GetX(), 33.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1114 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1115 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1116 ASSERT_NEAR(segments[i].first.GetX(), 40.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1117 ASSERT_NEAR(segments[i].first.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1118 ASSERT_NEAR(segments[i].second.GetX(), 43.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1119 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1120 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1121 ASSERT_NEAR(segments[i].first.GetX(), 51.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1122 ASSERT_NEAR(segments[i].first.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1123 ASSERT_NEAR(segments[i].second.GetX(), 61.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1124 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1125 i++;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1126 ASSERT_NEAR(segments[i].first.GetX(), 76.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1127 ASSERT_NEAR(segments[i].first.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1128 ASSERT_NEAR(segments[i].second.GetX(), 95.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1129 ASSERT_NEAR(segments[i].second.GetY(), 30.000000000000000, DELTA_MAX);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1130 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1131
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1132 #if defined(BGO_ENABLE_DICOMSTRUCTURESETLOADER2) && (ORTHANC_SANDBOXED != 1)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1133
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1134 #include <SystemToolbox.h>
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1135
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1136 TEST(StructureSet2, ReadFromJsonPart2)
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1137 {
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1138 DicomStructureSet2 structureSet;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1139 std::string jsonText;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1140
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1141 Orthanc::SystemToolbox::ReadFile(jsonText, "72c773ac-5059f2c4-2e6a9120-4fd4bca1-45701661.json");
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1142
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1143 FullOrthancDataset dicom(jsonText);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1144 structureSet.Clear();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1145
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1146 structureSet.FillStructuresFromDataset(dicom);
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1147 structureSet.ComputeDependentProperties();
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1148
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1149 //const std::vector<DicomStructure2>& structures = structureSet.structures_;
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1150 }
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1151
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1152 #endif
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1153 // BGO_ENABLE_DICOMSTRUCTURESETLOADER2
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1154
affde38b84de moved tentative bgo reimplementation of rt-struct into graveyard
Sebastien Jodogne <s.jodogne@gmail.com>
parents:
diff changeset
1155