2016-12-14 10 views
0

Я - манекен \ новичок в ThreeJS. :)Кубик TrJS автоматически вращается, когда Mesh.position.x отрицательный

В любом случае, я думаю, что это поведение по умолчанию с помощью ThreeJS, когда вы устанавливаете позицию сетки.

Я пытаюсь создать \ реплицировать структуру в ThreeJS, аналогичную структуре разбивки проекта (WBS). См. Рисунок ниже. Все ячейки \ кубы в WBS выровнены.

enter image description here

Это то, что происходит с моим кодом в ThreeJS:

enter image description here

Я создал вспомогательную функцию, называемую createCube, который принимает объект, как это в качестве параметра:

var gestaoProjeto = createCube(
{ face1: { color: 'yellow', text: '1', textColor: 'yellow' }, 
    face2: { text: '2', textColor: 'blue' }, 
    face3: { text: '3', textColor: 'black' }, 
    face4: { text: '4', textColor: 'cyan' }, 
    face5: { color: 'red', text: 'Gestão do Projeto', textColor: 'yellow' }, 
    face6: { text: '6', textColor: 'gray' }, 
    x: -400, 
    y: 125 
}); 

Я хотел бы иметь красное лицо куба перед камерой \ пользователь и иметь его в m ove с OrbitControls, только если пользователь взаимодействует со сценой. Как вы можете видеть на изображении выше, часть face1 (желтая) уже показана, а face5 повернут.

Если я:

gestaoProjeto.rotation.set(-0.1,0.5,0); 

Он вращается, но это не очень хорошо, и я должен вращаться каждый кубик в зависимости от их положения.

Можно ли добиться того, что я хочу «автоматически»?

ответ

1

Пользователь bai at ThreeJS IRC Channel ответил и был на месте.

Он сказал мне использовать OrthographicCamera вместо PerspectiveCamera, который используется большую часть времени в образцах.


Для тех, кто заинтересован в каком-то фоне, здесь идет действительно хорошее объяснение о типах камер:

Для того, чтобы эти ячеи быть оказаны, камеры должны быть помещены, чтобы сказать визуализатор, как они должны быть просмотренным. Three.js имеет два типа камер, орфографических и перспективных. Ортографические проекции устраняют перспективу, отображая все объекты в одном масштабе, независимо от того, насколько они находятся далеко от камеры. Это полезно для инженерии, поскольку разные размеры из-за перспективы могут затруднить различение размера объекта. Вы могли бы распознавать орфографические проекции в любых направлениях для сборки мебели или моделей автомобилей. Перспективная камера включает в себя свойства для ее местоположения относительно сцены и, как следует из ее названия, может отображать размер модели, основываясь на расстоянии свойств от камеры. Камеры управляют смотровой усечкой или видимой областью сцены. Просмотр усечения может быть изображен как поле, определяемое его ближними и дальними свойствами (плоскость, где область начинается и останавливается), наряду с «соотношением сторон», которое определяет размеры окна. Любой объект, который существует вне пространства просмотра frustum, не нарисован в сцене, но все же отображается.

Источник: https://www.smashingmagazine.com/2013/09/introduction-to-polygonal-modeling-and-three-js/#cameras

 Смежные вопросы

  • Нет связанных вопросов^_^