Re[6]: проецирование 3D в 2D
От: dsorokin Россия  
Дата: 22.09.05 17:21
Оценка:
X>теперь ясно... (n_x*Y_x+n_y*Y_y+n_z*Y_z) = 0 ,так как угол между ними pi/2

Ну да, это и есть ортогональность...


X>этот оптимизированный код работает быстрее!


Очень рад!


X>а можно его ещё улучшить?


Если вектор нормали N и вектор Y не меняются, т.е. плоскость всегда остается постоянной, то тогда можно использовать второй базисный вектор X вместо N — вычислений будет меньше. То есть, просто где-нибудь в самом начале положить

    X_x = n_y*Y_z - n_z*Y_y;
    X_y = n_z*Y_x - n_x*Y_z;
    X_z = n_x*Y_y - n_y*Y_x;


а потом сразу при проецировании использовать X_x, X_y и X_z так, как я написал до этого. Только я не понимаю, а зачем еще это?

    Xp/=cf_a*l;
    Yp/=cf_a*l;
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.