Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2011, 18:36   #1
Anna221
Новичок
Джуниор
 
Регистрация: 10.05.2011
Сообщений: 1
По умолчанию обратная трассировка лучей и тор _ ошибка в коде или рассуждениях?

Помогите, пожалуйста, никак не могу найти ошибку. Вот кусок кода, из-за которого, как я предполагаю, вылетает ошибка:

tmp5 := (a4*(sqr(t)*sqr(t))+ a3*(t*sqr(t))+ a2*(sqr(t)) + a1*t + a0) ;
tmp4 := trunc(tmp5);
if ( tmp4 < 2 ) then result := t
else result := -1;

если ставить if tmp4=0 then то программа работает, но не находит лучей, пересекающих тор, т.е., как я понимаю, нужно учитывать погрешность вычислений, но тогда вылетает ошибка..

tmp4 - integer, tmp5 - double

Может, все элементарно, но никак не могу придумать, как исправить..

и еще, ход мыслей при нахождении нормали к тору и пересечение луча с тором описаны верно? (с комментариями в torusUnit) или нужен другой подход?
Заранее благодарю
Код прилагается.
Вложения
Тип файла: rar trace_torus_.rar (232.3 Кб, 20 просмотров)
Anna221 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как нарисовать тор в c++? aleksej01-91 Общие вопросы C/C++ 2 19.03.2011 16:57
ошибка в коде c# Roegis Помощь студентам 6 14.01.2011 13:00
Ошибка в коде, ошибка в css или это проблема с совместимостью с браузерами? ankris HTML и CSS 5 23.11.2010 16:58
Ошибка в коде или что-то другое? Яр|/||< (^_^) PHP 17 17.06.2010 18:10
Ошибка в коде Maxim1 Общие вопросы C/C++ 1 31.05.2010 14:52