#include "Rectangle3.h" namespace GtpVisibilityPreprocessor { void Rectangle3::Split(const int axis, Rectangle3 &r1, Rectangle3 &r2 ) const { if (axis==0) { Vector3 v1 = (mVertices[0] + mVertices[1])*0.5f; Vector3 v2 = (mVertices[2] + mVertices[3])*0.5f; r1.mVertices[0] = mVertices[0]; r1.mVertices[1] = v1; r1.mVertices[2] = v2; r1.mVertices[3] = mVertices[3]; r2.mVertices[0] = v1; r2.mVertices[1] = mVertices[1]; r2.mVertices[2] = mVertices[2]; r2.mVertices[3] = v2; } else { Vector3 v1 = (mVertices[0] + mVertices[3])*0.5f; Vector3 v2 = (mVertices[1] + mVertices[2])*0.5f; r1.mVertices[0] = mVertices[0]; r1.mVertices[1] = mVertices[1]; r1.mVertices[2] = v2; r1.mVertices[3] = v1; r2.mVertices[0] = v1; r2.mVertices[1] = v2; r2.mVertices[2] = mVertices[2]; r2.mVertices[3] = mVertices[3]; } } }