| 185 | } |
| 186 | |
| 187 | void AddTransitShapes(vector<routing::transit::ShapeId> const & shapeIds, TransitShapesInfo const & shapes, |
| 188 | df::ColorConstant const & color, bool isInverted, df::Subroute & subroute) |
| 189 | { |
| 190 | ASSERT_GREATER(subroute.m_polyline.GetSize(), 0, ()); |
| 191 | df::SubrouteStyle style(color); |
| 192 | style.m_startIndex = subroute.m_polyline.GetSize() - 1; |
| 193 | |
| 194 | for (auto it = shapeIds.crbegin(); it != shapeIds.crend(); ++it) |
| 195 | { |
| 196 | auto const & shapePolyline = shapes.at(*it).GetPolyline(); |
| 197 | if (isInverted) |
| 198 | subroute.m_polyline.Append(shapePolyline.crbegin(), shapePolyline.crend()); |
| 199 | else |
| 200 | subroute.m_polyline.Append(shapePolyline.cbegin(), shapePolyline.cend()); |
| 201 | } |
| 202 | |
| 203 | style.m_endIndex = subroute.m_polyline.GetSize() - 1; |
| 204 | subroute.AddStyle(style); |
| 205 | } |
| 206 | |
| 207 | void AddTransitShapes(::transit::ShapeLink shapeLink, TransitShapesInfoPT const & shapesInfo, |
| 208 | df::ColorConstant const & color, df::Subroute & subroute) |