修改了ShortCutTree部分的线部分索引

TaoZhang-Branch
yang.yongquan 2023-02-25 17:08:45 +08:00
parent b2803f777a
commit 4d9fe01fe9
1 changed files with 19 additions and 7 deletions

View File

@ -112,10 +112,8 @@ void ShortCutTree::generateShortCutSegment(ShortCutNode& nowTreeNode) {
}
for (auto& iter : pointSet) {
nowTreeNode.lineSet.push_back(numLine);
lineIndexs.push_back(iter.first);
lineIndexs.push_back(iter.first);
lineIndexs.push_back(iter.second);
lineIndexs.push_back(iter.second);
lineIndexs.push_back((iter.first << 16) + iter.first);
lineIndexs.push_back((iter.second << 16) + iter.second);
numLine++;
}
}
@ -149,14 +147,28 @@ bool ShortCutTree::handleShortCutNode(ShortCutNode& fa, ShortCutNode& nowTreeNod
}
void ShortCutTree::simplifyLineVector() {
bool canPut = false;
GLuint index = 0;
numLine = allLines.size();
for (auto& nowLine : allLines) {
PointVector pointVector = nowLine->toPointVector();
canPut = false;
index = 0;
for (Point& p : pointVector) {
int pointIndex = getPointIndex(p);
lineIndexs.push_back(pointIndex);
if (pointVector.size() == 2)
lineIndexs.push_back(pointIndex);
if (pointVector.size() == 2) {
index = (pointIndex << 16) + pointIndex;
lineIndexs.push_back(index);
}
else {
index <<= 16;
index += pointIndex;
if (canPut) {
lineIndexs.push_back(index);
index = 0;
}
canPut = !canPut;
}
}
}
for (auto& nowTreeNode : restOfTreeNodes) {