Практически для каждой программы на черепашках или роботах требуется класс 3d вектора. Раньше я пользовался классом vector из СС, но решил расширить функционал. Взяв за основу готовый код для 2д вектора, я написал свой.
Кроме стандартных функций +, -, / и * так же реализовано:
Быстрые арифметические операции между векторами и скалярами
Повороты вокруг осей
Проверка на входные параметры
Полезные функции в роде unpack()
Код вектора:
Для подключения в свой код используйте функцию require (для ОС), или оберните в функцию как это сделано здесь:
http://pastebin.com/2t1rqjek
Пример использования:
Пишите если пригодился, или если нашли ошибку.