3D模型浏览器的实现思路

Posted 早上吃什么

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3D模型浏览器的实现思路相关的知识,希望对你有一定的参考价值。

前段时间正好浏览了数据结构中关于图的部分,突然就意识到一个问题,3D模型就是用无向图来存储的。仔细想一想是不是这样呢? 一个3D模型去掉材质之后剩下的部分就是点以及点和点之间的连线了,点我们用三维坐标表示即可,假设一个模型有6个点构成,那么我们就存储这N个点的坐标,p1(x1,y1,z1),p2(x2,y2,z2),... 一直到p6(xn,yn,zn)。好了现在三维空间中已经有了6个点了,但是如果没有将这些点连接起来就不会形成模型了,那怎么表示某个点与某个点之间是连接的呢?用无向图即可。

无向图是个什么意思呢?假设空间中有6个点,分别为p1到p6,如果点p1和点p2之间有连线则用1表示,如果没有连线则用0表示,所以模型之间点的关系就可以用一个表格来表示,表格是用数组来存储的。

 

 

根据上面这个表就可以画出一个模型了,想象一下p1~p6是三维空间中的点。

 

 

 

所以,如果想开发一个很简单的建模软件,只需要保存点的坐标和坐标之间的关系即可,导出这些数据。如果想开发一个很简单的模型浏览软件,只需要读取这些数据即可。

 

以上是关于3D模型浏览器的实现思路的主要内容,如果未能解决你的问题,请参考以下文章

创建动态简单 3d 模型并在 Web 浏览器中更新

怎样在网页上实现3D效果?

尝试通过模型实现自动导航或在 viewer3d 中对模型进行演练

three.js学习笔记 之一(ITAEM团队学习分享)

3D模型在线查看利器多种格式

3D模型在线查看利器多种格式