最近小半年基本就把UE4绘制户型这个一个模块写得差不多了,因为最近处于离职交接状态,所以来总结一下心得。
画户型是一个在家装行业经常使用的功能,主要是通过用户在2D平面绘制墙体,然后快速得到3D的物体。目前完成的2D界面效果如下图。功能包括墙体的增删,门窗柱子等的增删改,操作撤销等等。
在开发过程中确实遇到了不少问题。下面主要列举几个主要会遇到的问题。
1.如何寻找密闭空间?
在网上查找了不少资料,这里给出一些链接。
http://blog.csdn.net/qq_22824481/article/details/66477426;这个算法的主要思路类似于寻路,但是这种方式存在各种特殊情况,需要做大量的判断。
http://www.docin.com/p-753529280.html。
最后我的解决方案的主要思想是,每一条线进行“加粗”,然后通过“连接点”来计算加粗后的线段应该有哪些交点。然后再通过交点来重组线段。重组后的线段应该是两两相连,并且相连的线段必定构成密闭空间。