Take the 2-minute tour ×

I want to compute the Weber Point (Geometric mean) of an hexagon ($abcdef$) which is symmetric with respect to some axis $L$. The axis of symmetry $L$ is such that ($a$) is symmetric to ($f$), ($b$) to ($e$) and ($c$) to ($d$). We know that the Weber point lies in $L$ but how to compute it ?

Thank you.

share|improve this question

2 Answers 2

up vote 2 down vote accepted

Rotate the position so that $L$ is the $x$-axis, for ease of exposition. We can forget points $d$, $e$, and $f$, and look for $x$ which minimises the sum of the distances from $(x,0)$ to $a$, $b$, and $c$. If $x$ varies by $\delta x$, then the distance from $(x,0)$ to $a$ (say) varies by $-\delta x \cos A$, where $A$ is the angle that the line from $a$ to $(x,0)$ makes with the positive $x$-axis. So we want the point $(x,0)$ such that $\cos A + \cos B + \cos C = 0$.
I can't see an explicit formula for $x$ (though I won't be surprised if somebody else can). But you can find this point to any required accuracy by a simple binary search. If you need a faster method, then Newton will help.

share|improve this answer
Nice solution, thank you. There is just something that I don't understand well. When I draw the figure, I find that the distance from $x$ to $a$ does not vary by $\sigma x cosA$. –  user10753 May 11 '11 at 22:19
Let $D$ be the original distance between $a$ and $x$. I find that its new value is $X$ with $X^2=Y^2+Z^2$. $Y=D-\sigma x cos A$, and $Z=\sigma x tan A$. –  user10753 May 11 '11 at 22:28
@user10753: You're right, it should be $\delta x\sin A$. –  joriki May 12 '11 at 11:20
@joriki: $\delta x \sin A$ obviously wrong. If $x$ is large and negative, so that $A$ is close to zero, then the distance from $x$ to $a$ varies as $-\delta x$. I think my $-\delta x \cos A$ is correct. –  TonyK May 12 '11 at 20:06
@TonyK: Sorry, I somehow had the angle turned by $\pi/2$; you're right of course. –  joriki May 12 '11 at 20:34

There is probably no explicit formula to compute the Fermat Weber point. But you already reduced the problem to a 1-dimensional one: you could write down the line L in parameter form $(l_1,l_2)*t+(c_1,c_2)$. For a sufficiently fine grid $t_1,t_2,..,t_n$ you could then compute the sum of the distances of the corresponding point on L to the points a,b,c finally chosing those $t^*$ minimizing the sum of the distances. This should work sufficiently fast and give you a good approximation of the FW-point.


share|improve this answer

Your Answer


