public function area(NeighborhoodBoundary $np) { $sql = "SELECT ST_Area(polygon) AS area FROM neighborhood_polygon np WHERE np.id = :np_id"; $rsm = new ResultSetMapping(); $rsm->addScalarResult('area', 'area'); $query = $this->em->createNativeQuery($sql, $rsm); $result = $query->setParameter('np_id', $np->getId())->getSingleResult(); return $result['area']; }
/** * save the neighborhood polygon * **/ public function saveNeighborhoodBoundary($neighborhood, $polygon, $ups) { $neighborhoodPolygon = NeighborhoodBoundary::build(array('geom' => $polygon, 'neighborhood' => $neighborhood, 'user_polygons' => $ups, 'grid_resolution' => $this->getGridResolution())); $this->m()->neighborhoodPolygonMapper()->save($neighborhoodPolygon); return $neighborhoodPolygon; }