Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
169 views
in Technique[技术] by (71.8m points)

javascript - How to update vertices geometry after rotate or move object

I can use position & rotation values to transform a mesh.

Ok, I see how the changes looks right but I'd want a way to transform the geometry vertices x,y,z, freeing and/or reseting the rotation & position values. I dont't know how to do it....

I have played with :

myobj.applymatrix();
myobj.matrixAutoUpdate = false;
myobj.verticesNeedUpdate; 

instead of setting position & rotation, but the result is the same: Yes, the changes are right but the internal geometry did not change.

Have I to apply the geometric transform to vertices manually ?

Any help would be appreciated!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

If you want to transform the vertices of your geometry, use this pattern:

mesh.updateMatrix(); 
mesh.geometry.applyMatrix( mesh.matrix );
mesh.matrix.identity();

Then reset the position, rotation, and scale properties to their initial values:

mesh.position.set( 0, 0, 0 );
mesh.rotation.set( 0, 0, 0 );
mesh.scale.set( 1, 1, 1 );

three.js r.85


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...