| 570 | } |
| 571 | |
| 572 | void TransitSchemeBuilder::CollectLinesSubway(TransitDisplayInfo const & transitDisplayInfo, MwmSchemeData & scheme) |
| 573 | { |
| 574 | CHECK_EQUAL(transitDisplayInfo.m_transitVersion, ::transit::TransitVersion::OnlySubway, ()); |
| 575 | |
| 576 | std::multimap<size_t, routing::transit::LineId> linesLengths; |
| 577 | for (auto const & line : transitDisplayInfo.m_linesSubway) |
| 578 | { |
| 579 | auto const lineId = line.second.GetId(); |
| 580 | size_t stopsCount = 0; |
| 581 | auto const & stopsRanges = line.second.GetStopIds(); |
| 582 | for (auto const & stops : stopsRanges) |
| 583 | stopsCount += stops.size(); |
| 584 | linesLengths.insert(std::make_pair(stopsCount, lineId)); |
| 585 | } |
| 586 | float depth = kBaseLineDepth; |
| 587 | for (auto const & pair : linesLengths) |
| 588 | { |
| 589 | auto const lineId = pair.second; |
| 590 | |
| 591 | scheme.m_linesSubway[lineId] = LineParams(transitDisplayInfo.m_linesSubway.at(lineId).GetColor(), depth); |
| 592 | |
| 593 | depth += kDepthPerLine; |
| 594 | } |
| 595 | } |
| 596 | |
| 597 | LinesDataPT TransitSchemeBuilder::CollectLinesPT(TransitDisplayInfo const & transitDisplayInfo, MwmSchemeData & scheme) |
| 598 | { |