|
|
- <?php
-
- namespace OSM\Element\Member;
-
- use OSM\Element\Member\Member;
- use OSM\Point;
-
- class Way extends Member {
-
- public array $points = [];
-
- public function completeFromArray(array $array): static
- {
- $hasGeometry = isset($array['geometry']);
- if ($hasGeometry) {
- $items = $array['geometry'];
- foreach ($items as $item) {
- $point = Point::createFromArray($item);
- $this->points[] = $point;
- }
- }
-
- return $this;
- }
-
- public function getFirstPoint(): Point {
- return reset($this->points);
- }
-
- public function getLastPoint(): Point {
- return end($this->points);
- }
-
- public function reversePoints(): static {
- $this->points = array_reverse($this->points);
- return $this;
- }
- }
|