Thread: [Gpsbabel-misc] Google Maps API
Brought to you by:
robertl
From: Mike B. <mb...@ac...> - 2005-11-08 18:29:34
|
I really like using Google Maps API to plan my geocaching adventures and survey my conquests. I currently use an extended version of a .loc file as source for my Google map. I've added some user data to each waypoint record that selects the icon for a location (I color-code my pushpins - green for found, yellow for DNF/in-progress, and red for not started) as well as a comment that I put in the info window (such as "Found mm/dd/yyyy"). =20 I like this much more than Google Earth. Google Earth is great for browsing different locations, but I find Google Maps much easer to use for my planning purposes. =20 I have two problems I want to solve. =20 1. I currently add my extended data manually using JEdit. I would like to keep a separate file that only contains my personal data and merge it with waypoint data I obtain from GC. The output can be in pretty much any XML format since the Google Maps API is pretty flexible. =20 2. There was a lot of objection on GC to putting their data on a Google Map since the "Terms Of Use" from Google Maps API and GC are at odds about making data public. To skirt this issue, I want to skew the cache location by some random distance 30-100 feet and some random heading. I'd like these new skewed coordinates replace the input coordinates in the output. The skewed coordinates are more than accurate for my mapping purposes but are useless to geocachers. =20 Is there anything in the existing GPSBabel product that would help me here? If not, and the "powers that be" think some of this is desirable, I'd be happy to have a go at contributing some implementation to the cause. =20 |
From: Michael B. <mik...@gm...> - 2005-11-08 19:05:48
|
SSByZWFsbHkgbGlrZSB1c2luZyBHb29nbGUgTWFwcyBBUEkgdG8gcGxhbiBteSBnZW9jYWNoaW5n IGFkdmVudHVyZXMgYW5kCnN1cnZleSBteSBjb25xdWVzdHMuIEkgY3VycmVudGx5IHVzZSBhbiBl eHRlbmRlZCB2ZXJzaW9uIG9mIGEgLmxvYyBmaWxlIGFzCnNvdXJjZSBmb3IgbXkgR29vZ2xlIG1h cC4gSSd2ZSBhZGRlZCBzb21lIHVzZXIgZGF0YSB0byBlYWNoIHdheXBvaW50IHJlY29yZAp0aGF0 IHNlbGVjdHMgdGhlIGljb24gZm9yIGEgbG9jYXRpb24gKEkgY29sb3ItY29kZSBteSBwdXNocGlu cyCWIGdyZWVuIGZvcgpmb3VuZCwgeWVsbG93IGZvciBETkYvaW4tcHJvZ3Jlc3MsIGFuZCByZWQg Zm9yIG5vdCBzdGFydGVkKSBhcyB3ZWxsIGFzIGEKY29tbWVudCB0aGF0IEkgcHV0IGluIHRoZSBp bmZvIHdpbmRvdyAoc3VjaCBhcyAiRm91bmQgbW0vZGQveXl5eSIpLgoKSSBsaWtlIHRoaXMgbXVj aCBtb3JlIHRoYW4gR29vZ2xlIEVhcnRoLiBHb29nbGUgRWFydGggaXMgZ3JlYXQgZm9yIGJyb3dz aW5nCmRpZmZlcmVudCBsb2NhdGlvbnMsIGJ1dCBJIGZpbmQgR29vZ2xlIE1hcHMgbXVjaCBlYXNl ciB0byB1c2UgZm9yIG15CnBsYW5uaW5nIHB1cnBvc2VzLgoKSSBoYXZlIHR3byBwcm9ibGVtcyBJ IHdhbnQgdG8gc29sdmUuCgoxLiBJIGN1cnJlbnRseSBhZGQgbXkgZXh0ZW5kZWQgZGF0YSBtYW51 YWxseSB1c2luZyBKRWRpdC4gSSB3b3VsZCBsaWtlIHRvCmtlZXAgYSBzZXBhcmF0ZSBmaWxlIHRo YXQgb25seSBjb250YWlucyBteSBwZXJzb25hbCBkYXRhIGFuZCBtZXJnZSBpdCB3aXRoCndheXBv aW50IGRhdGEgSSBvYnRhaW4gZnJvbSBHQy4gVGhlIG91dHB1dCBjYW4gYmUgaW4gcHJldHR5IG11 Y2ggYW55IFhNTApmb3JtYXQgc2luY2UgdGhlIEdvb2dsZSBNYXBzIEFQSSBpcyBwcmV0dHkgZmxl eGlibGUuCgoyLiBUaGVyZSB3YXMgYSBsb3Qgb2Ygb2JqZWN0aW9uIG9uIEdDIHRvIHB1dHRpbmcg dGhlaXIgZGF0YSBvbiBhIEdvb2dsZSBNYXAKc2luY2UgdGhlICJUZXJtcyBPZiBVc2UiIGZyb20g R29vZ2xlIE1hcHMgQVBJIGFuZCBHQyBhcmUgYXQgb2RkcyBhYm91dAptYWtpbmcgZGF0YSBwdWJs aWMuIFRvIHNraXJ0IHRoaXMgaXNzdWUsIEkgd2FudCB0byBza2V3IHRoZSBjYWNoZSBsb2NhdGlv bgpieSBzb21lIHJhbmRvbSBkaXN0YW5jZSAzMC0xMDAgZmVldCBhbmQgc29tZSByYW5kb20gaGVh ZGluZy4gSSdkIGxpa2UgdGhlc2UKbmV3IHNrZXdlZCBjb29yZGluYXRlcyByZXBsYWNlIHRoZSBp bnB1dCBjb29yZGluYXRlcyBpbiB0aGUgb3V0cHV0LiBUaGUKc2tld2VkIGNvb3JkaW5hdGVzIGFy ZSBtb3JlIHRoYW4gYWNjdXJhdGUgZm9yIG15IG1hcHBpbmcgcHVycG9zZXMgYnV0IGFyZQp1c2Vs ZXNzIHRvIGdlb2NhY2hlcnMuCgpJcyB0aGVyZSBhbnl0aGluZyBpbiB0aGUgZXhpc3RpbmcgR1BT QmFiZWwgcHJvZHVjdCB0aGF0IHdvdWxkIGhlbHAgbWUgaGVyZT8KSWYgbm90LCBhbmQgdGhlICJw b3dlcnMgdGhhdCBiZSIgdGhpbmsgc29tZSBvZiB0aGlzIGlzIGRlc2lyYWJsZSwgSSdkIGJlCmhh cHB5IHRvIGhhdmUgYSBnbyBhdCBjb250cmlidXRpbmcgc29tZSBpbXBsZW1lbnRhdGlvbiB0byB0 aGUgY2F1c2UuCg== |
From: Robert L. <rob...@us...> - 2005-11-08 20:06:27
|
Michael Berger wrote: > 1. I currently add my extended data manually using JEdit. I would > like to keep a separate file that only contains my personal data > and merge it with waypoint data I obtain from GC. The output can > be in pretty much any XML format since the Google Maps API is That's the kind of thing where XSLT really does seem like the right tool to use. (See, Dave, I'm not fundamentally opposed to XSLT. :-) Take this set of tags from this file, match it to the parent tags in that file and merge the children. You could probably bludgeon in a special hack into the 'if correct_coords' test in duplicate.c to reach into the child and merge the format specific gpx extras tags in the fs data. But that's way too horrible to do in the released code. Filters shouldn't know about fs data about where the data came from.. > to skew the cache location by some random distance 30-100 feet and > some random heading. I'd like these new skewed coordinates replace > the input coordinates in the output. The skewed coordinates are You could use the 'correct' suboption in the duplicate filter and an external randomizer to add jitter. Of course, if you have an external randomizer, it's surely easier to just randomize the source GPX anyway. I don't know that solves the legal concerns, though. It also sounds funky enough that I'm not sure a randomization filter is a good fit for GPSBabel even though it'd be trivial to code. So, no, I can't really say that GPSBabel really offers much help in either case for you in anything more than a circus freakshow kind of way. -- Support GPSBabel by helping to improve it or fund those that that have done so. Visit: http://sourceforge.net/donate/index.php?group_id=58972 |
From: Jeff B. <je...@bo...> - 2005-11-09 02:37:07
|
This doesn't really answer your questions, but my mapping tool will=20 allow you to plot a GPX file onto a map without messing around with the A= PI. http://boulter.com/gps/maps/ Jeff Michael Berger wrote: > > I really like using Google Maps API to plan my geocaching adventures=20 > and survey my conquests. I currently use an extended version of a=20 > .loc file as source for my Google map. I've added some user data to=20 > each waypoint record that selects the icon for a location (I=20 > color-code my pushpins =96 green for found, yellow for DNF/in-progress,= =20 > and red for not started) as well as a comment that I put in the info=20 > window (such as "Found mm/dd/yyyy"). > > I like this much more than Google Earth. Google Earth is great for=20 > browsing different locations, but I find Google Maps much easer to use=20 > for my planning purposes. > > I have two problems I want to solve. > > 1. I currently add my extended data manually using JEdit. I would=20 > like to keep a separate file that only contains my personal data and=20 > merge it with waypoint data I obtain from GC. The output can be in=20 > pretty much any XML format since the Google Maps API is pretty flexible= . > > 2. There was a lot of objection on GC to putting their data on a=20 > Google Map since the "Terms Of Use" from Google Maps API and GC are at=20 > odds about making data public. To skirt this issue, I want to skew=20 > the cache location by some random distance 30-100 feet and some random=20 > heading. I'd like these new skewed coordinates replace the input=20 > coordinates in the output. The skewed coordinates are more than=20 > accurate for my mapping purposes but are useless to geocachers. > > Is there anything in the existing GPSBabel product that would help me=20 > here? If not, and the "powers that be" think some of this is=20 > desirable, I'd be happy to have a go at contributing some=20 > implementation to the cause. > > =20 > |
From: Adam S. <ada...@un...> - 2005-11-09 03:07:25
|
On 11/08/05, Jeff Boulter wrote: > >This doesn't really answer your questions, but my mapping tool will allow you to plot a GPX file onto a map without messing around with the API. > ><http://boulter.com/gps/maps/>http://boulter.com/gps/maps/ As will mine: http://www.gpsvisualizer.com/map?form=google Adam |
From: Brian L. <bl...@br...> - 2005-11-09 12:29:27
|
On Nov 8, 2005, at 1:29 PM, Mike Berger wrote: > 1. I currently add my extended data manually using JEdit. I would > like to keep a separate file that only contains my personal data > and merge it with waypoint data I obtain from GC. The output can > be in pretty much any XML format since the Google Maps API is > pretty flexible. I agree with Robert that XSL-T is the right way to go with this. I'm not sure what kind of workflow you're using, but a stand-alone XSL-T processor (such as the venerable xsltproc that's part of libxslt, I think) will probably do the job just fine. If you want to extend your XSL-T stylesheets with some functionality that can't be (easily) performed with native functions, you can do that, too, typically in the host language. For example, with Python's 4XSLT, you can write extension functions in Python and then call them from the stylesheet. This would probably suffice for adding some kind of randomization to the position, as I think the math functions in XSL aren't strong enough. -- __ ____ / / / __/ Brian Lalor / _ \/__ \ bl...@br... /_.__/____/ http://bravo5.org/ |
From: Dave P. <da...@dp...> - 2005-11-09 17:05:34
|
On Wed, 2005-11-09 at 07:29 -0500, Brian Lalor wrote: > On Nov 8, 2005, at 1:29 PM, Mike Berger wrote: > > > 1. I currently add my extended data manually using JEdit. I would > > like to keep a separate file that only contains my personal data > > and merge it with waypoint data I obtain from GC. The output can > > be in pretty much any XML format since the Google Maps API is > > pretty flexible. > I agree with Robert that XSL-T is the right way to go with this. I'm > not sure what kind of workflow you're using, but a stand-alone XSL-T > processor (such as the venerable xsltproc that's part of libxslt, I > think) will probably do the job just fine. If you want to extend > your XSL-T stylesheets with some functionality that can't be (easily) > performed with native functions, you can do that, too, typically in > the host language. For example, with Python's 4XSLT, you can write > extension functions in Python and then call them from the > stylesheet. This would probably suffice for adding some kind of > randomization to the position, as I think the math functions in XSL > aren't strong enough. <grin/> You haven't met Dimitre! He can make XSLT 1.0 sing and dance.. OK I'm exaggerating. http://www.topxml.com/xsl/articles/df/ is an article. The code is on sourceforge. He has implemented a random function that may suffice. If you can specify a mapping that you want, input xml element, output xml element I'm happy to give you a start? regards DaveP > |
From: Brian L. <bl...@br...> - 2005-11-09 19:24:54
|
On Nov 9, 2005, at 12:05 PM, Dave Pawson wrote: > <grin/> You haven't met Dimitre! He can make XSLT 1.0 sing and dance.. Like Perl, just because you *can* doesn't mean you *should*. ;-) I do appreciate native solutions like this, but sometimes it's just easier to implement it natively! -- __ ____ / / / __/ Brian Lalor / _ \/__ \ bl...@br... /_.__/____/ http://bravo5.org/ |