Opened 10 years ago

Closed 10 years ago

Last modified 7 years ago

#7619 closed (fixed)

GIS/GoogleMaps: Support for point geometries in map creation

Reported by: LudwigBrinckmann Owned by: jbronn
Component: GIS Version: gis
Severity: Keywords: Google Maps Markers
Cc: Triage Stage: Unreviewed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no


The automatic creation of Google maps in the GIS branch supports the display of Polygons and Polylines, but not Points.

The attached patch adds the display of Points as GMarkers by adding another class GMarker to the overlays defined in The GMarker is very similar to polygons and polylines, but has the option to attach a title to it, whch will appear in Google Maps as a tooltip when moving over the marker. In addition the GoogleMap class takes another keyword parameter points to pass the point data through to the template.

Another option to implement the marker functionality would be to use a marker manager, as defined in the Google Maps API, which has the ability to deal with large amount of markers. The proposed patch, however, works fine with a small amount of markers.

The patch furthermore extends the model by having a GEvent class that allows to attach an event, such as 'click' to a line, polygon or point. A bit of example code for this is given in

     from django.shortcuts import render_to_response
      from import GoogleMap
      from import GMarker, GEvent
      from django.contrib.gis.geos import fromstr

      def sample_request(request):
          points = []
          location = fromstr('POINT(101 26)')
          point = GMarker(location)
          event = GEvent('click', 
            'function() { location.href = ""}')
          return render_to_response('mytemplate.html', 
          {'google' : GoogleMap(points=points)})

There is a working version of (a slightly older version of this patch) in the small map on the right hand panel at

Attachments (1)

gis-googlemaps.diff (10.3 KB) - added by ludwigbrinckmann@… 10 years ago.

Download all attachments as: .zip

Change History (5)

Changed 10 years ago by ludwigbrinckmann@…

Attachment: gis-googlemaps.diff added


comment:1 Changed 10 years ago by jbronn

milestone: 1.0 beta
Owner: changed from nobody to jbronn
Version: SVNgis

comment:2 Changed 10 years ago by jbronn

Resolution: fixed
Status: newclosed

(In [7841]) gis: Fixed #7619. Added support Google Maps markers (GMarker) and events (GEvent). Thanks, Ludwig Brinckmann.

comment:3 Changed 10 years ago by jbronn

I've revised the patch a bit in r7841 -- here's how you would do it now:

from django.shortcuts import render_to_response
from import GoogleMap GMarker, GEvent

def sample_request(request):
    marker = GMarker('POINT(101 26)') # Could also be GMarker((101, 26))
    event = GEvent('click', 'function() { location.href = ""}')
    return render_to_response('mytemplate.html', {'google' : GoogleMap(markers=[marker])})

comment:4 Changed 7 years ago by Jacob

milestone: 1.0 beta

Milestone 1.0 beta deleted

Note: See TracTickets for help on using tickets.
Back to Top