MCPcopy Create free account
hub / github.com/PDAL/PDAL / compareTextLasStreaming

Function compareTextLasStreaming

test/unit/io/TextReaderTest.cpp:94–150  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

92
93
94void compareTextLasStreaming(const std::string& textFilename,
95 const std::string& lasFilename)
96{
97 std::string tempname(Support::temppath("testlas.las"));
98
99 FileUtils::deleteFile(tempname);
100
101 TextReader t;
102 Options to;
103 to.add("filename", textFilename);
104 t.setOptions(to);
105
106 LasWriter w;
107 Options wo;
108 wo.add("filename", tempname);
109 w.setInput(t);
110 w.setOptions(wo);
111
112 FixedPointTable in(1000);
113 w.prepare(in);
114 w.execute(in);
115
116 LasReader l1;
117 Options l1o;
118 l1o.add("filename", lasFilename);
119 l1.setOptions(l1o);
120
121 LasReader l2;
122 Options l2o;
123 l2o.add("filename", tempname);
124 l2.setOptions(l2o);
125
126 PointTable t1;
127 l1.prepare(t1);
128 PointViewSet s1 = l1.execute(t1);
129 EXPECT_EQ(s1.size(), 1U);
130 PointViewPtr v1 = *s1.begin();
131
132 PointTable t2;
133 l2.prepare(t2);
134 PointViewSet s2 = l2.execute(t2);
135 EXPECT_EQ(s2.size(), 1U);
136 PointViewPtr v2 = *s2.begin();
137
138 EXPECT_EQ(v1->size(), v2->size());
139
140 // Validate some point data.
141 for (PointId i = 0; i < v1->size(); ++i)
142 {
143 EXPECT_DOUBLE_EQ(v1->getFieldAs<double>(Dimension::Id::X, i),
144 v2->getFieldAs<double>(Dimension::Id::X, i));
145 EXPECT_DOUBLE_EQ(v1->getFieldAs<double>(Dimension::Id::Y, i),
146 v2->getFieldAs<double>(Dimension::Id::Y, i));
147 EXPECT_DOUBLE_EQ(v1->getFieldAs<double>(Dimension::Id::Z, i),
148 v2->getFieldAs<double>(Dimension::Id::Z, i));
149 }
150}
151

Callers 1

TESTFunction · 0.85

Calls 8

temppathFunction · 0.85
deleteFileFunction · 0.85
setOptionsMethod · 0.80
addMethod · 0.45
prepareMethod · 0.45
executeMethod · 0.45
sizeMethod · 0.45
beginMethod · 0.45

Tested by

no test coverage detected