/** * {@inheritdoc} */ protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null) { parent::build($definition, $model, $mapper, $filter); if ($definition instanceof Circle) { $definition->setLatLng(LatLng::fromString($model->coordinates)); } }
/** * {@inheritdoc} */ protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null) { parent::build($definition, $model, $mapper, $filter); if ($definition instanceof MultiPolyline) { $this->createLatLngs($definition, $model); } }
/** * {@inheritdoc} */ protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null) { parent::build($definition, $model, $mapper, $filter); if ($definition instanceof Polyline) { array_map(function ($row) use($definition) { $definition->addLatLng(LatLng::fromString($row)); }, explode("\n", $model->data)); } }
/** * {@inheritdoc} */ protected function buildConstructArguments(\Model $model, DefinitionMapper $mapper, Filter $filter = null, $elementId = null) { $latLngs = array_map(function ($latLng) { return LatLng::fromString($latLng); }, deserialize($model->bounds, true)); $arguments = parent::buildConstructArguments($model, $mapper, $filter, $elementId); $arguments[] = new LatLngBounds($latLngs[0], $latLngs[1]); return $arguments; }