Skip to content

Commit b64d5f7

Browse files
committed
プルリク指摘に対応2
同上
1 parent 32ab4d3 commit b64d5f7

3 files changed

Lines changed: 10 additions & 7 deletions

File tree

src/dataset/local_dataset_accessor.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,8 @@ namespace plateau::dataset {
176176

177177
out_collection_ptr->setUdxPath(udx_path_);
178178
for (const auto& [code, files] : files_by_code_) {
179-
if (extent_filter.intersects2D(GridCode::create(code)->getExtent())) {
179+
auto tmp_grid_code = GridCode::create(code);
180+
if (tmp_grid_code->isValid() && extent_filter.intersects2D(tmp_grid_code->getExtent())) {
180181
for (const auto& file : files) {
181182
out_collection_ptr->addFile(UdxSubFolder::getPackage(file.getFeatureType()), file);
182183
}
@@ -284,7 +285,7 @@ namespace plateau::dataset {
284285
double lon_sum = 0;
285286
double height_sum = 0;
286287
for (const auto& grid_code : grid_codes_) {
287-
if(grid_code == nullptr && !grid_code->isValid()) continue;
288+
if (grid_code == nullptr || !grid_code->isValid()) continue;
288289
const auto& center = grid_code->getExtent().centerPoint();
289290
lat_sum += center.latitude;
290291
lon_sum += center.longitude;
@@ -317,6 +318,8 @@ namespace plateau::dataset {
317318
files_.try_emplace(sub_folder, std::vector<GmlFile>());
318319
files_.at(sub_folder).push_back(gml_file_info);
319320

321+
auto code_ptr = gml_file_info.getGridCode();
322+
if(!code_ptr->isValid()) return;
320323
const auto grid_code = gml_file_info.getGridCode()->get();
321324
files_by_code_.try_emplace(grid_code, std::vector<GmlFile>());
322325
files_by_code_[grid_code].push_back(gml_file_info);

src/dataset/server_dataset_accessor.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,7 @@ namespace plateau::dataset {
8383
}
8484

8585
void ServerDatasetAccessor::addFile(const std::string& sub_folder, const DatasetFileItem& gml_file_info) {
86-
if (dataset_files_.find(sub_folder) == dataset_files_.end()) {
87-
dataset_files_.emplace(sub_folder, std::vector<DatasetFileItem>());
88-
}
86+
dataset_files_.try_emplace(sub_folder, std::vector<DatasetFileItem>());
8987
dataset_files_[sub_folder].push_back(gml_file_info);
9088
}
9189

@@ -102,7 +100,9 @@ namespace plateau::dataset {
102100

103101
for (const auto& [package, files] : dataset_files_) {
104102
for (const auto& file : files) {
105-
auto extent = GridCode::create(file.grid_code)->getExtent();
103+
auto tmp_grid_code = GridCode::create(file.grid_code);
104+
if(!tmp_grid_code->isValid()) continue;
105+
auto extent = tmp_grid_code->getExtent();
106106
if (extent_filter.intersects2D(extent)) {
107107
out_collection_ptr->addFile(package, file);
108108
}

src/geometry/geo_reference.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,6 @@ namespace plateau::geometry {
116116
TVec3d before_convert_lat_lon = (point + reference_point_) * unit_scale_;
117117
TVec3d lat_lon = convertAxisToENU(coordinate_system_, before_convert_lat_lon);
118118
PolarToPlaneCartesian().unproject(lat_lon, zone_id_);
119-
return GeoCoordinate(lat_lon.x, lat_lon.y, lat_lon.z);
119+
return {lat_lon.x, lat_lon.y, lat_lon.z};
120120
}
121121
}

0 commit comments

Comments
 (0)