public function __construct($dbFields) { if (isset($dbFields['placemark_id'])) { $this->id = $dbFields['placemark_id']; } if (isset($dbFields['name'])) { $this->title = $dbFields['name']; } if (isset($dbFields['address'])) { $this->address = $dbFields['address']; } if (isset($dbFields['lat'], $dbFields['lon'])) { $this->centroid = array('lat' => $dbFields['lat'], 'lon' => $dbFields['lon']); } if (isset($dbFields['geometry'])) { $this->geometry = WKTParser::parseWKTGeometry($dbFields['geometry']); if (!$this->centroid) { $this->centroid = $this->geometry->getCenterCoordinate(); } } if (isset($dbFields['style_id'])) { $this->style = MapDB::styleForId($dbFields['style_id']); } else { $this->style = new MapBaseStyle(); } if (isset($dbFields['category_id'])) { $this->addCategoryId($dbFields['category_id']); } }