Application Programming Interface
map.search.ch API Referenz
 Start 
 Karte 
 Wetter 
DE ▼

map.search.ch API Referenz

Die Klassenreferenz beschreibt alle öffentlichen Klassen des APIs und deren Methoden, die zur Einbindung und Steuerung der interaktiven Schweizerkarte benutzt werden können.

class SearchChMap

Dies ist die zentrale Klasse der Karte und muss in Ihrer HTML-Seite instaziiert werden.

Konstruktor

var Map = new SearchChMap({ container:"mapcontainer" });

Der Konstruktor erwartet ein Objekt mit folgenden benannten Parametern:

ParameterTypOptionalDefaultBeschrieb
containerMixedjamapcontainerDOM-Objekt oder ID des Containers, welcher die Map beinhaltet. Vorzugsweise ein Blockelement wie <div> oder <p>
centerMixedja-Zentrum der Karte. String mit Adresse oder Array mit Geo-Koordinaten. Siehe Geo-Referenzen für Details.
fromMixedja-Startpunkt einer Route. Eingabe wie center, kann nur zusammen mit to verwendet werden.
toMixedja-Zielpunkt einer Route. Eingabe wie center, kann nur zusammen mit from verwendet werden.
typeStringjaaerialKartentyp aerial oder street
zoomNumberjaautoZoomstufe. Mögliche Werte: 512,128,32,8,4,2,1,0.5,0.25
Entspricht der Anzahl Meter pro Pixel, wird falls nötig auf die nächste verfügbare Stufe gerundet.
controlsStringjadefaultSteuer- und Anzeigeelemente in der Karte (als komma-getrennter String):
default: Standardauswahl an Steuerelementen
zoom: Zoomsteuerung
type: Umschalter zwischen Luftbild und Strassenkarte
pan: Verschiebungspfeile zum Schwenken der Karte
ruler: Kartenmassstab unten rechts
oder String "all"
enableStringjadragging,clickzoom,poisModi zur interaktiven Steuerung der Karte (als komma-getrennter String):
dragging: Ergreifen und Verschieben mit der Maus
clickzoom: Einzoomen bei Klick mit linker Maustaste, Auszoomen mit rechter Maustaste
mousewheel: Verschieben der Karte mit dem Mausrad
keyboard: Tastatursteuerung mit Pfeil- und +/- Tasten
pois: Infobox beim Überfahren von POIs mit der Maus anzeigen
oder String "all"
poigroupsStringjadefaultPOI-Kategorien (als komma-getrennter String). Siehe POI-Kategorien und -gruppen.
drawingStringja-Mit "Auf Karte zeichnen" von map.search.ch erstellte Zeichnung, die eingeblendet wird, z.B. "mu4zdnjn2".
circleBooleanjaautoDamit wird gesteuert, ob der Zielkreis des Kartenzentrums (falls Adresse genau genug ist) angezeigt wird.
autoloadBooleanjatrueWenn True startet die Karte automatisch, sobald die Seite fertig geladen ist (onload). Ist dieser Parameter False, muss die Karte mit init() gestartet werden.
autoresizeBooleanjatrueDetektiert Grössenänderungen des Map-Containers automatisch. Falls auf False gesetzt, müssen Veränderungen mit resized() dem Kartenobjekt gemeldet werden.

Objektmethoden

MethodeReturnwertBeschrieb
set(Object p)voidSetze/Aktualisiere Einstellungen der Karte. Als Argument wird ein Objekt mit denselben benannten Parametern wie beim Konstruktor (ausgenommen container) erwartet.
go(Object p)voidVerschiebt die Karte zum angegebenen Zentrum (center) oder um einen bestimmten Betrag (dx/dy). Argument ist ein Objekt mit folgenden benannten Parametern:
center: Geo-Referenz des neuen Zentrums
zoom: Neue Zoomstufe (optional). Gültige Zoomstufen siehe Konstruktor-Parameter.
dx: Relative Verschiebung in horizontaler Richtung (in Pixel)
dy: Relative Verschiebung in vertikaler Richtung (in Pixel)
circle: Steuert, ob der Zielkreis des Kartenzentrums angezeigt wird (Boolean)
Für die Parameter dx und dy können auch negative Zahlen verwendet werden. Werte zwischen 0 und 1 werden zudem als Bruchteil der aktuellen Kartenbreite/-höhe interpretiert.
get([String what])mixedGetter für Eigenschaften des Kartenobjekts. Als Argument können alle Namen wie beim Setzen der Eigenschaften mit set() verwendet werden. Ohne Argument liefert diese Methode ein Objekt mit allen Parametern zurück.
Beispiel: Map.get('zoom') oder auch Map.get().zoom liefert die aktuelle Zoomstufe. Wurde eine Route berechnet, können mit Map.get('routeinfo').distance Informationen dazu (wie hier z.B. die Distanz) ausgelesen werden.
zoom(int dir)voidEin-/Auszoomen der Karte. dir > 0: einzoomen, dir < 0: auszoomen.
enable(String what)voidAktivieren von Steuerungsmodi. Erwartet eine komma-getrennte Liste als Argument. Siehe Konstruktor-Parameter enable.
disable(String what)voidAusschalten von Steuerungsmodi. Argument wie bei enable().
showPOIGroup(String groups)voidBlendet eine oder mehrere POI-Gruppen ein. Argument ist ein komma-getrennter String gemäss Liste.
hidePOIGroup(String groups)voidEntfernt POI-Gruppen von der Karte. Argument wie bei showPOIGroup()
addPOI(SearchChPOI obj)voidPlatziert einen spezifischen POI auf der Karte. Erwartet eine Instanz von SearchChPOI als Argument.
removePOI(SearchChPOI obj)voidEntfernt einen spezifischen POI von der Karte. Benötigt eine Referenz des zu entfernenden SearchChPOI-Objekts als Argument.
removeAllPOIs()voidLöscht alle spezifischen POI-Objekte von der Karte.
getPermUrl([String mode])StringLiefert eine absolute URL nach map.search.ch mit dem aktuellen Kartenausschnitt. Über den optionalen Parameter mode können auch URLs für die Druckversion ("print"), die Versenden-Seite ("email") oder die Wegbeschreibung einer Route ("directions") generiert werden.
addEventListener(
  String event, mixed func[, Object obj])
voidRegistrieren eines Eventhandlers.
event: Name des Events. Siehe nachfolgende Liste.
func: Referenz auf eine globale Funktion oder String mit Methodenname von obj.
obj: Objekt dessen Methode func als Eventhandler aufgerufen wird.
removeEventListener(
  String event, mixed func[, Object obj])
voidEntfernen eines zuvor registrierten Eventhandlers. Es müssen dieselben Argumente wie beim Registrieren angegeben werden.
resize(int w, int h)voidSkaliert die eingebundene Karte auf die angegebene Breite und Höhe.
init()voidManuelles Starten der Karte. Muss ausgeführt werden, wenn autoload False ist.

Events

EventBeschrieb
loadFeuert wenn die Karte fertig geladen ist. Das heisst alle sichtbaren Bilder sind geladen und werden angezeigt.
changeFeuert wenn sich der Kartenausschnitt geändert hat. So z.B. nachdem der Benutzer die Karte verschoben oder gezoomt hat.
maptypechangedFeuert wenn der Kartentyp (Luftbild/Strassenkarte) gewechselt wird.
dragstartFeuert wenn der Benutzer beginnt die Karte mit der Maus zu ziehen.
dragendFeuert wenn der Benutzer die Maus nach dem Ziehen wieder loslässt.
mouseclickFeuert wenn der Benutzer in die Karte klickt.
panstartFeuert wenn die Karte beginnt sich zu verschieben. Dies kann durch Drücken der Verschiebungspfeile oder der Pfeiltasten der Tastatur sein, nicht aber beim Ziehen der Karte mit der Maus.
panendFeuert wenn die Verschiebung der Karte beendet wird.
zoomstartFeuert wenn die Karte gezoomt wird.
zoomendFeuert wenn die Zoom-Animation der Karte beendet ist
mapmoveFeuert fortlaufend, während die Karte bewegt wird.
mousemoveFeuert fortlaufend, während die Maus innerhalb der Karte bewegt wird.
geopositionLiefert Informationen zur Genauigkeit des Kartenzentrums. Argument enthält folgende Eigenschaften:
type: Art/Präzision der Georeferenz; mögliche Werte: point,street,city,place,area
score: Bewertung des Resultats
  100: eindeutig
  90: interpoliert
  80: mehrere Kandidaten
  70: mehr als 8 Treffer
  6x: Eingabe korrigiert
  50: Hausnummer ignoriert
  40: Nur Ortschaft
  0: Kein Treffer
error: Fehlermeldung (optional)

Eventhandler werden mit den folgenden Methoden beim Objekt an- und abgemeldet. Ein Handler kann eine globale Funktion oder eine Objektmethode sein und erhält als einziges Argument ein Objekt mit event-spezifischen Eigenschaften.

// Register an event-handler function Map.addEventListener("load", function(e){ alert(e.event); }); // Add and remove an object method as event-listener Map.addEventListener("change", "mapchanged", MyObj); Map.removeEventListener("change", "mapchanged", MyObj);

POI-Kategorien und -gruppen


default: Zoomstufenabhängige Auswahl an POI-Kategorien
verkehr: Verkehr
bergbahn Bergbahn
parkhaus Parkhaus
haltestelle Tram/Bus
zug Zug
viasuisse Verkehrsinfo
gastro: Gastronomie
bar Bar
cafe Café
hotel Hotel
restaurant Restaurant
kultur: Kultur/Freizeit
kino Kino
museum Museum
theater Theater
tour Touren
feuerstelle Feuerstelle
spielplatz Spielplatz
bad Badeanstalt
gebaeude: Öffentl. Gebäude
kirche Kirche
polizei Polizei
schule Schule, Uni
spital Spital
verwaltung Verwaltung
service: Shopping/Service
apotheke Apotheke
geldautomat Geldautomat
post Post
shop Shop
tankstelle Tankstelle
geo: Geo/Wetter
berg Berge
pass Pässe
wasserfall Wasserfälle
webcam Webcam
meteoradar Regenradar
wikipedia Wikipedia

Und so werden POI-Kategorien in der Karte ein- und ausgeschaltet:

Map.showPOIGroup("verkehr,bar,cafe,theater"); Map.hidePOIGroup("mobility");

 

class SearchChPOI

Diese Klasse repräsentiert einen spezifischen POI für die interaktive Karte. Instanzen davon können dem Map-Objekt über die Methode addPOI() hinzugefügt und auf der Karte platziert.

Konstruktor

var Poi = new SearchChPOI({ center:[600000,200000], html:"Sternwarte Bern" }); Map.addPOI(Poi);

Der Konstruktor erwartet ein Objekt mit folgenden benannten Parametern:

ParameterTypOptionalBeschrieb
centerMixedneinPosition des Symbols. String mit Adresse oder Array mit Geo-Koordinaten. Siehe Geo-Referenzen für Details.
htmlStringneinInhalt des POI-Popups. HTML-Code ist erlaubt.
titleStringjaTitelzeile des POI-Poupups
iconStringjaURL der Bilddatei, die als Symbol des POIs verwendet werden soll
widthIntegerjaBreite des POI-Symbols in Pixel
heightIntegerjaHöhe des POI-Symbols in Pixel
offsetArrayjaKoordinaten vom Referenzpunkt des POI-Symbols in Pixel: [x,y]. Wird automatisch als [width/2, height/2] berechnet, falls nicht angegeben.
enabledBooleanjaTrue (Default) wenn der POI-Text beim Überfahren mit der Maus angezeigt werden soll
minzoomNumberjaPOI wird erst ab dieser Zoomstufe angezeigt (siehe Parameter zoom von SearchChMap)
maxzoomNumberjaPOI wird nur bis zu dieser Zoomstufe angezeigt

Objektmethoden

MethodeReturnwertBeschrieb
set(Object p)voidSetze/Aktualisiere Eigenschaften des POI-Symbols. Als Argument wird ein Objekt mit denselben benannten Parametern wie beim Konstruktor erwartet.
open()voidÖffnet das POI-Popup mit Titel und HTML-Inhalt. Befindet sich der POI nicht im aktuellen Kartenausschnitt, wird die Karte soweit verschoben, bis der POI sichtbar wird.
close()voidBlendet das POI-Popup wieder aus
show()voidBlendet das POI-Symbol auf der Karte ein
hide()voidBlendet das POI-Symbol auf der Karte aus
destroy()voidEntfernt den POI von der Karte und löscht alle internen Referenzen auf das Objekt
isVisible()booleanGibt an ob der POI im aktuellen Kartenausschnitt sichtbar ist
addEventListener(
  String event, mixed func[, Object obj])
voidRegistrieren eines Eventhandlers.
event: Name des Events. Siehe nachfolgende Liste.
func: Referenz auf eine globale Funktion oder String mit Methodenname von obj.
obj: Objekt dessen Methode func als Eventhandler aufgerufen wird.
removeEventListener(
  String event, mixed func[, Object obj])
voidEntfernen eines zuvor registrierten Eventhandlers. Es müssen dieselben Argumente wie beim Registrieren angegeben werden.

Events

EventBeschrieb
mouseoverFeuert wenn die Maus über das POI-Symbol auf der Karte fährt.
mouseoutFeuert wenn der Mauszeiger das POI-Symbol wieder verlässt.
mouseclickFeuert wenn das POI-Symbol auf der Karte angeklickt wird.
popupopenFeuert wenn das POI-Popup geöffnet wird.
popupcloseFeuert wenn das Popup ausgeblendet wird.
geopositionLiefert Informationen zur Genauigkeit der POI-Position:
Event-Eigenschaften gleich wie bei geoposition von SearchChMap

Eventhandler werden mit den folgenden Methoden beim Objekt an- und abgemeldet. Ein Handler kann eine globale Funktion oder eine Objektmethode sein und erhält als einziges Argument ein Objekt mit event-spezifischen Eigenschaften.

Poi.addEventListener("popupopen", "poiPopup", MyObj); Poi.removeEventListener("popupopen", "poiPopup", MyObj);

Noch Fragen?

Falls etwas nicht wie erwartet funktioniert oder Sie unverzichtbare Funktionen vermissen, lassen Sie es uns wissen. Wir nehmen Ihr Feedback gerne entgegen.