diff --git a/lib/io/dsv_io.cpp b/lib/io/dsv_io.cpp index a8a7701..44c1403 100644 --- a/lib/io/dsv_io.cpp +++ b/lib/io/dsv_io.cpp @@ -951,15 +951,8 @@ void gctl::geodsv_io::fill_column_point2dc(const array &data, int xid, std::string s; for (size_t i = 1; i <= std::min(row_num_, (int) data.size()); i++) { - ss.clear(); - ss << data[i - 1].x; - ss >> s; - table_[i][xid].str_ = s; - - ss.clear(); - ss << data[i - 1].y; - ss >> s; - table_[i][yid].str_ = s; + table_[i][xid].value(data[i - 1].x, p); + table_[i][yid].value(data[i - 1].y, p); } return; } @@ -982,20 +975,9 @@ void gctl::geodsv_io::fill_column_point3dc(const array &data, int xid, std::string s; for (size_t i = 1; i <= std::min(row_num_, (int) data.size()); i++) { - ss.clear(); - ss << data[i - 1].x; - ss >> s; - table_[i][xid].str_ = s; - - ss.clear(); - ss << data[i - 1].y; - ss >> s; - table_[i][yid].str_ = s; - - ss.clear(); - ss << data[i - 1].z; - ss >> s; - table_[i][zid].str_ = s; + table_[i][xid].value(data[i - 1].x, p); + table_[i][yid].value(data[i - 1].y, p); + table_[i][zid].value(data[i - 1].y, p); } return; } @@ -1018,20 +1000,9 @@ void gctl::geodsv_io::fill_column_point3ds(const array &data, int rid, std::string s; for (size_t i = 1; i <= std::min(row_num_, (int) data.size()); i++) { - ss.clear(); - ss << data[i - 1].rad; - ss >> s; - table_[i][rid].str_ = s; - - ss.clear(); - ss << data[i - 1].lon; - ss >> s; - table_[i][pid].str_ = s; - - ss.clear(); - ss << data[i - 1].lat; - ss >> s; - table_[i][tid].str_ = s; + table_[i][rid].value(data[i - 1].rad, p); + table_[i][pid].value(data[i - 1].lon, p); + table_[i][tid].value(data[i - 1].lat, p); } return; }