函数的代码如下:
void divconqrecurse(struct mesh *m, struct behavior *b, vertex *sortarray,
int vertices, int axis,
struct otri *farleft, struct otri *farright)
{
struct otri innerleft, innerright;
int divider;
if (vertices == 2)
{
//结束语句--------对farleft,farright赋值
//用到的相关参数,sortarray,m,b;
return;
}
else if (vertices == 3)
{
//结束语句--------对farleft,farright赋值
//用到的相关参数,sortarray,m,b;
return;
}
else
{
divider = vertices >> 1;
divconqrecurse(m, b, sortarray, divider, 1 - axis, farleft, &innerleft);
divconqrecurse(m, b, &sortarray[divider], vertices - divider, 1 - axis,
&innerright, farright);
mergehulls(m, b, farleft, &innerleft, &innerright, farright, axis);
}
}