// if there is last face in the horizon, then need to add another connectivity, i.e. the edge connecting the current new add edge and the last new add edge.
// This does not finish all the connectivities because the final face need to connect with the first face, this will be handled in the evaluate function.
// Notice the face is anti-clockwise, so the edges are 0 (bottom), 1 (right), 2 (left)
if(horizon.cf)
bind(nf,2,horizon.cf,1);
else
horizon.ff=nf;
horizon.cf=nf;
++horizon.nf;
returntrue;
}
}
else// case 2: the new face is coplanar with the old face f. We need to add two faces and delete the old face
// if there is last face in the horizon, then need to add another connectivity, i.e. the edge connecting the current new add edge and the last new add edge.
// This does not finish all the connectivities because the final face need to connect with the first face, this will be handled in the evaluate function.
// Notice the face is anti-clockwise, so the edges are 0 (bottom), 1 (right), 2 (left)
if(horizon.cf)
bind(nf,2,horizon.cf,1);
else
horizon.ff=nf;
horizon.cf=nf;
++horizon.nf;
returntrue;
}
returnfalse;
}
// case 2: the new face is coplanar with the old face f. We need to add two faces and delete the old face