Vanuit een tabel met accomodaties met bijbehorende latitudes en longitudes probeer ik een OV2-bestand op te bouwen voor gebruik als POI in een TomTom.
Als ik een OV2-bestand genereer op http://garmin.gps-data-team.com/poi_manager_online.php krijg ik de volgende inhoud:
% î[ ~|N "Centrum Eindhoven"
Via mijn code krijg ik echter:
$ ï[ ~|N "Centrum Eindhoven"
Het is dus maar een heel klein verschil, maar hoe kan dat?
Het bestand wat ik krijg via de site, werkt op mijn TomTom, mijn bestand niet.
Op internet kan IK niks vinden verder over het genereren van een OV2-bestand. Heeft iemand hier ervaring mee?
Dit is de functie 'make_ov2_record':
Als ik een OV2-bestand genereer op http://garmin.gps-data-team.com/poi_manager_online.php krijg ik de volgende inhoud:
% î[ ~|N "Centrum Eindhoven"
Via mijn code krijg ik echter:
$ ï[ ~|N "Centrum Eindhoven"
Het is dus maar een heel klein verschil, maar hoe kan dat?
Het bestand wat ik krijg via de site, werkt op mijn TomTom, mijn bestand niet.
Op internet kan IK niks vinden verder over het genereren van een OV2-bestand. Heeft iemand hier ervaring mee?
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| <?php ob_start(); require_once '../../includes/base.php'; //CREATE STRING $string=''; $qry=$db->Query('SELECT * FROM content_accomodation WHERE id='.intval($_GET['id'])); while($q=mysql_fetch_assoc($qry)){ //FILENAME $downloadfile=$q['name'].'.OV2'; $string.=make_ov2_record($q['name'],$q['longitude'],$q['latitude']); } //WRITE TO FILE $fp = fopen ($downloadfile, 'w+'); if ($fp) { fputs ($fp, $string ); fclose ($fp); } header("Location: /export/poi/".$downloadfile); ?> |
Dit is de functie 'make_ov2_record':
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
| <?php //CREATE RECORD function make_ov2_record($omschrijving, $oost, $noord) { $TT = chr(0x02). pack("V",strlen($omschrijving)+14).' '. pack("V",round($oost*100000)).' '. pack("V",round($noord*100000)).' '. '"'.$omschrijving.'"'. chr(0x00).' '; return $TT; } ?> |