Søg i Septima Widget K
Find nærmeste
Find de nærmeste objekter i kortet ud fra f.eks. en adresse, brugerens aktuelle position eller et klik i kortet.
For at styre hvad der bliver vist i listen med nærmeste, tilføjes template_route
på laget. Her har man adgang til alle atributter på data. Det kan bruges til f.eks. at vise navnet på børnehaven m.m.
Ud over navnet vises afstanden og tiden. Hvis man gerne vil styre hvordan afstand/tid vises, er det muligt ved at tilføje template_route_time
. Her har man adgang til dist
samt time
, så man kan vise præcist hvad man har brug for.
Options
Herunder findes en beskrivelse af de enkelte egenskaber, der kan sættes på funktionen.
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.
detach
- Type:
string
Angiv en reference til et alternativ html-element, som denne kontrol skal vises i. Det kan benyttes til at placere indholdet af en kontrol et andet sted på sin side. Hvis detach har værdien "abc"
, så skal der tlføjes et element til HTML'en på denne form: <div data-widget-detach="abc"/>
. Hvis elementet ikke findes, så fungerer kontrollen, som hvis detach ikke var angivet.
css
- Type:
string | string[]
Angiv en sti til en css-fil, der skal loades efter denne kontrol. Herved vil det være muligt at lave en brugertilpasset style af kontrollen.
className
- Type:
string
Tilføj en speciel CSS class til elementet. Dette kan bruges til at styre hvordan elementet ser ud eller placeres på siden.
keepInFullscreen
- Type:
boolean
- Default:
false
Benyttes når funktionen er "detached" og funktionen "fullscreen" er inkluderet i konfigurationen. Hvis "keepInFullscreen" sættes til true
, så er funktionen tilgængelig når kortet vises i fullscreen.
apikey
- Type:
string
En apinøgle, som er gyldig til Septimas rutewebservice
profile
- Type:
string
- Type:
car
Angiver den ruteprofil, der anvendes fra ruteservicen. "car" beregner bilruter, "bicycle" beregener cykelruter, "foot" beregner for gående, mens "bus" beregner for kørsel med større køretøjer. Derudover er det også muligt at benytte "air", der beregner afstanden via luftlinje. Ved luftlinje vil tiden være beregnet ud fra en hastighed på 7,2 km/t (2000 ms/m).
profileselect
- Type:
objekt
Giver brugeren mulighed for at skifte mellem forskelige ruteprofiler.
json
"profileselect": [
{"name": "Bil", "value": "car", "icon": "car"},
{"name": "Cykel", "value": "bicycle", "icon": "bike"},
{"name": "Gang", "value": "foot", "icon": "walk"},
{"name": "Lastbil", "value": "bus", "icon": "truck"},
{"name": "Luftlinje", "value": "air", "icon": "air"}
]
limit
- Type:
integer
- Type:
3
Antallet af nærmeste, der skal vises i listen
template
- Type:
string
Angiver den html-template, der anvendes til at præsentere 'find nærmeste' resultater. Hvis ikke angivet, så vises listen uden overskrift og formatering. Med template kan man styre det, der ligger uden om listen. Det kunne være en overskrift samt en forklarende tekst. Læs mere om templates generelt her.. For denne template er der to tilgængelige attributter; <%= title %>
og <%= content %>
, hvor <%= title %>
benyttes til at skrive, hvor ruten starter, mens <%= content %>
er dér, hvor listen indsættes. De enkelte rækker i listen styres af template_route på laget.
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.
animate
- Type:
object
Indstillinger for animationen af ruten i kortet.
json
"animate": {
"duration": 600
}
prioritizeWithinGeometry
- Type:
object
Brug den valgte geometri til at finde én polygon med via en service. Alle punkter inden for denne polygon, bliver prioriteret højere end andre, og vises øverst i listen.
"prioritizeWithinGeometry" skal være et objekt, der indeholder "host" samt "type" i stil med dette:
https://myservice.dk/gis/rest/services/Vej_Trafik/Lette_Trafikanter/MapServer/9/query?returnGeometry=true&outSR=25832&f=json&outFields=*&where=wkt=POINT(%20)
json
"prioritizeWithinGeometry": {
"host": "//myservice.dk/gis/rest/.../query?...&where=wkt=POINT({{x}}%20{{y}})",
"type": "esrijson"
}
data
- Type:
objekt
Skal beregningen foregå ved opstart, gøres det ved at tilføje "data" direkte til funktionen. Data bliver ikke vist nogen steder og bruges kun til beregning af de nærmeste.
json
"data": {
"type": "FeatureCollection",
"crs": { "type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG::25832"}},
"features": [{
"type": "Feature",
"properties": {},
"geometry": {
"type": "Point",
"coordinates": [724509,6175921]
}
}]
}
Eksempler
Eksempler, der bruger denne komponent:
Find nærmeste søgfind nærmeste
Avanceret ruteberegning formidlet enkelt - søg en adresse, hvorefter afstanden til nærmeste pasningsmuligheder eller lignende beregnes og vises for brugeren
Find nærmeste i luftlinjeafstand søgfind nærmeste
Hvis der ikke er brug for ruten, men blot vil vide hvad der er i nærheden, kan Find Nærmeste finde de nærmeste via luftlinjeafstanden.
Find nærmeste med lagvælger søgfind nærmestelagvælger
Brug Find Nærmeste sammen med lagvælgeren, så ruten kun vises for de data, der er vist i kortet.
Find nærmeste uden kort søgfind nærmesteuden kort
Find de nærmeste børnehaver uden visning af kort. Der kan tages udgangspunkt i data angivet direkte i konfigurationen.
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'
Find nærmeste uden kort via adressesøgning søgfind nærmesteuden kort
Find de nærmeste børnehaver uden visning af kort. Der kan tages udgangspunkt i et søgefelt, men det kunne også være ved brug af brugerens aktuelle position.