Proper point drawing fixed in center method
authorJavier Palacios <javiplx@gmail.com>
Fri, 2 Nov 2012 14:41:01 +0000 (15:41 +0100)
committerJavier Palacios <javiplx@gmail.com>
Fri, 2 Nov 2012 14:41:01 +0000 (15:41 +0100)
view.py

diff --git a/view.py b/view.py
index 602e581..29dc86c 100755 (executable)
--- a/view.py
+++ b/view.py
@@ -47,6 +47,9 @@ area (the reference pixel is actually encapsulated in the inner tile loader).
     def index ( self , x , y ) :
         return x + y * self.size[0]
 
+    def get_vport_base ( self ) :
+        return self.__vport_base
+
     # FIXME : This implementation does not account for the requested screen size, so don't give the right pixel
     def get_viewport ( self ) :
         refpix = self.tileloader.get_refpix()
@@ -380,7 +383,9 @@ class simpleMapWidget ( AbstractmapWidget , gtk.Image ) :
 
     def center( self ) :
 
-        center_x , center_y = self.win_x / 2 , self.win_y / 2
+        vport = self._bg.get_vport_base()
+        center_x = self._bg.center[0]*self._bg.tileloader.tilesize - vport[0]
+        center_y = self._bg.center[1]*self._bg.tileloader.tilesize - vport[1]
 
         # To get the central pixel in the window center, we must shift to the tile origin
         center_x -= self.refpix_x