Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Three.js 具有立方体几何体的threejs绘制工具_Three.js - Fatal编程技术网

Three.js 具有立方体几何体的threejs绘制工具

Three.js 具有立方体几何体的threejs绘制工具,three.js,Three.js,在threejs的帮助下,我正在开发一个素描工具。此工具应允许用户在任何方向绘制立方体。我部分实现了这一点,但仍然当我在负方向缩放对象时,面部颜色会反转。我正在寻找一个解决方案,以避免颜色反转。表示立方体在正缩放和负缩放时应相同 请帮忙 提前谢谢 正向缩放 在负方向缩放 由于绘制立方体并将其缩放到低于,因此将在内部绘制顶点。可以将长方体的材质设置为双面 我假设您使用的是MeshBasicMaterial var material = new THREE.MeshBasicMaterial({s

在threejs的帮助下,我正在开发一个素描工具。此工具应允许用户在任何方向绘制立方体。我部分实现了这一点,但仍然当我在负方向缩放对象时,面部颜色会反转。我正在寻找一个解决方案,以避免颜色反转。表示立方体在正缩放和负缩放时应相同

请帮忙

提前谢谢

正向缩放

在负方向缩放


由于绘制立方体并将其缩放到低于,因此将在内部绘制顶点。可以将长方体的材质设置为双面

我假设您使用的是MeshBasicMaterial

var material = new THREE.MeshBasicMaterial({side:THREE.DoubleSide});
var box = new THREE.Mesh(boxGeometryInstance,  material);

由于绘制立方体并将其缩放到低于,因此将在其内部绘制顶点。可以将长方体的材质设置为双面

我假设您使用的是MeshBasicMaterial

var material = new THREE.MeshBasicMaterial({side:THREE.DoubleSide});
var box = new THREE.Mesh(boxGeometryInstance,  material);

如果负向缩放有不需要的工件,为什么不避免这样做呢?你们的立方体网格是对称的,所以据我所知,并没有理想的行为

换句话说,显示为-50,但按绝对值(50)缩放


如果您确实需要翻转几何体,请看一看。

如果负比例缩放有不需要的瑕疵,为什么不避免这样做呢?你们的立方体网格是对称的,所以据我所知,并没有理想的行为

换句话说,显示为-50,但按绝对值(50)缩放


如果您确实需要几何体翻转,请查看。

谢谢@Selim,但即使在应用此边属性之后,它仍然无法解决问题
cubeGeo=新的三箱几何体(5,5,5);cubeGeo.translate(2.5,2.5,2.5);cubeMaterial=新的3.MeshBasicMaterial();立方材料侧=三个双面;cubeMaterial.transparent=false;立方体材质=[loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/topBottom.jpg')、loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/rightLeft.jpg')
谢谢@Selim,但即使在应用了这个side属性之后,它仍然没有解决问题
cubeGeo=新的三箱几何体(5,5,5);cubeGeo.translate(2.5,2.5,2.5);cubeMaterial=新的3.MeshBasicMaterial();立方材料侧=三个双面;cubeMaterial.transparent=false;立方体材质=[loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/topBottom.jpg')、loadTexture('textures/busrun/rightLeft.jpg')、loadTexture('textures/busrun/rightLeft.jpg')谢谢Paul Jan,此解决方案解决了我的问题。:)谢谢Paul Jan,这个解决方法解决了我的问题。:)