Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

Commit a302ae08 authored by ESTERIE Pierre's avatar ESTERIE Pierre
Browse files

Fix issue #22

parent 51bffbd4
......@@ -738,7 +738,7 @@ public:
CellClass* getCell(const MortonIndex inIndex, const int inLevel) const{
SubOctreeTypesConst workingTree;
workingTree.tree = this->root;
const MortonIndex treeSubLeafMask = ~(~0x00LL << (3 * workingTree.tree->getSubOctreeHeight() ));
const MortonIndex treeSubLeafMask = ~(~0ULL << (3 * workingTree.tree->getSubOctreeHeight() ));
// Find the suboctree a the correct level
while(inLevel >= workingTree.tree->getSubOctreeHeight() + workingTree.tree->getSubOctreePosition()) {
......@@ -750,7 +750,7 @@ public:
}
// compute correct index in the array
const MortonIndex treeLeafMask = ~(~0x00LL << (3 * (inLevel + 1 - workingTree.tree->getSubOctreePosition()) ));
const MortonIndex treeLeafMask = ~(~0ULL << (3 * (inLevel + 1 - workingTree.tree->getSubOctreePosition()) ));
return workingTree.tree->cellsAt(inLevel - workingTree.tree->getSubOctreePosition())[treeLeafMask & inIndex];
}
......@@ -817,7 +817,7 @@ public:
SubOctreeTypesConst workingTree;
workingTree.tree = this->root;
const MortonIndex treeMiddleMask = ~(~0x00LL << (3 * workingTree.tree->getSubOctreeHeight() ));
const MortonIndex treeMiddleMask = ~(~0ULL << (3 * workingTree.tree->getSubOctreeHeight() ));
// Find the suboctree a the correct level
while(inLevel >= workingTree.tree->getSubOctreeHeight() + workingTree.tree->getSubOctreePosition()) {
......@@ -830,12 +830,12 @@ public:
// Be sure there is a parent allocated
const int levelInTree = inLevel - workingTree.tree->getSubOctreePosition();
if( levelInTree && !workingTree.tree->cellsAt(levelInTree - 1)[~(~0x00LL << (3 * levelInTree )) & (inIndex>>3)]){
if( levelInTree && !workingTree.tree->cellsAt(levelInTree - 1)[~(~0ULL << (3 * levelInTree )) & (inIndex>>3)]){
return nullptr;
}
// compute correct index in the array and return the @ in array
const MortonIndex treeLeafMask = ~(~0x00LL << (3 * (levelInTree + 1 ) ));
const MortonIndex treeLeafMask = ~(~0ULL << (3 * (levelInTree + 1 ) ));
return &workingTree.tree->cellsAt(levelInTree)[treeLeafMask & inIndex];
}
......@@ -1298,7 +1298,7 @@ public:
ContainerClass* getLeafSrc(const MortonIndex inIndex){
SubOctreeTypes workingTree;
workingTree.tree = this->root;
const MortonIndex treeSubLeafMask = ~(~0x00LL << (3 * workingTree.tree->getSubOctreeHeight() ));
const MortonIndex treeSubLeafMask = ~(~0ULL << (3 * workingTree.tree->getSubOctreeHeight() ));
// Find the suboctree a the correct level
while(leafIndex >= workingTree.tree->getSubOctreeHeight() + workingTree.tree->getSubOctreePosition()) {
......@@ -1310,7 +1310,7 @@ public:
}
// compute correct index in the array
const MortonIndex treeLeafMask = ~(~0x00LL << (3 * (leafIndex + 1 - workingTree.tree->getSubOctreePosition()) ));
const MortonIndex treeLeafMask = ~(~0ULL << (3 * (leafIndex + 1 - workingTree.tree->getSubOctreePosition()) ));
return workingTree.leafTree->getLeafSrc(int(treeLeafMask & inIndex));
}
......
......@@ -65,7 +65,7 @@ protected:
// Remove right useless part - used by child
const MortonIndex fullIndex = index >> (3 * (inTreeHeight - (this->subOctreeHeight + this->subOctreePosition) ) );
// Remove left extra data part - used by parent
const MortonIndex treeLeafMask = ~(~0x00LL << (3 * this->subOctreeHeight ));
const MortonIndex treeLeafMask = ~(~0ULL << (3 * this->subOctreeHeight ));
return treeLeafMask & fullIndex;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment