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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.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 线框视图不显示模型_Three.js - Fatal编程技术网

Three.js 线框视图不显示模型

Three.js 线框视图不显示模型,three.js,Three.js,我正在使用对象加载程序加载一个基本的立方体(几何体),我想得到一个线框视图 它没有出现 当我使用来自three.js原语的(otherGeometry)时,它会使用以下代码将其渲染得很好: <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/90/three.min.js"></script> <script src="https://threejs.org/examples/js/control

我正在使用对象加载程序加载一个基本的立方体(几何体),我想得到一个线框视图

它没有出现

当我使用来自three.js原语的(otherGeometry)时,它会使用以下代码将其渲染得很好:

<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/90/three.min.js"></script>
<script src="https://threejs.org/examples/js/controls/OrbitControls.js"></script>
<script src="https://threejs.org/examples/js/loaders/OBJLoader.js"></script>

var material = new THREE.MeshBasicMaterial({color: 0xffffff});
var objLoader = new THREE.OBJLoader();

var geometry = objLoader.parse(testObj);
var otherGeometry = new THREE.BoxGeometry(100, 100, 5);

var geo = new THREE.WireframeGeometry(geometry);
var mat = new THREE.LineBasicMaterial({color: 0xff0000, linewidth: 1});
var wireframe = new THREE.LineSegments(geo, mat);
scene.add(wireframe);

var testObj = `# cube.obj
#
g cube

v  0.0  0.0  0.0
v  0.0  0.0  1.0
v  0.0  1.0  0.0
v  0.0  1.0  1.0
v  1.0  0.0  0.0
v  1.0  0.0  1.0
v  1.0  1.0  0.0
v  1.0  1.0  1.0

vn  0.0  0.0  1.0
vn  0.0  0.0 -1.0
vn  0.0  1.0  0.0
vn  0.0 -1.0  0.0
vn  1.0  0.0  0.0
vn -1.0  0.0  0.0

f  1//2  7//2  5//2
f  1//2  3//2  7//2 
f  1//6  4//6  3//6 
f  1//6  2//6  4//6 
f  3//3  8//3  7//3 
f  3//3  4//3  8//3 
f  5//5  7//5  8//5 
f  5//5  8//5  6//5 
f  1//4  5//4  6//4 
f  1//4  6//4  2//4 
f  2//1  6//1  8//1 
f  2//1  8//1  4//1`;

var material=new THREE.MeshBasicMaterial({color:0xffffff});
var objLoader=new THREE.objLoader();
var geometry=objLoader.parse(testObj);
var otherGeometry=新的三个.BoxGeometry(1001005);
var geo=新的三个线框几何体(几何体);
var mat=新的三线基本材质({颜色:0xff0000,线宽:1});
var线框=新的三条线段(geo、mat);
场景.添加(线框);
var testObj=`#cube.obj
#
g立方体
V0.0.0.0
V0.0.01.0
V0.01.0.0
V0.01.01.0
V1.0.0.0.0
V1.0.01.0
V1.01.0.0
V1.01.01.0
vn 0.0 0.0 1.0
vn 0.0 0.0-1.0
vn 0.0 1.0 0.0
VN0.0-1.0.0
vn 1.0.0.0
vn-1.0.0.0
f 1//2 7//2 5//2
f 1//2 3//2 7//2
f 1//6 4//6 3//6
f 1//6 2//6 4//6
f 3//3 8//3 7//3
f 3//3 4//3 8//3
f 5//5 7//5 8//5
f 5//5 8//5 6//5
f 1//4 5//4 6//4
f 1//4 6//4 2//4
F2//16//18//1
f2//18//14//1`;
OBJLoader.parse()
不返回几何体,而是返回
THREE.Group
的实例。在特定情况下,必须选择第一个子对象的几何图形

var group = objLoader.parse( testObj )
var geometry = group.children[ 0 ].geometry;
塔达!一个奇妙的线框出现了◕‿‿◕。)


现场演示:

感谢您的帮助!哦!对不起-是“滴答声”!我正在寻找答案末尾的按钮-