模型自动居中

思路,通过BoundingBoxHelper取模型的中心位置坐标,然后根据坐标设置偏移量,设置偏移方向即可。
<div><img src="file:///C:\Users\sbtr\Documents\Tencent Files\451677917\Image\Group\Image1\%)DKD{~ILKI6NRIY07OP)MU.png" alt="" /></div>
var hex  = 0xff0000;     
            var MD_Length,MD_Width,MD_height;//记录长宽高
        	var BaxH = new THREE.BoundingBoxHelper(Load_Model,hex);//创建BoundingBoxHelper
        	BaxH.update();//更新
        	scene.add( BaxH ); //添加到场景中
        	MD_Length=BaxH.box.max.x-BaxH.box.min.x; //长
        	MD_Width=BaxH.box.max.z-BaxH.box.min.z;//宽
        	MD_height=BaxH.box.max.y-BaxH.box.min.y;//高

        	//计算模型中心位置
        	var Cx,Cy,Cz;
        	Cx=BaxH.box.min.x+MD_Length/2;
        	Cz=BaxH.box.min.z+MD_Width/2;
        	Cy=BaxH.box.min.y+MD_height/2;
        	//添加并设置group坐标位置
        	var group=new THREE.Group();
            scene.add(group);
        	group.position.set(0,0,0);
        	group.add(Load_Model);//将模型加入到group中
        	
        	//计算新模型新位置 根据模型中心位置设置偏移方向
        	var NewX,NewY,NewZ;
        	if(Cx>=0){
        		NewX=-Cx;        	   
        	}else{
        		NewX=Cx;
        	}
        	if(Cy>=0){
        		NewY=-Cy;
        	}else{
        		NewY=Cy;
        	}
        	if(Cz>=0){
        		NewZ=-Cz;
        	}else{
        		NewZ=Cz;
        	}
        	Load_Model.position.set(NewX,NewY,NewZ);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值