[feature] Added RouteRelation and linked it with FeatureType.

Signed-off-by: Viktor Govako <viktor.govako@gmail.com>
This commit is contained in:
Viktor Govako
2025-06-25 23:58:19 -03:00
committed by Konstantin Pastbin
parent 315bba2a22
commit b85c11ea5a
26 changed files with 336 additions and 63 deletions

View File

@@ -631,7 +631,10 @@ void FeatureBuilder::SerializeForMwm(SupportingData & data, serial::GeometryCodi
CHECK(type != GeomType::Undefined, ());
if (type == GeomType::Point)
{
serial::SavePoint(sink, m_center, params);
uint64_t const encoded =
coding::EncodePointDeltaAsUint(PointDToPointU(m_center, params.GetCoordBits()), params.GetBasePoint());
CHECK_GREATER(bits::NumHiZeroBits64(encoded), 1, ());
WriteVarUint(sink, encoded << 1); // Relations control bit
return;
}
@@ -657,6 +660,9 @@ void FeatureBuilder::SerializeForMwm(SupportingData & data, serial::GeometryCodi
bitSink.Write(trgCount != 0 ? trgCount : data.m_trgMask, 4);
bitSink.Write(trgCount == 0 ? 1 : 0, 1);
}
// Relations control bit
bitSink.Write(0, 1);
}
if (type == GeomType::Line)