r = ((x - x0) ^ 2 + (y - y0) ^ 2) ^ 0.5;
phi = arctg((y - y0)/(x - x0));
Принадлежность точки к сектору
Заранее спасибо
Если можно делать приближенные вычисления, тогда можно представить сектор в виде треугольника, и искать на вхождение точки в треугольник, это сводится к нахождению площадей 3-х треугольников, образованных из вершин основного треугольника к нужной точке и сравнением сумм этих площадей с площадью основного треугольника.
Код:
Код:
x = r*cos(phi) + x0;
y = r*sin(phi) + y0;
y = r*sin(phi) + y0;
Код:
grad = phi * (180 / pi);
if x < 0 then
grad = grad + 180;
else if y < 0 then
grad = grad + 360;
if x < 0 then
grad = grad + 180;
else if y < 0 then
grad = grad + 360;
Т. о. 0 градусов получается в правой точке круга.
А градусы соответственно получаются как phi = grad * (pi / 180)
С Новым Годом! :)
Глядя на эти ваши "phi" напросился вопрос -- а как там, есть у воблы плагин для LaTeX, или что-то подобное? ;)