Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Линза

Автор: ODVk 21.01.2011 23:19

.

Автор: Lapp 22.01.2011 0:38

Цитата(ODVk @ 21.01.2011 19:19) *
Пожалуйста, помогите нарисовать линзу, но чтобы радиус вводил пользователь wink.gif
(не получается соединить две дуги и чтобы они равны были по высоте, если радиусы разные(может быть я вообще не с того начал?;)))
в конечном счёте буду расчитывать ход лучей через объективы)

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

Или я что-то не так понял? рисунок от руки помог бы весьма..

Автор: ODVk 22.01.2011 1:14

.

Автор: TarasBer 22.01.2011 1:30

Эти дуги имеют разные угловые величины, а ты в коде пишешь им одинаковые (от 120 до 240).

Автор: ODVk 22.01.2011 1:35

.

Автор: TarasBer 22.01.2011 1:39

В общем для двояковыпуклой линзы для радиусов 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 22.01.2011 1:45

.

Автор: TarasBer 22.01.2011 1:49

Для вогнуто-выпуклой так:

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

Для двояковогнутой надо координаты центра сдвинуть: Width div 2 - r1 и Width div 2 + r2 (тогда обе дуги коснутся в центре, чтот не касались - ещё подвинь).

Автор: мисс_граффити 24.01.2011 13:14

ODVk, и зачем ты это сделал?

Автор: -TarasBer- 24.01.2011 14:42

Опять небось боится, чтобы его училка запалила.
Пора сроки редактирования ужать.

Автор: volvo 24.01.2011 15:25

Куда уж ужимать-то? Раньше было 43200 минут = 30 суток. Сейчас ужали до 5760 = 4 суток. Что, запрещать после пары-тройки часов?

Автор: Lapp 25.01.2011 1:23

Цитата(volvo @ 24.01.2011 11:25) *
Раньше было 43200 минут = 30 суток. Сейчас ужали до 5760 = 4 суток. Что, запрещать после пары-тройки часов?

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

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

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

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