Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


etc:common_activities:intel_students_cup:algo_details

Детали алгоритма sunset

Камера находится в точке (0,0,flCameraHeight (9й параметр конф. файла)). Взгляд лежит в плоскости Oxz и имеет наклон flCentralVisionAngle (7й параметр конф. файла) градусов к горизонту (положительные значения – наклон “вниз”).

Проекция задается четырехгранной пирамидой с вершиной там где камера, ребра которой проходят через углы экрана. Углы между противоположными гранями пирамиды – flXPictureAngle (5й параметр конф. файла) градусов (в горизонтальном направлении) и flYPictureAngle (6й параметр конф. файла) градусов (в вертикальном).

Координатная система экрана – (0,0) в левом верхнем углу, (iLengthX (первый параметр конф. файла), iLengthY (2й параметр конф. файла)) – в правом нижнем. Для каждой точки (i,j) экрана рассчитаны координаты точки пересечения луча зрения проходящего сквозь нее с плоскостью Oxy – flDecartX[i][j], flDecartY[i][j]. Сферические координаты точки (i,j) лежат тут: flPolarFi[j*iLengthX+i] (азимут), flPolarThetta[j*iLengthX+i] (восхождение).

Массив flK[i] задает значение волнового числа i-й гармоники волн, а flDeltaK[i] – flK[i+1]-flK[i].

Массивы flAzimuthFi, flAzimuthSinFi и flAzimuthCosFi задают iAngleHarmNum направлений, равномерно покрывающих угол от FIV (азимут ветра, 17й параметр конф. файла) до FIV+2П, их синусы и косинусы.

В формуле в стр. 743 Kx cos(fi) + Ky sin(fi) дает расстояние от точки (0,0) до фронта плоской волны идущей по азимуту fi и проходящей через точку (x,y), выраженное значением фазы.

etc/common_activities/intel_students_cup/algo_details.txt · Last modified: 2008/01/03 02:32 by 127.0.0.1