GizmoBuilder

GizmoBuilder

GizmoBuilder – вспомогательный класс, конструирующий GizmoControl с реализацией по умолчанию.

export class GizmoBuilder {
  public static build(camera: THREE.Camera, navAgent: INavigationAgent, translation: GizmoAxisDir = GizmoAxisDir.XYZ, rotation: GizmoAxisDir = GizmoAxisDir.XYZ, scale: GizmoAxisDir = GizmoAxisDir.XYZ): GizmoControl;

  public static buildTranslationAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, handleHoveredMaterial?: THREE.Material, handleSelectedMaterial?: THREE.Material,
    pickerBaseMatrial?: THREE.Material, pickerHoveredMaterial?: THREE.Material, pickerSelectedMaterial?: THREE.Material
  ): GizmoAxis;

  public static buildRotationAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, handleHoveredMaterial?: THREE.Material, handleSelectedMaterial?: THREE.Material,
    pickerBaseMatrial?: THREE.Material, pickerHoveredMaterial?: THREE.Material, pickerSelectedMaterial?: THREE.Material
  ): GizmoAxis;

  public static buildScaleAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, handleHoveredMaterial?: THREE.Material, handleSelectedMaterial?: THREE.Material,
  ): GizmoAxis;

Методы

build()

Строит GizmoControl с реализацией по умолчанию.

public static build(camera: THREE.Camera, navAgent: INavigationAgent, 
  translation: GizmoAxisDir, 
  rotation: GizmoAxisDir, 
  scale: GizmoAxisDir): GizmoControl;

где:
camera – камера, используемая для отрисовки GizmoControl на сцене. Подробнее: THREE.Camera.

navAgent – агент навигации. Подробнее: INavigationAgent..

translation – перечисление осей переноса, которые необходимо добавить в контроллер. Не обязательный параметр. По умолчанию GizmoAxisDir.XYZ.

rotation – перечисление осей вращения, которые необходимо добавить в контроллер. Не обязательный параметр. По умолчанию GizmoAxisDir.XYZ.

scale – перечисление осей масштабирования, которые необходимо добавить в контроллер. Не обязательный параметр. По умолчанию GizmoAxisDir.XYZ.

Возвращает объект GizmoControl.

buildTranslationAxis()

Строит ось переноса с реализацией по умолчанию. Подробнее GizmoTranslationAxis

  public static buildTranslationAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, 
    handleHoveredMaterial?: THREE.Material, 
    handleSelectedMaterial?: THREE.Material,
    pickerBaseMatrial?: THREE.Material, 
    pickerHoveredMaterial?: THREE.Material, 
    pickerSelectedMaterial?: THREE.Material
  ): GizmoAxis

где:
axisDir – направление оси переноса в локальных координатах. Подробнее: THREE.Vector3.

navAgent – агент навигации. Подробнее: INavigationAgent.

handleBaseMatrial – базовый материал handle - геометрии. Не обязательный параметр. По умолчанию: GizmoMaterials.gizmoMaterial.

handleHoveredMaterial – материал handle - геометрии, при активном ховере. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellow.

handleSelectedMaterial – материал handle - геометрии, при активной манипуляции над осью. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellow.

pickerBaseMatrial – базовый материал picker - геометрии. По умолчанию: GizmoMaterials.matInvisible.

pickerHoveredMaterial – материал picker - геометрии, при активном ховере. Не обязательный параметр. По умолчанию: GizmoMaterials.matInvisible.

pickerSelectedMaterial – материал picker - геометрии, при активной манипуляции над осью.GizmoMaterials.matInvisible.

Возвращает объект GizmoAxis.

buildRotationAxis()

Строит ось вращения с реализацией по умолчанию. Подробнее GizmoRotationAxis

  public static buildRotationAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, 
    handleHoveredMaterial?: THREE.Material, 
    handleSelectedMaterial?: THREE.Material,
    pickerBaseMatrial?: THREE.Material, 
    pickerHoveredMaterial?: THREE.Material, 
    pickerSelectedMaterial?: THREE.Material
  ): GizmoAxis

где:
axisDir – направление оси вращения в локальных координатах. Подробнее: THREE.Vector3.

navAgent – агент навигации. Подробнее: INavigationAgent.

handleBaseMatrial – базовый материал handle - геометрии. Не обязательный параметр. По умолчанию: GizmoMaterials.gizmoMaterial.

handleHoveredMaterial – материал handle - геометрии, при активном ховере. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellow.

handleSelectedMaterial – материал handle - геометрии, при активной манипуляции над осью. Не обязательный параметр. По умолчанию: GizmoMaterials.matViolet.

pickerBaseMatrial – базовый материал picker - геометрии. По умолчанию: GizmoMaterials.matInvisible.

pickerHoveredMaterial – материал picker - геометрии, при активном ховере. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellowTransparent.

pickerSelectedMaterial – материал picker - геометрии, при активной манипуляции над осью.GizmoMaterials.matYellowTransparent.

Возвращает объект GizmoAxis.

buildScaleAxis()

Строит ось масштабирования с реализацией по умолчанию. Подробнее GizmoScaleAxis

  public static buildScaleAxis(axisDir: THREE.Vector3,
    handleBaseMatrial?: THREE.Material, 
    handleHoveredMaterial?: THREE.Material, 
    handleSelectedMaterial?: THREE.Material
  ): GizmoAxis

где:
axisDir – направление оси вращения в локальных координатах. Подробнее: THREE.Vector3.

navAgent – агент навигации. Подробнее: INavigationAgent.

handleBaseMatrial – базовый материал handle - геометрии. Не обязательный параметр. По умолчанию: GizmoMaterials.gizmoMaterial.

handleHoveredMaterial – материал handle - геометрии, при активном ховере. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellow.

handleSelectedMaterial – материал handle - геометрии, при активной манипуляции над осью. Не обязательный параметр. По умолчанию: GizmoMaterials.matYellow.

Возвращает объект GizmoAxis.

GizmoAxisDir

Направление осей GizmoControl, используемые в GizmoBuilder.

export enum GizmoAxisDir {
  // Не строить данный тип осей
  NONE = 0,
  // Строить ось X
  X = 1 << 0,
  // Строить ось Y
  Y = 1 << 1,
  // Строить ось Z
  Z = 1 << 2,
  // Строить ось X и ось Y
  XY = X | Y,
  // Строить ось Y и ось Z
  YZ = Y | Z,
  // Строить ось X и ось Y
  XZ = X | Z,
  // Строить оси X, Y и Z
  XYZ = X | Y | Z
}