Exemple #1
0
int main()
{
    /**
    Initally there are walls everywhere,
    each move breaks walls
    */
    int N=0;
    scanf("%d",&N);
    for(int k=1;k<=N;k++)
    {
        scanf("%s %s",path[0],path[1]);

        POINT minpt(0,0), maxpt(0,0);

        POINT dir(0,-1);
        POINT pos(0,1);

        Walk(path[0],pos,dir, minpt,maxpt);

        dir=-dir;
        Walk(path[1],pos,dir, minpt,maxpt);

        printf("Case #%d:\n",k);
        for(int y=maxpt.imag();y>=minpt.imag();y--)
        {
            for(int x=minpt.real();x<=maxpt.real();x++)
            printf("%x",maze[std::make_pair(x,y)]);
            printf("\n");
        }

        maze.clear();
    }

    return 0;
}
Exemple #2
0
HiJitCube::Corners HiJitCube::getCorners(const geos::geom::Geometry &poly) const {
  Corners corners;
  if ((poly.isValid()) && (!poly.isEmpty())) {

//  Get the coordinate list
    geos::geom::CoordinateSequence *clist = poly.getCoordinates();
    const geos::geom::Coordinate *minpt = clist->minCoordinate();
//    cout << "MinPoint: " << minpt->x << ", " << minpt->y << std::endl;

    geos::geom::Coordinate maxpt(clist->getAt(0));
    for (unsigned int i = 1 ; i < clist->getSize() ; i++) {
      geos::geom::Coordinate pt = clist->getAt(i);
      if ((pt.x >= maxpt.x) && (pt.y >= maxpt.y)) maxpt = pt;
    }
//    cout << "MaxPoint: " << maxpt.x << ", " << maxpt.y << std::endl;

    corners.topLeft.sample    = minpt->x;
    corners.topLeft.line      = minpt->y;
    corners.lowerRight.sample = maxpt.x;
    corners.lowerRight.line   = maxpt.y;
    corners.good = true;

    delete clist;
  }
  return (corners);
}