Averiguar si un punto está dentro de una celda voronoi

¿Hay una forma sencilla de averiguar si un punto está dentro de una celda voronoi?

Por ejemplo, el siguiente código genera algo como el diagrama a continuación:

using namespace boost::polygon;

point_data<int> p1(0, 0);
point_data<int> p2(-10, 10);
point_data<int> p3(-10, -10);
point_data<int> p4(10, -10);
point_data<int> p5(10, 10);

std::vector<point_data<int>> pts = { p1, p2, p3, p4, p5 };
construct_voronoi(pts.begin(), pts.end(), vd);

En este caso, ¿cómo puedo saber si el punto (5,5) está dentro de la celda central?

Podría crear un polígono a partir de cada celda y descubrir usando unapunto en el algoritmo de polígono, pero estoy interesado en saber que la biblioteca ofrece algo "gratis".

Respuestas a la pregunta(2)

Su respuesta a la pregunta