Образовательный виртуальный мир vAcademia

Инструменты пользователя

Инструменты сайта


Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

jazyk:objects [2014/05/16 10:49]
vadmin создано
jazyk:objects [2023/05/08 17:44] (текущий)
Строка 10: Строка 10:
 //​Задание позиции//​ //​Задание позиции//​
   * Способ 1:   * Способ 1:
-obj.position.x = 10; +    * obj.position.x = 10; 
-obj.position.y = 12; +    ​* ​obj.position.y = 12; 
-obj.position.z = 15;+    ​* ​obj.position.z = 15;
   * Способ 2:   * Способ 2:
-obj.position = new Position3D(10,​ 12, 15); +    * obj.position = new Position3D(10,​ 12, 15); 
 //​Чтение (копирование) позиции//​ //​Чтение (копирование) позиции//​
-Способ 1: +  * Способ 1: 
-var x = obj.position.x;​ +    ​* ​var x = obj.position.x;​ 
-var y = obj.position.y;​ +    ​* ​var y = obj.position.y;​ 
-var z = obj.position.z;​ +    ​* ​var z = obj.position.z;​ 
-Способ 2: +  ​* ​Способ 2: 
-var pos = obj.position.clone();​  +    ​* ​var pos = obj.position.clone();​  
-Операции над позицией +//Операции над позицией// 
-Получить длину (модуль вектора) +  ​* ​Получить длину (модуль вектора) 
-pos.length() +    ​* ​pos.length() 
-Нормализовать вектор +  ​* ​Нормализовать вектор 
-pos.normalize() +    ​* ​pos.normalize() 
-Векторное произведение +  ​* ​Векторное произведение 
-pos.cross( new Position3D(0,​0,​1));​ +    ​* ​pos.cross( new Position3D(0,​0,​1));​ 
-Умножить вектор на скаляр +  ​* ​Умножить вектор на скаляр 
-pos.mult( scalar); +    ​* ​pos.mult( scalar); 
-Поделить позицию на число +  ​* ​Поделить позицию на число 
-pos.div(10);​  +    ​* ​pos.div(10);​  
-Интерполяция с другой позицией с коэффициентом koef  +  ​* ​Интерполяция с другой позицией с коэффициентом koef  
-pos.blend(pos2,​ koef); +    ​* ​pos.blend(pos2,​ koef); 
-Узнать угол поворота между вектором и другим вектором +  ​* ​Узнать угол поворота между вектором и другим вектором 
-var ang = pos.angle(pos2); ​+    ​* ​var ang = pos.angle(pos2); ​
  
-3.2. Свойство rotation. +====2. Свойство rotation==== 
-Задание поворота +//Задание поворота// 
-obj.rotation = new Rotation3D(x,​ y, z, angle), где +  ​* ​obj.rotation = new Rotation3D(x,​ y, z, angle), где 
-x, y, z – ось вращения +    ​* ​x, y, z – ось вращения 
-angle – угол в градусах+    ​* ​angle – угол в градусах
  
-Внимание! Не следует пытаться задать отдельные компоненты поворота,​ это будет работать неправильно,​ т.к. фактически поворот является кватернионом,​ который для правильного использования должен быть постоянно в нормализованном состоянии. Нормализация производится после изменения каждого компонента.+//**Внимание!** Не следует пытаться задать отдельные компоненты поворота,​ это будет работать неправильно,​ т.к. фактически поворот является кватернионом,​ который для правильного использования должен быть постоянно в нормализованном состоянии. Нормализация производится после изменения каждого компонента.//
  
-Чтение (копирование) поворота +//Чтение (копирование) поворота// 
-Способ 1: +  ​* ​Способ 1: 
-var x = obj.rotation.x;​ +    ​* ​var x = obj.rotation.x;​ 
-var y = obj.rotation.y;​ +    ​* ​var y = obj.rotation.y;​ 
-var z = obj.rotation.z;​  +    ​* ​var z = obj.rotation.z;​  
-var angle = obj.rotation.w;​ +    ​* ​var angle = obj.rotation.w;​ 
-Способ 2: +  ​* ​Способ 2: 
-var rtn = obj.rotation.clone();​  +    ​* ​var rtn = obj.rotation.clone();​  
-Операции над поворотом +//Операции над поворотом// 
-Прибавить один поворот к другому +  ​* ​Прибавить один поворот к другому 
-rtn.mult(rotation2);​ +    ​* ​rtn.mult(rotation2);​ 
-Повернуть позицию вокруг начала координат +  ​* ​Повернуть позицию вокруг начала координат 
-pos.mult(rotation);​ +    ​* ​pos.mult(rotation);​ 
-Обратный поворот +  ​* ​Обратный поворот 
-rotation. conjugate();​ +    ​* ​rotation. conjugate();​ 
-Интерполяция с коэффициентом koef  +  ​* ​Интерполяция с коэффициентом koef  
-rotation.blend(secondRTN,​ koef); ​+    ​* ​rotation.blend(secondRTN,​ koef); ​
  
-3.3. Свойство scale. +====3. Свойство scale==== 
-Задание масштаба +//Задание масштаба// 
-Способ 1: +  ​* ​Способ 1: 
-obj.scale.x = 10; +    ​* ​obj.scale.x = 10; 
-obj.scale.y = 12; +    ​* ​obj.scale.y = 12; 
-obj.scale.z = 15; +    ​* ​obj.scale.z = 15; 
-Способ 2: +  ​* ​Способ 2: 
-obj.scale = new Scale3D(10, 12, 15);  +    ​* ​obj.scale = new Scale3D(10, 12, 15);  
-Чтение (копирование) масштаба +//Чтение (копирование) масштаба// 
-Способ 1: +  ​* ​Способ 1: 
-var x = obj.scale.x;​ +    ​* ​var x = obj.scale.x;​ 
-var y = obj.scale.y;​ +    ​* ​var y = obj.scale.y;​ 
-var z = obj.scale.z;​  +    ​* ​var z = obj.scale.z;​  
-Способ 2: +  ​* ​Способ 2: 
-var scl = obj.scale.clone(); ​+    ​* ​var scl = obj.scale.clone(); ​
  
jazyk/objects.1400222974.txt.gz · Последние изменения: 2023/05/08 17:36 (внешнее изменение)