For the past four summers, I have had the fortune to present at Google’s Geo Teachers Institutes (GTI). At these GTIs, educators learn about varying Google Geo Tools (though I prefer services over tools) like Google’s My Maps, Google Earth, Earth Engine, StreetView/360 Imagery, Google Tour Builder, and more. My task this summer was to create an advanced session using kml. This assignment was in my wheelhouse. After all, learning kml was the stepping stone to creating geteach.com. Oddly enough this task was assigned around our school’s “hour of code” week. One of the coolest things about teaching geography is that every week has the potential for an hour of code. It was in this thinking that the “An Hour (ish) of KML Code” session was created. Sorry, this post is about to get real geeky, but geek is chic.
Purpose:
Coding with KML…an attempt to present through a blog. This is totally going to fail, but it will be fun to write.
Materials:
PC/Mac
Google Earth (For viewing our kml)
Google Drive (For hosting our kml)
XML Editey (Used for coding kml within Google Drive – You can use any text editor, but this drive addition makes life easy)
geteach.com/staticstreet (Taking Google Drive URL and turning it into a direct link)
Simple KML – Link
Package of patience (Trust me on this)
Why teach kml?
Keyhole Markup Language (kml) is an open standard language used by Google Earth to visualize geographic data sets. Because kml is an open standard, other platforms ie. ESRI, QGIS, OpenStreetMap, Leaflet, along with just about every GIS platform can read/render .kml files. Kml files are essentially XML files with the addition of a coordinate system (Latitude and Longitude). In short, kml files are easy to read and write…code.
How to Video: (Written Steps Below)
Steps:
1. Download Simple KML – Link
2. Upload Simple KML to your Google Drive
3. Set the “Simple.kml” share setting to anyone with a link
4. Copy/Paste “Simple.kml” share link into geteach.com/staticstreet input box
5. Then in geteach.com/staticstreet click “Get Link”
– The output link from geteach.com/staticstreet is a direct link to your kml.
6. Open Google Earth
7. Create Folder in Google Earth –> name it “Simple Network Link”
a. Click “Add”
b. Click “Folder”
8. Create Network Link
a. Click on “Simple Network Link” folder
b. Click “Add”
c. Click “Network Link”
d. Name Network Link
e. Copy output link from geteach.com/staticstreet and paste into Google Earth Network Link
f. Click “OK”
10. In Google Drive add Editey XML
11. In Google Drive open “Simple.kml” using Editey XML
12. Find id for “highlight”
13. Change size from 2.0 to 5.0 and….
icon url from “http://maps.google.com/mapfiles/kml/pushpin/ylw-pushpin.png” to “http://maps.google.com/mapfiles/kml/pushpin/red-pushpin.png”
14. In Google Earth refresh network link and mouse over pin.
a. Right Click Network link –> “refresh”
b. It takes about a minute for Google Drive to update saved files. I attempt to speed up this process by refreshing XML Editey,
but I don’t think that works. However, it helps to pass the time.
Congratulations if you made it this far! You are a Super Star!
Here is a link to Google’s KML reference library and endless opportunities – https://developers.google.com/kml/documentation/kmlreference
Happy Coding!