示例#1
0
static partition_t PartitionNew (void)
{
  partition_t p;

  p = (partition_t) malloc(SIZEOF_PARTITION);
  /*TODO: check return value*/
  memset((void *) p,0, SIZEOF_PARTITION);
  p->cover[0] = p->cover[1] = p->cover_all = RectInit();
  return p;
}
示例#2
0
文件: rtree_udi.c 项目: edechter/yap
static rect_t RectOfTerm (Term term)
{
  YAP_Term tmp;
  rect_t rect;
  int i;
  
  if (!YAP_IsPairTerm(term))
    return (RectInit());
  
  for (i = 0; YAP_IsPairTerm(term) && i < 4; i++)
    {
      tmp = YAP_HeadOfTerm (term);
      if (!YAP_IsNumberTerm(tmp,&(rect.coords[i])))
        return (RectInit());
      term = YAP_TailOfTerm (term);
    }

  return (rect);
}
示例#3
0
static rect_t RTreeNodeCover(node_t n)
{
  int i;
  rect_t r = RectInit();

  for (i = 0; i < MAXCARD; i++)
    if (n->branch[i].child)
      {
        r = RectCombine (r, n->branch[i].mbr);
      }
    else
      break;

  return r;
}