3 void quadsquare::ResetTree()
7 for (i = 0; i < 4; i++)
35 for (level = 0; level < 15; level++)
36 StaticCullAux( cd, ThresholdDetail, level );
39 void quadsquare::StaticCullAux(
const quadcornerdata &cd,
float ThresholdDetail,
int TargetLevel )
45 if (cd.
Level > TargetLevel) {
47 for (j = 0; j < 4; j++) {
51 SetupCornerData( &q, cd, i );
52 Child[i]->StaticCullAux( q, ThresholdDetail, TargetLevel );
61 if (
Child[0] == NULL &&
Child[3] == NULL &&
Error[0]*ThresholdDetail < size) {
63 if ( s == NULL || (s->
Child[1] == NULL && s->
Child[2] == NULL) ) {
65 unsigned short y = (
unsigned short) ( (cd.
Verts[0].
Y+cd.
Verts[3].
Y)*0.5 );
73 if (
Child[2] == NULL &&
Child[3] == NULL &&
Error[1]*ThresholdDetail < size) {
75 if ( s == NULL || (s->
Child[0] == NULL && s->
Child[1] == NULL) ) {
76 unsigned short y = (
unsigned short) ( (cd.
Verts[2].
Y+cd.
Verts[3].
Y)*0.5 );
84 bool StaticChildren =
false;
85 for (i = 0; i < 4; i++)
87 StaticChildren =
true;
91 if (StaticChildren ==
false && cd.
Parent != NULL) {
92 bool NecessaryEdges =
false;
93 for (i = 0; i < 4; i++) {
97 NecessaryEdges =
true;
99 if (!NecessaryEdges) {