In order to calculate the voronoi region of a vertex you need to iterate the 1-ring around it. Then the area of the region is defined as:
A = 1/8 * (sum for every adjacent vertex p_i) { (cot alpha_i + cot beta_i) * (p_i - c).Length² }
In the image you can see the whole voronoi region in light red. A part of it is shown in dark red. This is one of the parts accumulated by the sum. alpha
and beta
are the angles as visible in the image. c
is the center vertex position. p_i
is the opposite vertex_position. alpha
, beta
and p_i
change while iterating. c
keeps its value.
If you calculate those parts for every adjacent vertex, you get 8 times the area of the voronoi region.