Three.js: como redimensionar um objeto 3d em three.js? ? ?

Criado em 31 dez. 2011  ·  10Comentários  ·  Fonte: mrdoob/three.js

Estou tentando desenvolver ferramentas de modelagem 3D usando three.js ......

Acabei de usar seus exemplos para renderizar objetos 3D em plataformas de arame!

agora eu quero redimensionar os objetos 3D usando eventos de arrastar do mouse ou escalando o objeto 3D clicando em um botão!

aguardando sua resposta!

Question

Comentários muito úteis

O objeto Mesh possui a propriedade scale . Basta fazer mesh.scale.x = 2 ou mesh.scale.set( 2, 1, 1 ) .

Todos 10 comentários

O objeto Mesh possui a propriedade scale . Basta fazer mesh.scale.x = 2 ou mesh.scale.set( 2, 1, 1 ) .

tenho o mesmo problema do cara ali: http://stackoverflow.com/questions/19150120/scaling-an-object-in-three-js

no momento em que mudo de escala, fico inundado com:
"Matrix3.getInverse (): não é possível inverter a matriz, o determinante é 0"
em three-r73.js: 4482: 5

Recebo o mesmo erro. Usando THREE.CylinderGeometry

@gunderson Tente stackoverflow se precisar de ajuda.

Se você tiver um grupo de objetos, tente adicioná-los a um grupo como _rendering pai_ e dimensionar o pai ...

const renderingParent = new THREE.Group();
// ...
renderingParent.scale.set(2,1,1);
renderingParent.add(groupOfObjects);

E se eu estiver mudando constantemente? (Não quero calcular escalas 10 vezes)
Não existe um método que realmente muda a largura e altura da geometria?
Atenciosamente Luis

@luisArandas Por favor, use o fórum ou stackoverflow para pedidos de ajuda.

Para geometrias de caixa, pareça com construtor! == escala. Se eu mudar a escala para x = 1, quando meu objeto for BoxBufferGeometry (1,1,1); mostra REEEEALY diferentes visões de meus objetos. Isso é normal? É realmente esmagar meu jogo, quando após definir o tamanho = -1, meu objeto fica apenas maior.

Aqui estão algumas sessões de tela. Portanto, o primeiro número no console é o tamanho de x, y, z para o cubo do jogador, e quando eu uso
cubeSize.xyz = cubeSize.xyz - 1;
cube.scale.set (cubeSize.xyz, cubeSize.xyz, cubeSize.xyz)
parece que ele ficou do mesmo tamanho depois de ficar menor, mas abaixe com a posição Y e quando eu usar depois
cubeSize.xyz = cubeSize.xyz + 1;
cube.scale.set (cubeSize.xyz, cubeSize.xyz, cubeSize.xyz);
faz com que seja muito mais do que foi definido pela geometria da caixa, no entanto, você não pode ver que a variável torna-se apenas 2 novamente. Eu não posso te dizer o porquê, mas para mim, parece que a escala tem tamanhos diferentes, do que o construtor. Talvez escala seja usar metros e bases geométricas, não sei.
É só pode ser problema meu, ou saco de três js versão 101? (100 na verdade parecem funcionar da mesma forma)
image
image
image

Eu gentilmente sugiro que você, @dygy , mova a pergunta para o fórum se quiser obter uma resposta adequada: https://discourse.threejs.org/

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

jens-duttke picture jens-duttke  ·  3Comentários

ghost picture ghost  ·  3Comentários

seep picture seep  ·  3Comentários

boyravikumar picture boyravikumar  ·  3Comentários

fuzihaofzh picture fuzihaofzh  ·  3Comentários