Skip to content

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: