/
gmn
/
projective_geometry
Обзор
Документация
Войти
/
gmn
/
projective_geometry
Код
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
modules/hypercomplex/lib.asy
14 строк
525 B
Gevorkyan M. N.
init
16 июл 2026, 18:13
16 июл 2026, 18:13
7f048a8
Код
Авторство
О чём код?
// Алгоритм формирования ортогональной тройки векторов по заданному вектору // Marschner S., Shirley P. Fundamentals of Computer Graphics, p 29 triple[] orthogonal_triple(triple u) { triple e, v, w; u = unit(u); if ( u.x <= u.y && u.x <= u.z) { e = (1, 0, 0); } else if (u.y <= u.x && u.y <= u.z) { e = (0, 1, 0); } else { e = (0, 0, 1); } v = unit(cross((0, 0, 1), u)); w = unit(cross(u, v)); return new triple[] {u, v, w}; }