Three.js 可以是倾斜平面';s坐标系可以改变吗?
我向场景中添加了一个新的THREE.PlaneGeometry(),它在XY平面中垂直显示在[0,0,0],其法线朝向+Z轴。然后,我发出plane.rotation.x=-Math.PI/2来放下平面,使其法线现在朝上 我遇到的问题是,现在平面的+Y轴沿全局-Z轴定向 由于该平面表示地形,因此我希望能够调整顶点的高度以模拟海平面以上的高度(高度)。因此,我希望能够在代码中编写如下内容:Three.js 可以是倾斜平面';s坐标系可以改变吗?,three.js,coordinate-systems,Three.js,Coordinate Systems,我向场景中添加了一个新的THREE.PlaneGeometry(),它在XY平面中垂直显示在[0,0,0],其法线朝向+Z轴。然后,我发出plane.rotation.x=-Math.PI/2来放下平面,使其法线现在朝上 我遇到的问题是,现在平面的+Y轴沿全局-Z轴定向 由于该平面表示地形,因此我希望能够调整顶点的高度以模拟海平面以上的高度(高度)。因此,我希望能够在代码中编写如下内容: plane.geometry.vertices[i].y = 3; …但这样做只是沿Z轴移动顶点-3个单位
plane.geometry.vertices[i].y = 3;
…但这样做只是沿Z轴移动顶点-3个单位,使平面像大头钉一样平
我可以为自己编写一个抽象函数来映射坐标,但我不希望这样做,因为它会添加代码并妨碍对数据结构的直接访问(这在实验中很好)
是否有某种方法可以永久更改平面的坐标系,使其与全局坐标系匹配?这样plane.geometry.Vertexs[i].y++实际上会在地形中产生凹凸吗
干杯。在创建网格之前,不要旋转网格,而是对几何体本身进行旋转
geometry.applyMatrix( new THREE.Matrix4().makeRotationX( - Math.PI / 2 ) );
3.js r.58