Index: src/django_gheat/website/tile.py
===================================================================
--- src/django_gheat/website/tile.py	(revision 9150)
+++ src/django_gheat/website/tile.py	(revision 9151)
@@ -5,4 +5,5 @@
 # Rick van der Zwet <info@rickvanderzwet.nl>
 from django.core.management import setup_environ
+from django.db.models import Max
 from django.http import HttpResponse
 from gheat.models import *
@@ -45,9 +46,18 @@
 
 
-  def add_circle(self, center, radius, colour=(255,0,0)):
-    # Quirky hack to generate lineair gradient circles and merge them with the parent.
+  def add_circle(self, center, radius, colour=(255,0,0), transparancy=0):
+    """ 
+    Hack to add lineair gradient circles and merge with the parent. The
+    transparancy can be configured to make the circles to fade out in the
+    beginning
+    """
+    # Make calculations and ranges a whole bunch more easy
+    radius = int(math.ceil(radius))
+
     new_surf = pygame.Surface(self.surf.get_size(),flags=pygame.SRCALPHA)
+    alpha_per_radius = float(2.55 * (100 - transparancy)) / radius
     for r in range(radius,1,-1):
-      pygame.draw.circle(new_surf,colour + (255 - (r * (float(255)/radius)),),center,r,0)
+      alpha = (radius - r) * alpha_per_radius
+      pygame.draw.circle(new_surf,colour + (alpha,),center,r,0)
     self.surf.blit(new_surf,(0,0),special_flags=pygame.BLEND_RGBA_MAX)
 
@@ -182,4 +192,9 @@
      latitude__lte=nw_deg.lat,latitude__gte=se_deg.lat,
      longitude__lte=se_deg.lon,longitude__gte=nw_deg.lon)
+
+  # XXX: Signal is not normalized in the database making it unknown when a
+  # signal is said to be 100% or when it is actually less, currently seems to
+  # copy the raw reported values
+  MAX_SIGNAL = 50
   
   def dif(x,y):
@@ -207,5 +222,5 @@
     # different patterns.
     #
-    im.add_circle((xcoord,ycoord),float(meting.signaal) / meters_per_pixel,(255,0,0))
+    im.add_circle((xcoord,ycoord),float(meting.signaal) / meters_per_pixel,(255,0,0),MAX_SIGNAL - meting.signaal)
   
   log.info("BoundingBox NW: %s" % nw_deg)
