<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" 
      xmlns:thr="http://purl.org/syndication/thread/1.0">
  <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html" />
  <link rel="self" type="application/atom+xml" href="http://www.insideria.com/atom.xml" />
  <id>tag:www.insideria.com,2009://34/tag:www.insideria.com,2009://34.34911-</id>
  <updated>2009-11-16T15:18:56Z</updated>
  <title>Comments for Geo-Blogging with the Google Earth API (http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html)</title>
  <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.21-en</generator>
  <entry>
    <id>tag:www.insideria.com,2009://34.34911</id>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html" />
    <link rel="service.edit" type="application/atom+xml" href="http://blogs.oreilly.com/cgi-bin/mt/mt-atom.cgi/weblog/blog_id=34/entry_id=34911" title="Geo-Blogging with the Google Earth API" />
    <published>2009-01-09T01:48:27Z</published>
    <updated>2009-01-09T03:08:47Z</updated>
    <title>Geo-Blogging with the Google Earth API</title>
    <summary>The concept Geo-tagging data is not new.  With GPS and cellular-network based geolocation available nearly everywhere,  geographic information is showing up everywhere that it is applicable; cell phones, web sites, rss feeds, etc... It is the backbone of the &quot;geoweb&quot;.  There are numerous programs for geo-tagging your data, and you can even geotag your pictures from your iPhone, if you so choose.   With the Google Earth API, you can take this information and publish it on an interactive globe for the entire web to see.</summary>
    <author>
      <name>Andrew Trice</name>
      
    </author>
    
    <category term="Blogs" />
    
    <content type="html" xml:lang="en" xml:base="http://www.insideria.com/">
      <![CDATA[A belated happy holidays and happy new year to everyone!   This year I received a gift that I feel compelled to write about... I hope that anyone else who is both a computer and map nerd will appreciate it.
<br/><br/>
Now, the concept <a href="http://en.wikipedia.org/wiki/Geotag" target="_blank">Geo-tagging</a> data is not new.  With GPS and cellular-network based <a target="_blank" href="http://en.wikipedia.org/wiki/Geolocation">geolocation</a> available nearly everywhere,  geographic information is showing up everywhere that it is applicable; cell phones, web sites, rss feeds, etc... It is the backbone of the "<a target="_blank" href="http://en.wikipedia.org/wiki/Geoweb">geoweb</a>".  There are numerous programs for geotagging your data, and you can even geotag your pictures from your iPhone, if you so choose.
<br/><br/>
<div class="ap_r"><a href="http://www.insideria.com/upload/2009/01/trackstick.jpg" class="highslide" onclick="return hs.expand(this)"><img src="http://www.insideria.com/upload/2009/01/trackstick.jpg" alt="trackstick.jpg" title="Click to enlarge" width="148"/></a></div>
With that out of the way, let's get into what I find to be very interesting.   The gift I mentioned earlier is a <a href="http://www.trackstick.com/products/index.html" target="_blank">Trackstick II</a> (see picture).  It is a portable device (about 4.5 inches x 1 inch x 1/2 inch) that looks like an oversized USB-thumb drive.   You take it with you, and it will track your geographic position (latitude, longitude, & altitude) and the time you were at that location over a period of time.  If you are into hiking, or just tracking where you've been, then this is quite an interesting gadget.   
<br/><br/>
The Trackstick comes with software for geo-tagging your photos based on timestamps.  You can embed the geolocation information directly in the image metadata, or you you can export <a href="http://en.wikipedia.org/wiki/Kmz" target="_blank">KMZ </a>files that can be imported with <a href="http://earth.google.com" target="_blank">Google Earth</a>.
<br/><br/>
Now, this is where I got intrigued... If you can view the exported KMZ in Google Earth, what's stopping you from using that same exported data in the <a href="http://code.google.com/apis/earth/" target="_blank">Google Earth browser plugin</a>?
<br/><br/>
Well, nothing is stopping you.   You can view this information directly in the browser using the Google Earth browser plugin.  It works on both Mac and Windows, in most browsers (see the <a target="_blank" href="http://code.google.com/apis/earth/">Google Earth API documentation</a> for a list of supported browsers).
<br/><br/>
Below you can see a sample of the output.   This is the record of a New Year's fishing trip with my brother and brother-in-law.  I'm the one in the red jacket.  None of the fish were big enough to keep, but it was a fun outing nonetheless.
<br/><br/>

<a href="http://www.insideria.com/upload/2009/01/screenshot.jpg" class="highslide" onclick="return hs.expand(this)"><img src="http://www.insideria.com/upload/2009/01/screenshot.jpg" alt="screenshot.jpg" title="Click to enlarge" width="500"/></a>
<br/><br/>
Or, you can directly interact with the KMZ output and browser plugin here:<br/>
<a target="_blank" href="http://www.tricedesigns.com/portfolio/geoblog/2009.01.01/">http://www.tricedesigns.com/portfolio/geoblog/2009.01.01/</a>
<br/><br/>
Or, load the KMZ in Google Earth here (must have Google Earth installed):<br/>
<a href="http://www.tricedesigns.com/portfolio/geoblog/2009.01.01/fishing_geoblog.kmz" target="_blank">http://www.tricedesigns.com/portfolio/geoblog/2009.01.01/fishing_geoblog.kmz</a>
<br/><br/>
I like to refer to it as Geo-blogging, for lack of a better term.   It shows where I went on the trip and documents when and where pictures were taken.  If you click on an image, it will show additional details about when and where that specific picture was taken.
<br/><br/>
Loading the KMZ file is easy.  I started with the code from my previous blog post on <a href="http://www.insideria.com/2008/08/exploring-the-google-earth-api.html" target="_blank">Exploring the Google Earth API</a>, and just started ripping out everything that I didn't need.   You can see the full HTML source code below.   Basically, all that it does is instantiate the Google Earth browser plugin, and then use a networkLink object to load the KMZ file.
<br/><br/>
A KMZ file is basically a zip archive containing a KML markup file and any other assets that you want embedded in it.   When the KMZ is exported from the Trackstick Manager software, the thumbnail images and full-size images are embedded within it.   To reduce load time in the browser, I removed the full-size images from the archive and linked them to the images on the server.  I also got rid of some of the extraneous KML markup that cluttered the display.   I left it as simply the images with their clickable descriptions, and the red outline of the driven path.
<br/><br/>
Full HTML Source:
<div class="acode" style="overflow: auto; padding: 10px;" ><div style="overflow-x: visible;"> 
<code language="perl">
<pre>
&lt;<span class="category2">html</span> lang="<span class="quote">en</span>"&gt;
&lt;head&gt;
&lt;meta http-equiv="<span class="quote">Content-Type</span>" content="<span class="quote">text/html; charset=utf-8</span>" /&gt;

&lt;title&gt;Fishing Geo-blog&lt;/title&gt;
&lt;script <span class="category2">type</span>="<span class="quote">text/javascript</span>" src="<span class="quote">http://www.google.com/jsapi?key=ENTER_API_KEY_HERE</span>"&gt;&lt;/script&gt;
&lt;script <span class="category2">type</span>="<span class="quote">text/javascript</span>"&gt;
google.<span class="category2">load</span>("<span class="quote">earth</span>", "<span class="quote">1</span>");
google.<span class="category2">load</span>("<span class="quote">maps</span>", "<span class="quote">2.99</span>");  

<span class="category1">var</span> <span class="category1">ge</span> = <span class="category1">null</span>;
<span class="category1">var</span> geocoder;
<span class="category1">var</span> _position = [0,0,0,0];

<span class="category1">function</span> <span class="category2">init</span>() {
 	geocoder = <span class="category1">new</span> GClientGeocoder();
 	google.earth.createInstance("<span class="quote">map3d</span>", initCB, failureCB);
}

<span class="category1">function</span> initCB(object) {
 	<span class="category1">ge</span> = object;
 	<span class="category1">ge</span>.getWindow().setVisibility(<span class="category1">true</span>);
 
 	<span class="category1">var</span> networkLink = <span class="category1">ge</span>.createNetworkLink("<span class="quote"></span>");
 	networkLink.setFlyToView(<span class="category1">true</span>);
 	<span class="category1">var</span> link = <span class="category1">ge</span>.createLink("<span class="quote"></span>");
 
 	link.setHref( "<span class="quote">http://www.tricedesigns.com/portfolio/geoblog/2009.01.01/fishing_geoblog.kmz?cachebuster=</span>" + <span class="category2">Math</span>.<span class="category2">random</span>() );
 	networkLink.setLink(link);
 	<span class="category1">ge</span>.getFeatures().<span class="category2">appendChild</span>(networkLink);
 
 	<span class="category1">ge</span>.getNavigationControl().setVisibility(<span class="category1">ge</span>.VISIBILITY_SHOW);
}

<span class="category1">function</span> failureCB(object) {
   alert('<span class="quote">load failed</span>');
}
&lt;/script&gt;
&lt;style <span class="category2">type</span>="<span class="quote">text/css</span>"&gt;
&lt;!--
body {
 	margin-left: 0px;
 	margin-top: 0px;
 	margin-right: 0px;
 	margin-bottom: 0px;
}
--&gt;
&lt;/style&gt;&lt;/head&gt;

&lt;body onload='<span class="quote">init()</span>' id='<span class="quote">body</span>' <span class="category2">scroll</span>="<span class="quote">no</span>"&gt;

	&lt;div id='<span class="quote">map3d_container</span>' style="<span class="quote">position:absolute;;border:0px;width:100%;height:100%;</span>"&gt;
		&lt;div id='<span class="quote">map3d</span>' style='<span class="quote">width:100%;height:100%;</span>'&gt;&lt;/div&gt;
	&lt;/div&gt;

&lt;/body&gt;
&lt;/<span class="category2">html</span>&gt;</pre>
</code>
 
</div></div> 
<br/><br/>
___________________________________<br/>
<strong>Andrew Trice</strong><br/>
Principal Architect<br/>
<a href="http://www.cynergysystems.com" target="_blank">Cynergy Systems<br/>
http://www.cynergysystems.com</a>]]>
      
    </content>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2050651</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2050651" />
    <title>Comment from Satish on 2009-01-09</title>
    <author>
        <name>Satish</name>
        <uri>http://satish-as.blogspot.com/</uri>
    </author>
    <content type="html" xml:lang="en" xml:base="http://satish-as.blogspot.com/">
        <![CDATA[<p>Hey, th's damn cool.</p>]]>
    </content>
    <published>2009-01-10T03:22:23Z</published>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2050880</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2050880" />
    <title>Comment from ryan on 2009-01-13</title>
    <author>
        <name>ryan</name>
        <uri>http://www.grindstonemedia.net</uri>
    </author>
    <content type="html" xml:lang="en" xml:base="http://www.grindstonemedia.net">
        <![CDATA[<p>Andrew Powell wrote a sweet blog post how to access Garmin GPS data using AIR Flex, Java and Merapi...</p>

<p>check it out: <a href="http://www.infoaccelerator.net/blog/post.cfm/live-gps-visualizations-with-air-merapi">http://www.infoaccelerator.net/blog/post.cfm/live-gps-visualizations-with-air-merapi</a></p>

<p>thanks for this article i personally believe that everybody should get geocaching and jump on board!!! the more data the better...</p>]]>
    </content>
    <published>2009-01-13T13:25:27Z</published>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2050969</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2050969" />
    <title>Comment from Helen on 2009-01-14</title>
    <author>
        <name>Helen</name>
        <uri></uri>
    </author>
    <content type="html" xml:lang="en" xml:base="">
        <![CDATA[<p>Andrew, after looking at the trackstick web site, are you sure the gift buyer doesn't ulterior motives for buying you it?</p>

<p>:-)</p>]]>
    </content>
    <published>2009-01-14T14:37:14Z</published>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2055447</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2055447" />
    <title>Comment from zhok on 2009-03-18</title>
    <author>
        <name>zhok</name>
        <uri></uri>
    </author>
    <content type="html" xml:lang="en" xml:base="">
        <![CDATA[<p>You can find some of the most amazing places caught from google earth at<br />
<a href="http://www.caughtfromabove.com">http://www.caughtfromabove.com</a><br />
Hope you enjoy ;)</p>]]>
    </content>
    <published>2009-03-18T16:04:56Z</published>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2056903</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2056903" />
    <title>Comment from Ivan on 2009-04-01</title>
    <author>
        <name>Ivan</name>
        <uri></uri>
    </author>
    <content type="html" xml:lang="en" xml:base="">
        <![CDATA[<p>This was great help!<br />
thanks.</p>]]>
    </content>
    <published>2009-04-01T10:09:10Z</published>
  </entry>

  <entry>
    <id>tag:www.insideria.com,2009://34.34911-comment:2069311</id>
    <thr:in-reply-to ref="tag:www.insideria.com,2009://34.34911" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html"/>
    <link rel="alternate" type="text/html" href="http://www.insideria.com/2009/01/geo-blogging-with-the-google-e.html#comment-2069311" />
    <title>Comment from Stefan on 2009-07-28</title>
    <author>
        <name>Stefan</name>
        <uri>http://www.digitalcure.org/</uri>
    </author>
    <content type="html" xml:lang="en" xml:base="http://www.digitalcure.org/">
        <![CDATA[<p>FYI, there is a new software called "Pace & Place" that is able to convert Trackstick TSF files into other GPS file formats, e.g. GPX, KML, KMZ, GDB, MPS, TRK, OVL, etc. The software runs on Windows and Linux PCs (support for MacOS is on the roadmap). Simply download and install<br />
version 0.3 (Milestone 1) or any newer version of "Pace & Place" from here:<br />
<a href="http://www.digitalcure.org/">http://www.digitalcure.org/</a><br />
</p>]]>
    </content>
    <published>2009-07-28T15:44:07Z</published>
  </entry>

</feed
