之前,我们都是将一个PLY文件对应的图形画出来。
那么,如果一个图形是由多个PLY文件组成的,这样的图形应该怎么画呢???
其实,原理很简单:
1,先将单个PLY文件对应的图形放在一个Grid里面;
2,然后,将所有对应单个PLY文件的Grid添加到一个总的Grid中即可。
以上,需要改动的也只是World::build()中的代码。
相关代码截图如下:
如上是‘平坦着色’的代码。如果要改成‘平滑着色’,只需要将其中的‘read_flat_triangles’改成‘read_smooth_triangles’既可。
相关测试图形如下:
截图中的三个数字表示光源的位置。
第一组:光源位置[13,10,10],前一个是平坦着色,后一个是平滑着色
第二组:光源位置[0,30,10],前一个是平坦着色,后一个是平滑着色
相关代码:
http://download.csdn.net/detail/libing_zeng/9779208
参考书籍:
[1]. Kevin Suffern, Ray Tracing from theGround Up, A K Peters Ltd, 2007.
转载请注明原文地址: https://ju.6miu.com/read-39992.html