Ok since I didn't hear anything I committed the indexing changes I made
to these two files. Basically change edge_set.begin() to &edge_set[0] etc... mein@cs.umn.edu
This commit is contained in:
@@ -408,7 +408,7 @@ DuplicateMesh(
|
|||||||
// duplicate the face data for this face.
|
// duplicate the face data for this face.
|
||||||
o_f_data.Duplicate(i_f_data[*f_faces_it]);
|
o_f_data.Duplicate(i_f_data[*f_faces_it]);
|
||||||
|
|
||||||
output.AddSubTriangle(dup_face,triangle_indices.begin() + i);
|
output.AddSubTriangle(dup_face,&triangle_indices[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -183,9 +183,9 @@ CollapseEdge(
|
|||||||
} else {
|
} else {
|
||||||
// the edge could not be collapsed at the moment - so
|
// the edge could not be collapsed at the moment - so
|
||||||
// we adjust it's priority and add it back to the heap.
|
// we adjust it's priority and add it back to the heap.
|
||||||
m_heap->Remove(edges.begin(),0);
|
m_heap->Remove(&edges[0],0);
|
||||||
edges[heap_top].HeapKey() = - MT_INFINITY;
|
edges[heap_top].HeapKey() = - MT_INFINITY;
|
||||||
m_heap->Insert(edges.begin(),heap_top);
|
m_heap->Insert(&edges[0],heap_top);
|
||||||
}
|
}
|
||||||
|
|
||||||
//clear all the temporary buffers
|
//clear all the temporary buffers
|
||||||
@@ -274,7 +274,7 @@ BuildHeap(
|
|||||||
heap_vector.push_back(i);
|
heap_vector.push_back(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_heap->MakeHeap(edge_set.begin());
|
m_heap->MakeHeap(&edge_set[0]);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@@ -304,7 +304,7 @@ UpdateHeap(
|
|||||||
// inser the new elements into the heap
|
// inser the new elements into the heap
|
||||||
|
|
||||||
for (; edge_it != end_it; ++edge_it) {
|
for (; edge_it != end_it; ++edge_it) {
|
||||||
m_heap->Insert(edge_set.begin(),*edge_it);
|
m_heap->Insert(&edge_set[0],*edge_it);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -315,7 +315,7 @@ UpdateHeap(
|
|||||||
|
|
||||||
for (; edge_it != end_it; ++edge_it) {
|
for (; edge_it != end_it; ++edge_it) {
|
||||||
LOD_Edge &e = edge_set[*edge_it];
|
LOD_Edge &e = edge_set[*edge_it];
|
||||||
m_heap->Remove(edge_set.begin(),e.HeapPos());
|
m_heap->Remove(&edge_set[0],e.HeapPos());
|
||||||
|
|
||||||
e.HeapPos() = 0xffffffff;
|
e.HeapPos() = 0xffffffff;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user