Definition at line 1628 of file gserialized_gist_2d.c.
References ConsiderSplitContext::boundingBox, ConsiderSplitContext::dim, ConsiderSplitContext::entriesCount, ConsiderSplitContext::first, ConsiderSplitContext::leftUpper, LIMIT_RATIO, non_negative(), ConsiderSplitContext::overlap, ConsiderSplitContext::range, ConsiderSplitContext::ratio, and ConsiderSplitContext::rightLower.
Referenced by gserialized_gist_picksplit_2d().
1638 POSTGIS_DEBUGF(5,
"consider split: dimNum = %d, rightLower = %f, " 1639 "minLeftCount = %d, leftUpper = %f, maxLeftCount = %d ",
1640 dimNum, rightLower, minLeftCount, leftUpper, maxLeftCount);
1648 leftCount = minLeftCount;
1652 if (maxLeftCount <= context->entriesCount / 2)
1653 leftCount = maxLeftCount;
1663 ratio = ((float4) Min(leftCount, rightCount)) /
1668 bool selectthis =
false;
1682 overlap = (leftUpper - rightLower) / range;
1687 else if (context->
dim == dimNum)
1693 if (overlap < context->overlap ||
1694 (overlap == context->
overlap && ratio > context->
ratio))
1717 (range > context->
range &&
1725 context->
first =
false;
1726 context->
ratio = ratio;
1727 context->
range = range;
1731 context->
dim = dimNum;
1732 POSTGIS_DEBUG(5,
"split selected");
static float non_negative(float val)