Archived

This topic is now archived and is closed to further replies.

Map Orientation

This topic is 5892 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Simple question, I hope. What way ''round are iso maps usually placed?
# # #
 # # #
# # #
 
Method one. (0,0) is at the top-left, (3,3) at the bottom-right.
    # - (0,0)
   # #
  # # # - (3, 0)
   # #
    # - (3, 3)
 
Method two. Method two seems to be the most sensible, but I''m having trouble with it: my map renderer iterates through Y and X and will render the map in the method one style. How do I convert (0,0) in method-one coordinates to the correct coordinate in method-two, which would be (-2, 3), I believe. I''m wanting to do something like:
  
  for (y = 0; y < m_height; ++y)
    for (x = 0; x < m_width; ++x) {
      Transform(x, y, &tx, &ty);
      if (tile = GetTile(tx, ty))
        tile->render(x, y);
    }
  
It looks as though that the articles on coordinate conversions deal with converting screen coordinates to method-one coordinates, whilst I want to convert from method-one to method-two. Unless I''m reading the articles wrong, I don''t think they are of help. I demand unsatisfaction!

Share this post


Link to post
Share on other sites
http://www.isohex.net/default.asp?GroupID=5&CategoryID=9&ItemID=31&View=Item

go to the above URL, and download the IsoHexCore engine. the class you want to look at is CTilePlotter.

Share this post


Link to post
Share on other sites