Вход Регистрация
Файл: module-assets/admin/gmaps/lib/gmaps.geometry.js
Строк: 273
<?php
GMaps
.prototype.drawPolyline = function(options) {
  var 
path = [],
      
points options.path;

  if (
points.length) {
    if (
points[0][0] === undefined) {
      
path points;
    }
    else {
      for (var 
i=0latlnglatlng=points[i]; i++) {
        
path.push(new google.maps.LatLng(latlng[0], latlng[1]));
      }
    }
  }

  var 
polyline_options = {
    
mapthis.map,
    
pathpath,
    
strokeColoroptions.strokeColor,
    
strokeOpacityoptions.strokeOpacity,
    
strokeWeightoptions.strokeWeight,
    
geodesicoptions.geodesic,
    
clickabletrue,
    
editablefalse,
    
visibletrue
  
};

  if (
options.hasOwnProperty("clickable")) {
    
polyline_options.clickable options.clickable;
  }

  if (
options.hasOwnProperty("editable")) {
    
polyline_options.editable options.editable;
  }

  if (
options.hasOwnProperty("icons")) {
    
polyline_options.icons options.icons;
  }

  if (
options.hasOwnProperty("zIndex")) {
    
polyline_options.zIndex options.zIndex;
  }

  var 
polyline = new google.maps.Polyline(polyline_options);

  var 
polyline_events = ['click''dblclick''mousedown''mousemove''mouseout''mouseover''mouseup''rightclick'];

  for (var 
ev 0ev polyline_events.lengthev++) {
    (function(
objectname) {
      if (
options[name]) {
        
google.maps.event.addListener(objectname, function(e){
          
options[name].apply(this, [e]);
        });
      }
    })(
polylinepolyline_events[ev]);
  }

  
this.polylines.push(polyline);

  
GMaps.fire('polyline_added'polylinethis);

  return 
polyline;
};

GMaps.prototype.removePolyline = function(polyline) {
  for (var 
0this.polylines.lengthi++) {
    if (
this.polylines[i] === polyline) {
      
this.polylines[i].setMap(null);
      
this.polylines.splice(i1);

      
GMaps.fire('polyline_removed'polylinethis);

      break;
    }
  }
};

GMaps.prototype.removePolylines = function() {
  for (var 
0itemitem this.polylines[i]; i++) {
    
item.setMap(null);
  }

  
this.polylines = [];
};

GMaps.prototype.drawCircle = function(options) {
  
options =  extend_object({
    
mapthis.map,
    
center: new google.maps.LatLng(options.latoptions.lng)
  }, 
options);

  
delete options.lat;
  
delete options.lng;

  var 
polygon = new google.maps.Circle(options),
      
polygon_events = ['click''dblclick''mousedown''mousemove''mouseout''mouseover''mouseup''rightclick'];

  for (var 
ev 0ev polygon_events.lengthev++) {
    (function(
objectname) {
      if (
options[name]) {
        
google.maps.event.addListener(objectname, function(e){
          
options[name].apply(this, [e]);
        });
      }
    })(
polygonpolygon_events[ev]);
  }

  
this.polygons.push(polygon);

  return 
polygon;
};

GMaps.prototype.drawRectangle = function(options) {
  
options extend_object({
    
mapthis.map
  
}, options);

  var 
latLngBounds = new google.maps.LatLngBounds(
    new 
google.maps.LatLng(options.bounds[0][0], options.bounds[0][1]),
    new 
google.maps.LatLng(options.bounds[1][0], options.bounds[1][1])
  );

  
options.bounds latLngBounds;

  var 
polygon = new google.maps.Rectangle(options),
      
polygon_events = ['click''dblclick''mousedown''mousemove''mouseout''mouseover''mouseup''rightclick'];

  for (var 
ev 0ev polygon_events.lengthev++) {
    (function(
objectname) {
      if (
options[name]) {
        
google.maps.event.addListener(objectname, function(e){
          
options[name].apply(this, [e]);
        });
      }
    })(
polygonpolygon_events[ev]);
  }

  
this.polygons.push(polygon);

  return 
polygon;
};

GMaps.prototype.drawPolygon = function(options) {
  var 
useGeoJSON false;

  if(
options.hasOwnProperty("useGeoJSON")) {
    
useGeoJSON options.useGeoJSON;
  }

  
delete options.useGeoJSON;

  
options extend_object({
    
mapthis.map
  
}, options);

  if (
useGeoJSON == false) {
    
options.paths = [options.paths.slice(0)];
  }

  if (
options.paths.length 0) {
    if (
options.paths[0].length 0) {
      
options.paths array_flat(array_map(options.pathsarrayToLatLnguseGeoJSON));
    }
  }

  var 
polygon = new google.maps.Polygon(options),
      
polygon_events = ['click''dblclick''mousedown''mousemove''mouseout''mouseover''mouseup''rightclick'];

  for (var 
ev 0ev polygon_events.lengthev++) {
    (function(
objectname) {
      if (
options[name]) {
        
google.maps.event.addListener(objectname, function(e){
          
options[name].apply(this, [e]);
        });
      }
    })(
polygonpolygon_events[ev]);
  }

  
this.polygons.push(polygon);

  
GMaps.fire('polygon_added'polygonthis);

  return 
polygon;
};

GMaps.prototype.removePolygon = function(polygon) {
  for (var 
0this.polygons.lengthi++) {
    if (
this.polygons[i] === polygon) {
      
this.polygons[i].setMap(null);
      
this.polygons.splice(i1);

      
GMaps.fire('polygon_removed'polygonthis);

      break;
    }
  }
};

GMaps.prototype.removePolygons = function() {
  for (var 
0itemitem this.polygons[i]; i++) {
    
item.setMap(null);
  }

  
this.polygons = [];
};
?>
Онлайн: 0
Реклама