|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.02.2009, 18:01 | #1 |
Регистрация: 29.09.2008
Сообщений: 6
|
Помогите с алгоритмом построения сегмента
Добрый день!
Помогите пожалуйста найти алгоритм построения сегмента. Имеется: 1. Координаты точки A, точки B (соответсвенно знаем хорду AB) 2. Длина сегмента AB либо высота CD Рис 42: p.s. Надо на Pascal'e или Delphi. Заранее спасибо! Последний раз редактировалось DjDizzy; 09.02.2009 в 18:41. |
09.02.2009, 19:42 | #2 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
На ум приходит только вот что:
1) a=m/r; 2) h/2 = r*sin(a/2); где a - угол AOB (в радианах), h - длина хорды AB. Тогда, решая систему двух уравнений, получим следующее уравнение: a=2*m*sin(a/2)/h Алгоритм: 1) Организуем цикл для значений a=0...2*Pi и проверяем равенство a=2*m*sin(a/2)/h. 2) После того, как нашли a, находим r=m/a. 3) Строим сектор по известным a и r.
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
|
09.02.2009, 22:21 | #3 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
Вот программа, реализующая приведенный мной выше алгоритм (сыровата правда):
Код:
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
Последний раз редактировалось bag; 10.02.2009 в 20:48. Причина: Проверка на отсутствие решения не нужна |
10.02.2009, 17:20 | #4 |
Регистрация: 29.09.2008
Сообщений: 6
|
Спасибо! То что нужно!
А если у нас вместо длины сегмента AB известна высота CD? |
10.02.2009, 20:46 | #5 |
Пользователь
Регистрация: 20.06.2008
Сообщений: 95
|
Тогда тем же способом решаем уравнение:
(r-y1)*(r-y1)=r*r - h*h/4, где y1 - высота CD, h - длина хорды AB. Т.е. 1) Организуем цикл для значений r=0...rmax и проверяем равенство (r-y1)*(r-y1)=r*r - h*h/4. 2) После того, как нашли r, находим a=2*arctg(x/(r-y1)), правильно обработав ситуацию, если r-y1=0. 3) Строим сектор по известным a и r.
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с алгоритмом программы | Evgenii | Помощь студентам | 10 | 07.11.2008 16:07 |
помогите с алгоритмом Фибоначчи | kardan | Помощь студентам | 8 | 01.04.2008 20:22 |
Помогите с алгоритмом сжатия изображения | Kulibim | Мультимедиа в Delphi | 3 | 20.12.2007 19:33 |
Помогите с алгоритмом Цезаря!!! Пожалуйста | ***СкаЙ*** | Помощь студентам | 6 | 05.04.2007 11:10 |