| 68 | |
| 69 | |
| 70 | void SbetWriter::write(const PointViewPtr view) |
| 71 | { |
| 72 | auto degreesToRadians = [](double degrees) { |
| 73 | return degrees * M_PI / 180.0; |
| 74 | }; |
| 75 | Dimension::IdList dims = sbet::fileDimensions(); |
| 76 | for (PointId idx = 0; idx < view->size(); ++idx) |
| 77 | { |
| 78 | for (auto di = dims.begin(); di != dims.end(); ++di) |
| 79 | { |
| 80 | // If a dimension doesn't exist, write 0. |
| 81 | Dimension::Id dim = *di; |
| 82 | double value = (view->hasDim(dim) ? view->getFieldAs<double>(dim, idx) : 0.0); |
| 83 | if (m_anglesAreDegrees && sbet::isAngularDimension(dim)) { |
| 84 | value = degreesToRadians(value); |
| 85 | } |
| 86 | *m_stream << value; |
| 87 | } |
| 88 | } |
| 89 | } |
| 90 | |
| 91 | |
| 92 | void SbetWriter::done(PointTableRef table) |
nothing calls this directly
no test coverage detected