White_54
(White 54)
4632
Похоже прочитал часть кода и он не учитывает oneway.
my $lt = extract_number($tags->{'lanes'}) // q{};
my $lf = extract_number($tags->{'lanes:forward'}) // q{};
my $lb = extract_number($tags->{'lanes:backward'}) // q{};
Здесь вроде так - lt из lanes; lf из lanes:forward; lb из lanes:backward
if ( $lt ) {
$lf = length $lb ? $lt-$lb : int($lt/2+0.5) if !length $lf;
$lb = length $lf ? $lt-$lf : int($lt/2) if !length $lb;
}
Здесь lf= lt-lb, или если нет и lb, то lf=lt/2 + коррекция до целого числа
Если у нас 3 lanes, а lf и lb нет, то 3 (lt) делим на 2 плюс коррекция 0,5 = 2 (lf)
Тогда появляется lf и lb будет считаться из lt-lf= 1 (lb)
А то что здесь надо все полосы отдать на lf (по условию oneway) код не описывает!
return undef if !length $lf || !length $lb || $lt<0 || $lb<0;
return "$lf,0,0,$lb,0,0";
Здесь пока не пойму, но концовка описывает вывод - TrafficLanes.