/**
  * return array of polygons to draw
  *
  * @return array
  */
 public function getPolygons()
 {
     $polygons = array();
     $string = $this->_mapRequest->getPolygonsPoints();
     if (is_null($string)) {
         return array();
     }
     $coordinatesStrings = explode(self::$drawObjectDelimeter, $string);
     foreach ($coordinatesStrings as $coordinatesString) {
         $coordinates = explode(self::$paramDelimeter, $coordinatesString);
         $polygon = new DrawPolygon();
         $i = 0;
         foreach ($coordinates as $coordinate) {
             if ($i == 0 && is_numeric($coordinate)) {
                 $lon = $coordinate;
                 $i++;
             } else {
                 if (is_numeric($coordinate)) {
                     $addPoint = new DrawMarkPoint($lon, $coordinate);
                     $polygon->addPoint($addPoint);
                     $i = 0;
                 } else {
                     $param = ParamFactory::create($coordinate);
                     $polygon->setParam($param);
                 }
             }
         }
         $polygons[] = $polygon;
     }
     return $polygons;
 }