10 #ifndef VIEWPORT_KDTREE_H
11 #define VIEWPORT_KDTREE_H
20 enum ItemType : uint16_t {
37 if (this->type != other.type)
return false;
41 return this->
id.station == other.id.station;
43 return this->
id.town == other.id.town;
45 return this->
id.sign == other.id.sign;
53 if (this->type != other.type)
return this->type < other.type;
57 return this->
id.station < other.id.station;
59 return this->
id.town < other.id.town;
61 return this->
id.sign < other.id.sign;
75 return (dim == 0) ? item.center : item.top;
81 void RebuildViewportKdtree();
K-dimensional tree, specialised for 2-dimensional space.
K-d tree template specialised for 2-dimensional Manhattan geometry.
uint16_t SignID
The type of the IDs of signs.
Base classes/functions for stations.
Types related to viewports.