Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2001:
[Freeciv-Dev] Re: nonstandard maps
Home

[Freeciv-Dev] Re: nonstandard maps

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Mike Kaufman <mkaufman@xxxxxxxxxxxxxx>
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: nonstandard maps
From: Gaute B Strokkenes <gs234@xxxxxxxxx>
Date: Sun, 02 Sep 2001 23:09:10 +0200

On Sun, 12 Aug 2001, mkaufman@xxxxxxxxxxxxxx wrote:
> On Mon, Aug 13, 2001 at 01:28:50AM +0200, Gaute B Strokkenes wrote:
>> On Sun, 12 Aug 2001, mkaufman@xxxxxxxxxxxxxx wrote:
>
>> This is where you are wrong.  To put it in Freeciv terms, whenever
>> you add or subtract map.xsize from *x in normalize_map_pos(), you
>> have to flip the y coordinate.  Off course you can no longer talk
>> about things
>
> It is extremely unclear what you mean be "flip".

new_y = map.ysize - 1 - old_y

To put it another way, the adjacencies at the wrap are defined like
this:

        --*--------*--------*--------*---
          |        |        |        |
          | (X, 0) | (0, Y) |        |
          |        |        |        |
          |        |        |        |
        --*--------*--------*--------*---
          |        |        |        |
          | (X, 1) | (0,Y-1)|        |
          |        |        |        |
          |        |        |        |
        --*--------*--------*--------*---
          |        |        |        |
          | (X, 2) | (0,Y-2)|        |
          |        |        |        |
          |        |        |        |
        --*--------*--------*--------*---
          |        |        |        |

X = map.xsize - 1;
Y = map.ysize - 1;


/-<---------------\
|                 |
|                 ^
|   *--*--*--*--* |
|   |  |  |  |  X-/
|   |  |  |  |  |
|   *--*--*--*--*
|   |  |  |  |  |
|   |  |  |  |  |
v   *--*--*--*--*
|   |  |  |  |  |
\->-X  |  |  |  |
    *--*--*--*--*

>> such as "north" or "south" in a meaningful manner, but that doesn't
>> prevent you from having a well-defined map.
>>
>> It helps if you think of the Möbius strip like this:
>>
>>
>>   *----*
>>   |    |
>>   ^    v
>>   ^    v
>>   |    |
>>   *----*
>>
>> rather than considering an embedding in R^3.
>
> That's difficult since the strip _is_ a surface in R^3...

Where I come from, the Möbius strip is defined by taking the unit
square in R^2 with the usual topology and then, for each y in [0,1],
identifying (0, y) and (1, 1-y), and then taking the quotient
topology.

Obviously, you can write out a subset of R^3 which, in the subspace
topology, is homeomorphic to the above; however it's a bit of a pain
to do so explicitly.

The reason that it's better to think of the Möbius strip like this in
this context is that you're a lot less likely to confuse yourself by
asking yourself what happens at the other side and so on.

Differential geometry is a bit of an overkill here (be thee gone, De
Rham!) ; after all no one is interested in doing analysis on Freeciv
maps.


--
Big Gaute                               http://www.srcf.ucam.org/~gs234/
Boys, you have ALL been selected to LEAVE th' PLANET in 15 minutes!!


[Prev in Thread] Current Thread [Next in Thread]
  • [Freeciv-Dev] Re: nonstandard maps, Gaute B Strokkenes <=