Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

Рисование дуги   Найти похожие ветки 

 
Kosha80   (2004-07-26 18:10) [0]

Требуется нарисовать дугу. Есть метод у TCanvas ARC.
В качестве параметров там передаются начало, конец и координаты центров эллипса.

А у меня даются Координаты начала, конца и радиус окружности.
Начало - (x1,y1)
Конец - (x2,y2)
Радиус - R

Голова уже опухла, может есть математики которые могут это разрешить?


 
Ega23 ©   (2004-07-26 18:18) [1]

Окружность - частный вид эллипса, у которого оба фокуса находятся в одной точке.


 
Kosha80   (2004-07-26 18:37) [2]

Это понятно, только как найти эту точку. Нужны ее координаты.


 
Ega23 ©   (2004-07-26 18:41) [3]

Решить уравнение тебе надо.
(X1-X)^2+(Y1-Y)^2=R^2
(X2-X)^2+(Y2-Y)^2=R^2

Решаем уравнение, получаем центр с координатами (X,Y)


 
kosha80   (2004-07-26 20:06) [4]

Короче я понял что учеба в школе и универе мне ничего не дала :)
Не могу я это решить, трехэтажные формулы получаются...


 
Kagp   (2004-07-27 00:24) [5]

Дожиллись граждане програмисты, систему из двух квадратных уравнение с двумя неизвестными решить не можем?


 
PKT   (2004-07-27 02:13) [6]

to:Kagp   (27.07.04 00:24) [5]
<<решить не можем?
Тоже не смог ?


 
kosha_ubitij_gorem   (2004-07-27 02:29) [7]

Вообщето решение где-о то рядом, но формулы трехтажные не дают пробиться мне к долгожданному Х. Я его не могу ухватить руками, а если и хватаю, то он как сказочный змей распадается на две головы. Вообщем мистика мужики. Кто-то, где-то сказал, что книга рекордов Гинеса обещала 1 миллион за решения данного уравнения, а может и не обещала... Все равно, разденьте эти прекрасные переменные от корней и квадратов, найдите заветные X и Y.


 
PKT   (2004-07-28 02:25) [8]

Разве что через геометрию :)
1. Длина хорды S=SQRT((X1-X2)^2 + (Y1-Y2)^2)
2. Координаты центра хорды
   Xs=(X1+X2)/2
   Ys=(Y1+Y2)/2
3. Расст.от центра хорды до центра окружности
   D=SQRT(R^2-1/4*S^2)
4. Проекции D на оси
   Dx=D*sin(A)
   Dy=D*cos(A),
   где A, естественно из arctg(A)=(Y2-Y1)/(X2-X1)
5. Далее ясно, что условий задачи недостаточно, т.к.
   через две точки можно провести две окружности радиуса R
   (в лучших традициях Arc - из 2 в 1 против часовой стрелки).
   Поэтому плюс/минус
   Xr=Xs+(-)Dx
   Yr=Ys+(-)Dy



Страницы: 1 вся ветка

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.039 c
9-1082126348
Xerx
2004-04-16 18:39
2004.08.08
быстрый доступ к пикселам поверхности


14-1090393885
Kerk
2004-07-21 11:11
2004.08.08
Отличия мужской логики от женской


1-1090930435
GrayFace
2004-07-27 16:13
2004.08.08
Чем отличаются GetMem и AllocMem?


14-1090659941
tkv
2004-07-24 13:05
2004.08.08
Проверьте плз мои расчеты!


1-1090922523
ko
2004-07-27 14:02
2004.08.08
TfileListBox