Помощь - Поиск - Пользователи - Календарь
Полная версия: Линза
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
ODVk
.
Lapp
Цитата(ODVk @ 21.01.2011 19:19) *
Пожалуйста, помогите нарисовать линзу, но чтобы радиус вводил пользователь wink.gif
(не получается соединить две дуги и чтобы они равны были по высоте, если радиусы разные(может быть я вообще не с того начал?;)))
в конечном счёте буду расчитывать ход лучей через объективы)

Я не понимаю. Две дуги, совпадающие на концах (да?), равные по высоте, но разных радиусов?
Боюсь, такого не может быть..

Или я что-то не так понял? рисунок от руки помог бы весьма..
ODVk
.
TarasBer
Эти дуги имеют разные угловые величины, а ты в коде пишешь им одинаковые (от 120 до 240).
ODVk
.
TarasBer
В общем для двояковыпуклой линзы для радиусов r1 и r2
координаты центров будут
x1 := Width div 2 + sqrt(sqr(r1)-sqr®) и
x2 := Width div 2 - sqrt(sqr(r2)-sqr®)
а углы будут +-arctg(R/x1) и 180+- arctg(R/x2);
ODVk
.
TarasBer
Для вогнуто-выпуклой так:

То же самое, но для x2 вместо минуса ставь плюс.
И для второго угла убери 180.

Для двояковогнутой надо координаты центра сдвинуть: Width div 2 - r1 и Width div 2 + r2 (тогда обе дуги коснутся в центре, чтот не касались - ещё подвинь).
мисс_граффити
ODVk, и зачем ты это сделал?
-TarasBer-
Опять небось боится, чтобы его училка запалила.
Пора сроки редактирования ужать.
volvo
Куда уж ужимать-то? Раньше было 43200 минут = 30 суток. Сейчас ужали до 5760 = 4 суток. Что, запрещать после пары-тройки часов?
Lapp
Цитата(volvo @ 24.01.2011 11:25) *
Раньше было 43200 минут = 30 суток. Сейчас ужали до 5760 = 4 суток. Что, запрещать после пары-тройки часов?

Думаю, что да. Фактически, достаточно и одного часа на исправление замеченных ошибок. Остальное пусть исправляют словами "там-то читать то-то". Пока предлагаю сжать до 30 часов

И выпрашивать "ну исправь название!" ни к чему. Исправлять за них (если не лень) или удалять.

Такое мое мнение.

Добавлено через 2 мин.
Кстати, именно поэтому я теперь чаще цитирую мессадж целиком.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.