Complete.Org: Mailing Lists: Archives: freeciv-dev: February 2004:
[Freeciv-Dev] Re: (PR#7287) Extended Topologies
Home

[Freeciv-Dev] Re: (PR#7287) Extended Topologies

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: mburda@xxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#7287) Extended Topologies
From: "Jason Short" <jdorje@xxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 23 Feb 2004 19:15:15 -0800
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=7287 >

Morgan Jones wrote:
> <URL: http://rt.freeciv.org/Ticket/Display.html?id=7287 >
> 
> I haven't really been following the discussion too closely and I don't
> really comprehend the maths and coding involved, but the quincuncial
> topology does sound interesting (I can't test it though).
> 
> Looking at Ross' diagram I can see how there would be large
> distortions in the southern hemisphere and I guess from the fact that
> I live in the Southern hemisphere I'm not entirely happy about that
> :)  (Besides, Antartica would be a much more interesting place to
> fight over than the Arctic).

I'm pretty sure the distortions are along the equator, not at either 
pole.  In fact they're only at certain locations on the equator, 
specifically the singularity points.  (In the center of the sides of the 
square, far out in the ocean.)

> Anyway, what I'm wondering (at the risk of making everything far too
> complicated) is why not have two seperate maps for each hemisphere? 
> There would be a 1:1 join along the seam at the equator and from a 2d
> GUI POV this would look seemless if the code was up to it.

That is exactly what is being done here.  There are two rectangular 
pieces of cloth being sewn together along the edges.  The north pole is 
in the center of the top piece of cloth, and the south pole is in the 
center of the southern piece.

Now there are two ways we can unroll this cloth.  We can take one of the 
sides and cut it up into four triangles:
   ______
  |\    /|
  | \  / |
  |  \/  |
  |  /\  |
  | /  \ |
  |/____\|

then unfold along the original seams to form another square twice as 
large (in area) as the original one.  This is what Marcelo's map does. 
The north pole is in the middle of one piece of cloth, and the south 
pole is in the middle of the piece that gets cut up.

The other way to unroll the cloth is to cut apart 3 of the seams we 
sewed together earlier, and unfold it to be a rectangle twice as wide as 
the original square.  See 
http://rt.freeciv.org/Ticket/Attachment/39952/27550/world_rec_A.xpm for 
an example of how this could be done.  (I suspect this method will give 
a more playable map.)

This isn't the whole story, though.  The distortion doesn't happen 
*entirely* in the folding, it happens when the projection is done.  In 
Ross's image the extra lines drawn show how the projection is done.  See 
how the circles around the arctic and antarctic are not distorted, but 
the line of the equator forms a near-square.  (I don't fully understand 
this projection; it seems imbalanced.  Why isn't the equator an exact 
square?  Marcelo, can you explain?)  Note that if you went to the 
singularity point out in the ocean the equator would make a 90-degree 
turn.  If you kept following the equator straight out you'd end up going 
back in the direction you came.  Very confusing.  This is why the 
singularities need to be hidden.

In the second projection (the XPM file I link to above) note how if you 
divide the rectangle into two squares, the equator follows around the 
sides of both squares.  Even more confusing, right?  But here we only 
have 2 singularities (again out in the oceans).  If you head out from 
Indonesia along the equator (either east or west) and follow a 
"straight" line, you'll end up back where you started.

jason




[Prev in Thread] Current Thread [Next in Thread]