/** * {@inheritdoc} */ protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null) { if ($definition instanceof GeoJson) { $collection = $this->loadVectorModels($model); if ($model->boundsMode) { $definition->setOption('boundsMode', $model->boundsMode); } if ($collection) { foreach ($collection as $item) { $vector = $mapper->handle($item); $feature = $mapper->convertToGeoJsonFeature($vector, $item); if ($feature) { $definition->addData($feature, true); } } } $this->addCallbacks($definition, $model); } }
/** * {@inheritdoc} */ protected function build(Definition $definition, \Model $model, DefinitionMapper $mapper, Filter $filter = null, Definition $parent = null) { if ($definition instanceof GeoJson) { if ($model->boundsMode) { $definition->setOption('boundsMode', $model->boundsMode); } $collection = $this->loadMarkerModels($model); if ($collection) { foreach ($collection as $item) { $marker = $mapper->handle($item); $point = $mapper->convertToGeoJsonFeature($marker, $item); if ($point) { $definition->addData($point, true); } } } if ($model->pointToLayer) { $definition->setPointToLayer(new Expression($model->pointToLayer)); } } }