我是靠谱客的博主 美满吐司,最近开发中收集的这篇文章主要介绍3D Builder3D Builder,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

3D Builder

3D Builder在win10应用商店可以下载到,可以把2D图像转化成3D。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

center 不在中央的问题。可以用mashlab来修复。或者使用box来移动。

var bbox = new THREE.Box3().setFromObject(object);
var x = (bbox.max.x - bbox.min.x)/2 ;
var y = (bbox.max.y - bbox.min.y)/2;
var z = (bbox.max.z - bbox.min.z)/2
var mat4 = new THREE.Matrix4();
mat4.makeTranslation(-x,-y,-z);
object.applyMatrix(mat4);

测试一下发现,x轴有偏移。这个偏移量怎么找出来呢(原来是我的图片虽然是png的但是左边有空白的,所以出现了这个偏移。应该刚好裁剪到图像的大小,不留空白。)。想设置geometry.center,但是子对象比较复杂。

在这里插入图片描述
所以我又添加了一个BoxHelper.

var bbox = new THREE.Box3().setFromObject(object);
var boxHelp = new THREE.BoxHelper(object);
var x = boxHelp.geometry.boundingSphere.center.x;
var y = boxHelp.geometry.boundingSphere.center.y;
var z = boxHelp.geometry.boundingSphere.center.z;

这么看来,我是用Box3计算出了盒子的8个顶点的x,y,z的最大值,和最小值,共六个值。但是没有center的值,这个值可以用来作为缩放物体的参数。
我用BoxHelper找出了盒子的中心,然后安装这个坐标移动物体到原点。
还不知道怎么更新本地坐标系。所以我添加一个新的object。把物体add进去,以后再操作这个object就可以了,不用管子对象的矩阵了。

最后

以上就是美满吐司为你收集整理的3D Builder3D Builder的全部内容,希望文章能够帮你解决3D Builder3D Builder所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部