### You're all set!

To start developing, please head over to our developer documentation.

### Activate the Google Maps JavaScript API

To get you started we'll guide you through the Google Developers Console to do a few things first:

1. Create or choose a project
2. Activate the Google Maps JavaScript API and related services
3. Create appropriate keys

# Polygon with Hole

This example creates a polygon with an inner hole, by defining an inner path wound in the opposite direction to the outer path. See the guide to polygons with holes. Note that you can also use the Data layer, which offers a simpler way of creating holes because it handles the order of the inner and outer paths for you.

You can also view this example fullscreen.

```// This example creates a triangular polygon with a hole in it.

function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 5,
center: {lat: 24.886, lng: -70.268},
});

// Define the LatLng coordinates for the polygon's  outer path.
var outerCoords = [
{lat: 25.774, lng: -80.190},
{lat: 18.466, lng: -66.118},
{lat: 32.321, lng: -64.757}
];

// Define the LatLng coordinates for the polygon's inner path.
// Note that the points forming the inner path are wound in the
// opposite direction to those in the outer path, to form the hole.
var innerCoords = [
{lat: 28.745, lng: -70.579},
{lat: 29.570, lng: -67.514},
{lat: 27.339, lng: -66.668}
];

// Construct the polygon, including both paths.
var bermudaTriangle = new google.maps.Polygon({
paths: [outerCoords, innerCoords],
strokeColor: '#FFC107',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FFC107',
fillOpacity: 0.35
});
bermudaTriangle.setMap(map);
}```
`<div id="map"></div>`
```/* 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;
}```
```<!-- Replace the value of the key parameter with your own API key. -->
<script async defer
</script>```

## Try it yourself

Hover at top right of the code block to copy the code or open it in JSFiddle.

```<!DOCTYPE html>
<html>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<title>Polygon with Hole</title>
<style>
/* 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;
}
</style>
<body>
<div id="map"></div>
<script>

// This example creates a triangular polygon with a hole in it.

function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 5,
center: {lat: 24.886, lng: -70.268},
});

// Define the LatLng coordinates for the polygon's  outer path.
var outerCoords = [
{lat: 25.774, lng: -80.190},
{lat: 18.466, lng: -66.118},
{lat: 32.321, lng: -64.757}
];

// Define the LatLng coordinates for the polygon's inner path.
// Note that the points forming the inner path are wound in the
// opposite direction to those in the outer path, to form the hole.
var innerCoords = [
{lat: 28.745, lng: -70.579},
{lat: 29.570, lng: -67.514},
{lat: 27.339, lng: -66.668}
];

// Construct the polygon, including both paths.
var bermudaTriangle = new google.maps.Polygon({
paths: [outerCoords, innerCoords],
strokeColor: '#FFC107',
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: '#FFC107',
fillOpacity: 0.35
});
bermudaTriangle.setMap(map);
}
</script>
<script async defer