我正在使用此代码Panorama,并且想要在此全景图的地板上添加图片。有人可以指导我如何做到这一点。图片非常小(256x256)

最佳答案

为了在地板上添加图像,您应该创建一个PlaneGeometry,一个MeshBasicMaterial,然后将它们应用于网格,然后更改position和rotationOnAxis。

例:

var geometry = new THREE.PlaneGeometry( 1, 1 );
var material = new THREE.MeshBasicMaterial( { map : texture, opacity : 1, side : THREE.DoubleSide, transparent : true } );
var sprite = new THREE.Mesh( geometry, material );


通过纹理加载器添加的纹理是您要插入的图像。

然后,必须通过position.set函数设置子画面的位置。

要将精灵设置为北:

sprite.position.set(0,-360,0);


要将精灵放置在南方:

sprite.position.set(0,360,0);


最后一步是将Sprite旋转90度以使其可见,因为否则它将像这样|并不是 [] 。所以我们必须做一个rotateOnAxis:

sprite.rotateOnAxis(  new THREE.Vector3( 1, 0, 0 ), THREE.Math.degToRad(90) );


如果图像太小,可以使用:

sprite.scale.set( scaleValue, scaleValue, scaleValue );


其中scaleValue是大于0的值。

关于javascript - three.js:在全景图的地板上添加图片,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30802209/

10-14 22:58
查看更多