Each node has to see a network topology where this node is surrounded by nodes and links, whereby the more remote the looser the links, whereas the nodes are all individual routers (even those at highest hierarchical level !!! ). The length of each link between any two nodes is precisely determined due to the routing protocol which builds this hierarchical topology. I expect that the length of some hierarchical link is according to the number of physical link hops in between the two adjacent nodes (not the geographical distance in miles or km, which could be done as well, e.g. in order to build a disk for worldwide car navigation ). What is needed: for each viewed node its geographical coordinates (proper degrees, not the minutes or seconds) and the destination's geographical coordinates, likewise, which would take 3 parameter octets in the IPv4-header. DNS lookup should provide this info together with the IPv4 address. I hope, the ingress host can put the geo-info into the IPv4-header, or at least some proxy who is close to the source user and has cached what he has learned from a passing DNS query.
So would it be fair to characterize this as a locator/ID split, where both locator and ID are present in the packet header, and locators are geographically assigned? Routing within the location is doing by normal hierarchical routing.
As always with geographic abstractions, how do you deal with the case of two sites within the same geographic granularity that have no interconnectivity except outside of their locale?