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: