Ticket #13112: map_type.diff

File map_type.diff, 2.2 KB (added by nbv4, 5 years ago)

Add map types to GoogleMap class in GIS

  • django/contrib/gis/templates/gis/google/google-map.js

     
    1010  if (GBrowserIsCompatible()) {
    1111    {{ js_module }}.{{ dom_id }} = new GMap2(document.getElementById("{{ dom_id }}"));
    1212    {{ js_module }}.{{ dom_id }}.setCenter(new GLatLng({{ center.1 }}, {{ center.0 }}), {{ zoom }});
     13    {{ js_module }}.{{ dom_id }}.setMapType({{ map_type }});
    1314    {% block controls %}{{ js_module }}.{{ dom_id }}.setUIToDefault();{% endblock %}
    1415    {% if calc_zoom %}var bounds = new GLatLngBounds(); var tmp_bounds = new GLatLngBounds();{% endif %}
    1516    {% for kml_url in kml_urls %}{{ js_module }}.{{ dom_id }}_kml{{ forloop.counter }} = new GGeoXml("{{ kml_url }}");
  • django/contrib/gis/maps/google/gmap.py

     
    2222                 center=None, zoom=None, dom_id='map',
    2323                 kml_urls=[], polylines=None, polygons=None, markers=None,
    2424                 template='gis/google/google-map.js',
    25                  js_module='geodjango',
     25                 js_module='geodjango', map_type='map',
    2626                 extra_context={}):
    2727
    2828        # The Google Maps API Key defined in the settings will be used
     
    8686        self.zoom = zoom
    8787        if center is None: center = (0, 0)
    8888        self.center = center
     89           
     90        if map_type == 'terrain':
     91            self.map_type = 'G_PHYSICAL_MAP'
     92        elif map_type == 'satellite':
     93            self.map_type = 'G_SATELLITE_MAP'
     94        else:
     95            self.map_type = 'G_NORMAL_MAP'
    8996
    9097    def render(self):
    9198        """
     
    97104                  'js_module' : self.js_module,
    98105                  'kml_urls' : self.kml_urls,
    99106                  'zoom' : self.zoom,
     107                  'map_type' : self.map_type,
    100108                  'polygons' : self.polygons,
    101109                  'polylines' : self.polylines,
    102110                  'icons': self.icons,
Back to Top