Jeśli możesz założyć, że jeden wielokąt jest zawsze regionem innego (całkowicie przez niego zawarty), możesz zamiast używać całego wielokąta dla regionu, po prostu obliczyć jego punkt środkowy i użyć albo punktu, albo bardzo małego kwadratu w to punkt do testowania przeciwko rodzicom. Jeśli masz obwiednię, punkt środkowy powinien być łatwy do znalezienia.
W ten sposób unikniesz problemów z krawędziami, które nakładają się na dwoje rodziców, i powinno działać w każdym regionie, o ile wiesz, że region znajduje się w swoim rodzicu, a nie tylko go nakłada.
Więc możesz nawet nie potrzebować dwóch zapytań, po prostu zredukuj state.Geometry do małego kwadratu wokół jego punktu środkowego i wykonaj zapytanie z nim.