Yesterday I made some small changes to the Yahoo! & Google Maps services in Maps. They now both have mouse wheel zoom functionality, which is on by default, but can be disabled by passing along the parameter autozoom=off in the wiki code. I also added handling for map control types to Yahoo! Maps. By default, the maps will contain both a pan and a zoom control, but by setting the control parameter to zoom or pan, you can get it to only display these, respectively. A last little change I made was in the Google Maps code, where the Google Maps API was called for every map, while it should only be for the first one on the page.
Cause I can’t really find a conclusive answer to if it’s possible to have Google Maps & Google Earth as one service in Maps, I decided to work on the semantic part of my project first: Semantic Maps. I’m currently attempting to get the semantic functionality that Semantic Google Maps has working for both Google and Yahoo! maps, but this is proving to be quite chalanging, even although I’ve got a good example of how it works. Tomorrow I’m going to have another close look at how SMW works, and try to un-confuse myself.
Today I had some fun checking out the Google Earth API. You can do a lot of cool things with it, and it’s relatively easy to integrate with Google Maps. Check out this fun demo integration.

I also did some effort to get the hang of KML, which I will need to create Google Earth maps with. The KML Interactive Sampler for Google Earth made this really easy. I’m now going to check out if it’s possible to ‘merge’ Google Maps and Google Earth functionality into one service in Maps. If this is possible, users will just have to add earth=enabled parameter or something like that to their Google Maps wiki code to also enable the Google Earth map type.
Anyway, that’s for tomorrow when I can use both eyes again. Today I messed around a little on the web and came across some interesting apps I didn’t know yet. I also gave up on fixing my Vista Ultimate x64 on my dual core pc. For some reason the drivers keep craching, although I installed the 64 bit versions. Now I have a dual boot with Win XP Corp x64 sp2 and Win Vista Ultimate sp1, which are both working fine. I don’t get why the x64 Vista won’t work, since my dual core is running a x64 XP, and I used the same installer for the Vista as I did on my quad core pc, which is running it without any problems. So lame there is no protableu3 version of FireFox 3,which would make it unnecessary to install all my plugins (Firebug, WebDev, Dictionaries, …) again after reinstalling my OS. Maybe I’ll just do an attempt to make a windows usb stick after win 7 is released
Almost forgot: I registered a profile @ netlog (yeah, I made an account on a social networking site (and not social.msdn
), don’t be schocked!) with the username 600613. WTF @ no one having that one yet xD
Yesterday, when I was cycling home, from Sint-Niklaas to Hulst, as usual, my left eye got hit by a small piece of flying debry. At first I thought there was a sharp piece of stone in my eye that I couldn’t get out. But after going to the optician (and having a lot of pain – lame analogue shit
) , it was clear there was nothing in my eye, but a part of the upper layer was damaged. I now have to take painkillers and some antibiotics for 2 days, after which (lucky!) my eye should be completely healed without any permanent effects.
This is really lame though, couse I’m not able to efficiently work on my GSoC project with one eye, and reading articles is also quite tiring. Could have been worse though – lol.
To make it easier for users to create a map in wiki markup, and to keep the syntaxis flexible enough to allow mutliple mapping services, I decided to go for named parameters. This means that instead of {{#foo:1|2|3}}, the wiki markup will look like {{#foo:a=1|b=2|c=3}}. The two most important advantages are that you can change the order of the parameters, which you could not do in the first one, and as a result, can omit any parameter, not just the ones at the end of the row. Although it’s working perfectly as far as I can determine, I’m not sure yet of my approach to determining the parameters. I’m going to send that code to Yaron as soon as I see him on-line.
After 2 days, I largely completed the Yahoo! Maps integration. A few small issues remain, but these should not be hard to fix. I had a really retarded experience with the JavaScript for the Yahoo! map though. I named the variable yahoo-$egYahooMapsOnThisPage, which would then, for the first map, result into yahoo-1. Somehow I completely forgot you can’t put a dash in a variable name, and spent 3 or 4 hours searching for my error. I won’t make that dumb mistake again any time soon though.
Here you have a screen shot of a yahoo map, created with the named parameters syntax.

This is the wiki code that generated this map:
{{
#display_point:
service=yahoomaps
|coordinates=55.7557860, 37.6176330
|zoom=7
|width=550
|height=350
|type=hybrid
}}
Two days ago, me and Yaron decided, after getting the suggestion from Sergey Chernyshev, the author of the Google Geocoder extension, to split the Semantic Maps extension into two parts. The first part will contain all non semantic elements, like the parser functions, and geocoding related code, and will be called Maps. The second one will extend Maps with the semantic functionality originally planned for Semantic Maps, and be called Semantic Maps.
The splitting up of the extension will have the ovious advantage that all functionality used in the Maps extension will also be usable in non semantic context.
I’ve transferred all my wiki dev code from dev.bn2vs.com to my development usb stick, which contains a mobile server and has Zend Studio on it, which will enable me to work on my GSoC project everywhere, even without having an internet connection and also to use Zend Studio, which is a lot better then just using the notepad like text editor that comes with WinSCP. Other advantages will be that there will be no delay cause no data will have to be shuffled around via ftp, and it’ll be a lor easier for me to take backups.
Yesterday I was working on my GSoC project and moving a whole bunch of data around (I’ll post more on this later on). I somehow succeeded in deleting my blog’s database.
…
…
…
Indeed, that’s just a huge fail -_-”
Anywayz, I got it back up now, and restored about half of the posts by copieng their html source from the google cache. I’m not going to recover the less imprortant ones, and the comments will also be lost
The post dates are also wrong now, which I’m going to fix in a moment. After I’m done I’m so going to take a bakup
EDIT: I got tired of poking around in my blog database, so not all post have the correct date. They are all in the correct order though.
I just finished integrating the Google Geocoder function into Semantic Maps. It still needs some tweaking here and there, but the basics are done. All parser functions from Google Geocoder are working, and so is display_address. The main file for this functionality is SM_Geocoder.php, which is located in the root of the extension, and contains static functions to format the coordinates, and a function that, depending on the chosen geocoding service, calls another function in the geocoder’s class, which does the actual geocoding. The goecoder classes are located in the directory Geocoders. At the moment, only a SMGoogleGeocode, that uses the Google Geocoder service, is available yet, but to add a new service, you only need to create a new class for it, and add a reference to it to the switch block in the function determining the class that should be used.

The wiki-code responsible for this map: {{#display_address:googlemaps|Moscow, Russia|7|normal|550|350}}
My next step will be to get the Yahoo! Maps working to the same point as Google Maps, which will uncover any possible errors in the modularity of the current code.
Today I finally got the first parser function, #display_point, of the Semantic Maps extension working. After having quite some troubles with the basic set-up of the extension, this is the first visible result.
Semantic Maps displaying a point on a Google Map

The wiki-code responsible for this map: {{#display_point:googlemaps|55°45′06″,37°37′04″|7|hybrid|550|320}}
The next step is the integration of the Google Geocoder extension. This extension contains 3 parser functions that will be absorbed into Semantic Maps: #geocode, #geocodelong and #geocodelat. Once integration is complete, I’ll also add a #display_address function, which in essence will do the same as #display_point, but just geocode the provided address.
Another thing I’ll ahve to hold into account is that the extension needs to enable the users to choose a geocoding service. Google Geocoder obviously only supports the one of Google.
Today I finally had time to work on my GSoC project again. I used it to figure out how the Yahoo! Maps API works.
It’s quite similar to Google Maps actually (compared to Open Layers) and easy enough to integrate with Semantic Maps. I also created the base of the extension page for Semantic Maps, on mediawiki.org and worked on the core code of the extension.
I’m hoping to make considerable progress with the later tomorrow
Even though I’m in the middle of my exam period, I was able to work on my Google Summer of Code project this weekend since tomorrow, Monday, I have exam informatics (theory). I need to get -6.5% somehow to fail for informatics this year – lol.
After I finished to look over Open Layers, Semantic Google Maps, Semantic Forms, Semantic Result Formats and the Google Geocoder extension, and writing the base of the Semantic Maps extension, I finally started on creating a draft for the whole extension, describing what functionality it should have, how this functionality should work and hook into MediaWiki, and what the overall structure should look like. Yaron helped me out with some questions I had about the parser functions for Semantic Maps, and after reading about some more aspects of MediaWiki extensions I now realize I’m not familiar enough about, I’ll start creating the core functionality of Semantic Maps
I won’t have time for that tomorrow though, since I’ll have to study for my exam French *emo screamz*.
Did I mention that last Friday I went to school with a big blinking GSoC sticker on my forehead?

Categories
Tag Cloud
Blog RSS
Comments RSS
Last 50 Posts
Back
Back
Void « Default
Life
Earth
Wind
Water
Fire
Light 