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 将webGl渲染更改为画布渲染_Three.js - Fatal编程技术网

Three.js 将webGl渲染更改为画布渲染

Three.js 将webGl渲染更改为画布渲染,three.js,Three.js,要生成边界框,我使用以下代码: 'vtk_bounding_box': function(data) { if ((browser == 'explorer') ||(THIS_IS_TOUCH_DEVICE)) return; var geometry = new THREE.Geometry(); var material = new THREE.MeshBasic

要生成边界框,我使用以下代码:

  'vtk_bounding_box': function(data) {  
                    if ((browser == 'explorer') ||(THIS_IS_TOUCH_DEVICE)) return;
                    var geometry = new THREE.Geometry();
                    var material = new THREE.MeshBasicMaterial({color: 0xFF0000,wireframe: true});
                    box_info = '';

                    for (var i = 0; i < 8; i++){
                        box_info += i+': x:'+ data[i].x +'y:'+ data[i].y +'z:'+ data[i].z
                        geometry.vertices.push( new THREE.Vector3( data[i].x - FocalPoint[0],  data[i].y - FocalPoint[1], data[i].z - FocalPoint[2]));                
                    }                   

                    //Making Bounding Box
                    geometry.faces.push( new THREE.Face4(0,1,2,3));                   
                    geometry.faces.push( new THREE.Face4(2,3,4,7)); 
                    geometry.faces.push( new THREE.Face4(4,5,6,7)); 
                    geometry.faces.push( new THREE.Face4(5,6,1,0));
                    geometry.faces.push( new THREE.Face4(1,2,7,6)); 
                    geometry.faces.push( new THREE.Face4(0,3,4,5));

                    mesh = new THREE.Mesh( geometry, material);                 
                    scene.add( mesh );
                },
“vtk\u边界框”:函数(数据){
if((浏览器='explorer')||(这是触摸设备))返回;
var geometry=new THREE.geometry();
var material=new THREE.MeshBasicMaterial({color:0xFF0000,线框:true});
框_信息=“”;
对于(变量i=0;i<8;i++){
框_info+=i+':x:'+data[i].x+'y:'+data[i].y+'z:'+data[i].z
geometry.vertices.push(新的三个.Vector3(数据[i].x-FocalPoint[0],数据[i].y-FocalPoint[1],数据[i].z-FocalPoint[2]);
}                   
//制作包围盒
几何面推(新的三面4(0,1,2,3));
几何面推(新的三面4(2,3,4,7));
几何面推(新的三面4(4,5,6,7));
几何面推(新的三面4(5,6,1,0));
几何面推(新的三面4(1,2,7,6));
几何面推(新的三面4(0,3,4,5));
网格=新的三个网格(几何体、材质);
场景。添加(网格);
},

当我将渲染类型从webGl更改为canvas?并且当我旋转它时,模型的一部分有时会消失。我想说的是,它可以显示完整的模型?但是在can drow中旋转一段时间后,只有几行

才能在画布渲染器中工作您需要使材质双面。在r.50中,您这样做:

var material = new THREE.MeshBasicMaterial( { color: 0xFF0000, wireframe: true, side: THREE.DoubleSide } );