| 29 | |
| 30 | template<typename T, typename U> |
| 31 | ClipperLib::Paths toClipper( const vector<PolyLineT<T>> &polys, U mult ) |
| 32 | { |
| 33 | ClipperLib::Paths result; |
| 34 | result.resize( polys.size() ); |
| 35 | for( size_t c = 0; c < polys.size(); ++c ) { |
| 36 | result[c].reserve( polys[c].size() ); |
| 37 | auto &points = polys[c].getPoints(); |
| 38 | for( size_t p = 0; p < points.size(); ++p ) { |
| 39 | result[c].emplace_back( static_cast<int64_t>(points[p].x * mult), static_cast<int64_t>(points[p].y * mult) ); |
| 40 | } |
| 41 | } |
| 42 | |
| 43 | return result; |
| 44 | } |
| 45 | |
| 46 | template<typename U> |
| 47 | vector<PolyLine2f> fromClipper( const ClipperLib::Paths &paths, U mult ) |
no test coverage detected