Søg i Septima Widget K
Zoom til
Zoom til data. Det kan f.eks. bruges til at vise et kort, der er zoomet ind på en bestemt børnehave. Men det kan også bruges til at zoome ind til et bestemt område i kortet ud fra et ID.
Få kortet til automatisk at vise et bestemt objekt i kortet. Det kan for eksempel bruges i forbindelse med visning af et kort for et bestemt område på en hjemmeside.
For at benytte denne kontrol kan der på div-elementet tilføjes en attribut, der fortæller hvilken nøgle, der skal benyttes for at hente de ønskede objekter, der ønskes vist i kortet.
Angiv div-elementet på denne måde: <div data-widget="..." data-widget-key="2277350"></div>
hvor data-widget-key
indeholder nøglen. Dette foregår på samme måde som for kommuneplan funktionen.
Det er ligeledes muligt at angive URL-parameteren widget-key
med nøglen (for eksempel widget-key=2277350
)
Hvis URL-parametrene x
og y
eller wkt
er angivet, benyttes det som geometri til funktionen. Derudover kan minResolution
angives. Herved er det nemt at få vist en widget ud fra en koordinat. Brug parameteren srs
hvis geometrien er i en anden projektion.
Tilsvarende kan div-elementet indeholde attributterne som f.eks. <div data-widget="..." data-widget-x="12.5705286" data-widget-y="55.6770083" data-widget-srs="EPSG:4326"></div>
og få samme funktionalitet.
Options
Herunder findes en beskrivelse af de enkelte egenskaber, der kan angiver til denne funktion.
disable
- Type:
boolean
- Default:
false
Skal kontrollen deaktiveres. Herved fungerer det, som om kontrollen ikke var tilføjet. Kan bruges til midlertidig at fjerne en kontrol.
host
- Type: `string
Angiver den URL, der skal benyttes til at finde et eller flere objekter. I URL'en er det muligt at angive en template, hvor man for eksempel skriver {% raw %}<%= key %>
, der substitueres de af værdier fra parameteren key.
type
- Type:
string
- Default:
geojson
Hvilket format kommer data i. Kan antage en af følgende værdier: "geojson", "esrijson", "json", "djangojson", "datasourcejson" samt "local". Ved "local" søges der i de features, der allerede er tilføjet til kortet.
dataType
- Type:
string
- Default:
jsonp
Hvordan returneres data. Kan antage en af følgende værdier: "jsonp" og "json". Brug "json", hvis servicen ligger på samme domæne eller leveres med CORS-header.
paramNames
- Type:
object
Det er muligt at angive en række parametre til den URL, der er angivet i host
. I dette eksempel kan man enten kalde siden med denne widget med URL-parameteren =?planid=1234
. Alternativt kan man på DIV
elementet angive attributten data-widget-planid="1234"
:
json
"paramNames": {
"key": "planid"
}
requiredParams
- Type:
array
Ved at angive en liste med påkrævede parametre, der skal være angivet for at servicen kaldes, kan man begrænse hvad der bliver kaldt med. Dette er et eksempel, der kræver at "planid" skal være angivet som parameter:
json
"requiredParams": ["planid"]
template
- Type:
string
- Default:
""
Her angives en html-skabelon for, hvorledes en eventuel tilhørende tekst skal præsenteres. Attributter fra data kan angives i html-skabelonen med følgende notation {% raw %}<%= attributnavn %>. Læs mere om templates generelt her.
eventtype
- Type:
string
For at aktivere locate når der klikkes på en features i kortet, sættes eventtype
til click
. Samtidig skal der på laget, der klikkes på, være angivet template_locate
. Denne template bruges til at hente værdien fra det objekt der er klikket på. Værdien bruges så til at udføre en helt almindelig locate.
pageTitle
- Type:
string
Her angives en skabelon for, hvad titlen på siden skal skiftes til. Attributter fra data kan angives i skabelonen med følgende notation {% raw %}<%= attributnavn %>. Læs mere om templates generelt her.
zoomOptions
- Type:
object
Hvis angivet, så zoomes der til objektet når det er valgt. Det er muligt at angive, hvordan der skal zoomes til objektet i kortet. Læs mere om zoomOptions her.
features_style
- Type:
object
Hvordan skal objekterne styles i kortet, når de er fundet. Læs mere om features_style her.
input
- Type:
object
Giv brugeren mulighed for at indtaste en vilkårlig geometri og få den vist i kortet. Det kan være WKT, GeoJSON, en koordinat eller en BBOX.
prefilter
- Type:
array
Tilføj et filter på data, der er hentet fra en service. Herved er det muligt kun at zoom til udvalgte data i kortet. prefilter
består af en liste af udtryk, der alle skal være opfyldt for at en feaure vises.
Følgende operationer kan anvendes: =
, !=
, <
, {% raw %}>
, <=
, >=
, in
, notin
og tilføjes som vist her:
json
"prefilter": [
{"name": "type", "op": "!=", "val": "test"},
{"name": "klynge_id", "op": "=", "val": 101}
]
Eksempler
Eksempler, der bruger denne komponent:
Find nærmeste uden kort ud fra parameter søgfind nærmestelocateuden kort
Find de nærmeste børnehaver uden visning af kort. Der tages udgangspunkt i en adresse fundet med 'locate'
Søgemarkering hentes fra ruteservice søg
Søg efter en adresse og få markeret ruten, der fører fra et bestemt punkt til adressen i kortet. Få vist en popup med f.eks. afstand og rejsetid
Zoom til en adresse locate
Start kortet ved at zoome ind til en specifik adresse ud fra en URL-parameter. Samtidig skiftes sidens title, så det passer på den adresse, der er fundet
Zoom til en plan fra plandata.dk locate
Start kortet ved at zoome ind til en specifik feature ud fra en URL-parameter. Kald for eksempel siden med ?planid=3673514
Zoom til et adresseID locate
Start kortet ved at zoome ind til en specifik adresse ud fra en URL-parameter
Zoom til indtastet geometri locate
Start kortet ved at zoome ind til en specifik position ud fra URL-parameter. Det er også muligt at indtaste en geometri og få den vist i kortet. Det kan være WKT, GeoJSON, en koordinat eller en BBOX
Zoom til lokalt objekt i kortet locate
Start kortet ved at zoome ind til en specifik feature ud fra en URL-parameter
Zoom til objekt locate
Få en widget til at være zoomet ind til et specifikt objekt i kortet ved blot at angive en nøgle til objektet. Herved kan den samme widget bruges på flere sider til at vise noget forskelligt.
Det er også muligt at angive id i URL'en?widget-key=H02026
Zoom til objekt fra CartoDB locatefilterinfo
Start kortet ved at zoome ind til en specifik feature ud fra en URL-parameter
Zoom ud fra URL parameter locate
Start kortet ved at zoome ind til en specifik position ud fra URL-parameter