Lines Matching defs:geometries

128             $geometries = [];
130 $geometries[] = call_user_func_array([$adapter, "read"], array_merge($item, $args));
132 $result = geoPHP::buildGeometry($geometries);
180 * Reduce a geometry, or an array of geometries, into their 'lowest' available common geometry.
183 * An array of geometries can be passed and they will be compiled into a single geometry
185 * @param Geometry|Geometry[]|GeometryCollection|GeometryCollection[] $geometries
188 public static function geometryReduce($geometries)
190 if (empty($geometries)) {
196 if ($geometries instanceof Geometry) {
199 if (in_array($geometries->geometryType(), $singleGeometries)) {
200 return $geometries;
205 if (strpos($geometries->geometryType(), 'Multi') === 0) {
206 $components = $geometries->getComponents();
210 return $geometries;
213 } elseif (is_array($geometries) && count($geometries) == 1) {
215 return geoPHP::geometryReduce(array_shift($geometries));
218 if (!is_array($geometries)) {
219 $geometries = [$geometries];
222 * So now we either have an array of geometries
223 * @var Geometry[]|GeometryCollection[] $geometries
228 self::explodeCollections($geometries, $reducedGeometries, $geometryTypes);
269 * @param Geometry|Geometry[]|GeometryCollection|GeometryCollection[] $geometries
273 public static function buildGeometry($geometries)
275 if (empty($geometries)) {
280 if ($geometries instanceof Geometry) {
281 return $geometries;
282 } elseif (!is_array($geometries)) {
285 } elseif (count($geometries) == 1) {
287 return geoPHP::buildGeometry(array_shift($geometries));
291 * So now we either have an array of geometries
292 * @var Geometry[]|GeometryCollection[] $geometries
297 foreach ($geometries as $item) {
312 return new GeometryCollection($geometries);
314 if (count($geometries) == 1) {
315 return $geometries[0];
318 foreach ($geometries as $geometry) {
320 return new GeometryCollection($geometries);
324 return new $class($geometries);
327 return new GeometryCollection($geometries);