Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

BlockMap Class

erwin
2012-09-05
2012-09-16
  • erwin
    erwin
    2012-09-05

    Dear Robert,

    I have difficulties to visualize the BlockMap class in my mind,

    BlockCount : the size of the block

    CornerCount : the size of the corner block

    AllBlocks : the block rectangle in Cartesian Coordinate

    AllCorners : the corner block rectangle in Cartesian Coordinate

    Corners : ?

    BlockAreas : ?

    BlockCenters : ?

    CornerAreas : ?

    Would you give me hints about it ?

    Thanks Robert.

     
  • Robert Važan
    Robert Važan
    2012-09-05

    Dear Erwin,

    Try to render it to bitmap then :-) That will make it easy to visualize.

    I know it would take time, so here's a quick explanation instead. BlockMap
    represents an NxM checkerboard. Its properties then mean the following:

    Corners : (N+1)x(M+1) corners of checkerboard fields

    BlockAreas : NxM rectangles describing location and size of each field on the
    checkerboard

    BlockCenters : NxM points representing centers of checkerboard fields

    CornerAreas : tricky, see below

    CornerAreas represents secondary checkerboard (let's call it B) overlaid on
    top of the original checkerboard (let's call it A). Imagine making a copy of
    checkerboard A and shifting it by half of a field right and down. B's corners
    are now where A's centers are. Checkerboard B has 1 extra row and 1 extra
    column, because it contains half-size fields on all its 4 sides.

    If you cannot understand it after this explanation, I suggest rendering it so
    that you can see for yourself.

    Kind Regards,

    Robert

     
  • erwin
    erwin
    2012-09-06

    Hi Robert,

    thanks for your explanation.

    I'm trying to figure out from the code. It looks like Corners is the PointGrid
    structure that holds the block point, BlockAreas is the RectangleGrid
    structure that returns Cartesian coordinates for each point, BlockCenters
    holds the center block point, CornerAreas returns the center block point
    coordinates with top and left half of the field, right and bottom one and half
    of the field. All of it NxM. Is this what you meant ?

    Thanks Robert.

     
  • Robert Važan
    Robert Važan
    2012-09-06

    Hi Erwin,

    You are wrong in several points. I suggest you render it into bitmap after
    all. It will be much faster than email ping-pong.

    Kind Regards,

    Robert

     
  • erwin
    erwin
    2012-09-06

    OK,

    Thanks Robert.