Lovelly bug in Interval Tree
This commit is contained in:
parent
e3757770c8
commit
450a816b2b
2 changed files with 8 additions and 3 deletions
|
|
@ -2,6 +2,8 @@
|
|||
|
||||
#include "Tree.hpp"
|
||||
|
||||
#include <limits>
|
||||
|
||||
namespace tp {
|
||||
|
||||
template <typename tType>
|
||||
|
|
@ -31,7 +33,7 @@ namespace tp {
|
|||
|
||||
template <typename tTreeNodeType>
|
||||
inline void updateNodeCache(const tTreeNodeType* node) {
|
||||
mMax = 0;
|
||||
mMax = std::numeric_limits<tType>::min();
|
||||
if (node->mRight && node->mRight->key.mMax > mMax) mMax = node->mRight->key.mMax;
|
||||
if (node->mLeft && node->mLeft->key.mMax > mMax) mMax = node->mLeft->key.mMax;
|
||||
if (mMax < mEnd) mMax = mEnd;
|
||||
|
|
|
|||
|
|
@ -16,8 +16,11 @@ struct Interval {
|
|||
bool ignore = false;
|
||||
|
||||
void random(halnf span, halnf scale = 1.f) {
|
||||
start = ((halnf) randomFloat()) * (span);
|
||||
end = ((halnf) randomFloat()) * (span);
|
||||
auto offset = 0;
|
||||
|
||||
start = ((halnf) randomFloat()) * (span) - offset;
|
||||
end = ((halnf) randomFloat()) * (span) - offset;
|
||||
|
||||
if (start > end) swap(start, end);
|
||||
|
||||
auto len = (end - start) * scale * 0.5f;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue