In diesem Beispiel werden benutzerdefinierte Kartenstile auf die Basiskarte angewendet. Diese Karte zeigt Waikiki auf Hawaii und hat ein tropisches Farbschema. Außerdem wurde maxPlaceCount auf 18 gesetzt, um mehr POIs anzuzeigen.
/*
* Always set the map height explicitly to define the size of the div element
* that contains the map.
*/
#map {
height: 100%;
}
/*
* Optional: Makes the sample page fill the window.
*/
html,
body {
height: 100%;
margin: 0;
padding: 0;
}
<html>
<head>
<title>Local Context Styles</title>
<script src="https://polyfill.io/v3/polyfill.min.js?features=default"></script>
<link rel="stylesheet" type="text/css" href="./style.css" />
<script type="module" src="./index.js"></script>
</head>
<body>
<div id="map"></div>
<!--
The `defer` attribute causes the callback to execute after the full HTML
document has been parsed. For non-blocking uses, avoiding race conditions,
and consistent behavior across browsers, consider loading using Promises.
See https://developers.google.com/maps/documentation/javascript/load-maps-js-api
for more information.
-->
<script
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB41DRUbKWJHPxaFjMAwdrzWzbVKartNGg&callback=initMap&libraries=localContext&v=beta"
defer
></script>
</body>
</html>
Auf die Basiskarte kann über das map-Attribut eines google.maps.localContext.LocalContextMapView-Objekts zugegriffen werden. Diese Karte ist ein reguläres google.maps.Map-Objekt und kann mit allen Parametern und Methoden angepasst werden, die für diese Klasse verfügbar sind. So lassen sich beispielsweise benutzerdefinierte Markierungen und Ereignis-Listener hinzufügen.
var marker = new google.maps.Marker({position: center, map: localContextMapView.map});
Die Standardstile eines google.maps.localContext.LocalContextMapView.map-Objekts unterscheiden sich von denen eines Standard-Map-Objekts. Sie können die Standardstile entweder überschreiben oder Ihren benutzerdefinierten Stil mit den Standardstilen der lokalen Kontextbibliothek zusammenführen. Weitere Informationen finden Sie unter Karte gestalten.
So ergänzen Sie die Standardstile von LocalContextMapView mit benutzerdefinierten Stilen (stylesArray):
Standardmäßig werden diese Markierungen unter den POI-Markierungen der lokalen Kontextbibliothek angezeigt. Damit die Markierungen der lokalen Kontextbibliothek die benutzerdefinierte Markierung nicht verdecken, setzen Sie das Attribut zIndex auf einen höheren Wert als maxPlaceCount.
TypeScript
// Add a marker at the center point
new google.maps.Marker({
position: center,
map: map,
icon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAdUlEQVR4AWMYOWAU/AfhYWMBCxA3A/FlIN4MxN7I6gjg80DcD8QC+CzIxqIxH6aOSHwfYQmmBZexuQymjgTcj8uCz1gUHybDgvO4LFiMRXE4GRb8x2UBDxCXQ8PxPdSrLNSxAD+g3ALCeNQCKoHhZcHAg1EAAM3cyWj3TGxhAAAAAElFTkSuQmCC",
zIndex: 30,
});
// Add a marker at the center point
new google.maps.Marker({
position: center,
map: map,
icon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAdUlEQVR4AWMYOWAU/AfhYWMBCxA3A/FlIN4MxN7I6gjg80DcD8QC+CzIxqIxH6aOSHwfYQmmBZexuQymjgTcj8uCz1gUHybDgvO4LFiMRXE4GRb8x2UBDxCXQ8PxPdSrLNSxAD+g3ALCeNQCKoHhZcHAg1EAAM3cyWj3TGxhAAAAAElFTkSuQmCC",
zIndex: 30,
});