59 |
float rlon; |
float rlon; |
60 |
} coord_t; |
} coord_t; |
61 |
|
|
62 |
//http://www.internettablettalk.com/forums/showthread.php?t=5209 |
typedef enum { |
63 |
//https://garage.maemo.org/plugins/scmsvn/viewcvs.php/trunk/src/maps.c |
OSM_GPS_MAP_SOURCE_NULL, |
64 |
//http://www.ponies.me.uk/maps/GoogleTileUtils.java |
OSM_GPS_MAP_SOURCE_OPENSTREETMAP, |
65 |
//http://www.mgmaps.com/cache/MapTileCacher.perl |
OSM_GPS_MAP_SOURCE_OPENSTREETMAP_RENDERER, |
66 |
#define MAP_SOURCE_OPENSTREETMAP "http://tile.openstreetmap.org/#Z/#X/#Y.png" |
OSM_GPS_MAP_SOURCE_OPENAERIALMAP, |
67 |
#define MAP_SOURCE_OPENSTREETMAP_RENDERER "http://tah.openstreetmap.org/Tiles/tile/#Z/#X/#Y.png" |
OSM_GPS_MAP_SOURCE_MAPS_FOR_FREE, |
68 |
#define MAP_SOURCE_OPENAERIALMAP "http://tile.openaerialmap.org/tiles/1.0.0/openaerialmap-900913/#Z/#X/#Y.jpg" |
OSM_GPS_MAP_SOURCE_GOOGLE_STREET, |
69 |
#define MAP_SOURCE_GOOGLE_MAPS "http://mt#R.google.com/mt?x=#X&y=#Y&zoom=#S" |
OSM_GPS_MAP_SOURCE_GOOGLE_SATELLITE, |
70 |
//No longer working |
OSM_GPS_MAP_SOURCE_GOOGLE_HYBRID, |
71 |
//#define MAP_SOURCE_GOOGLE_HYBRID "http://mt#R.google.com/mt?n=404&v=w2t.99&x=#X&y=#Y&zoom=#S" |
OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_STREET, |
72 |
#define MAP_SOURCE_GOOGLE_HYBRID "http://mt#R.google.com/mt?x=#X&y=#Y&zoom=#S" |
OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_SATELLITE, |
73 |
#define MAP_SOURCE_GOOGLE_SATTELITE "http://khm#R.google.com/kh?n=404&v=32&x=#X&y=#Y&z=#Z" |
OSM_GPS_MAP_SOURCE_VIRTUAL_EARTH_HYBRID, |
74 |
#define MAP_SOURCE_GOOGLE_SATTELITE_QUAD "http://khm#R.google.com/kh?n=404&v=3&t=#Q" |
OSM_GPS_MAP_SOURCE_YAHOO_STREET, |
75 |
#define MAP_SOURCE_MAPS_FOR_FREE "http://maps-for-free.com/layer/relief/z#Z/row#Y/#Z_#X-#Y.jpg" |
OSM_GPS_MAP_SOURCE_YAHOO_SATELLITE, |
76 |
#define MAP_SOURCE_VIRTUAL_EARTH_SATTELITE "http://a#R.ortho.tiles.virtualearth.net/tiles/a#W.jpeg?g=50" |
OSM_GPS_MAP_SOURCE_YAHOO_HYBRID |
77 |
|
} OsmGpsMapSource_t; |
78 |
|
|
79 |
|
typedef struct { |
80 |
|
gint x, y, w, h; |
81 |
|
} OsmGpsMapRect_t; |
82 |
|
|
83 |
|
typedef void (*OsmGpsMapBalloonCallback)(cairo_t *, OsmGpsMapRect_t *rect, |
84 |
|
gpointer data); |
85 |
|
#define OSM_GPS_MAP_BALLOON_CALLBACK(f) ((OsmGpsMapBalloonCallback) (f)) |
86 |
|
|
87 |
GType osm_gps_map_get_type (void) G_GNUC_CONST; |
GType osm_gps_map_get_type (void) G_GNUC_CONST; |
88 |
|
|
89 |
|
const char* osm_gps_map_source_get_friendly_name(OsmGpsMapSource_t source); |
90 |
|
const char* osm_gps_map_source_get_repo_uri(OsmGpsMapSource_t source); |
91 |
|
const char *osm_gps_map_source_get_image_format(OsmGpsMapSource_t source); |
92 |
|
int osm_gps_map_source_get_min_zoom(OsmGpsMapSource_t source); |
93 |
|
int osm_gps_map_source_get_max_zoom(OsmGpsMapSource_t source); |
94 |
|
|
95 |
void osm_gps_map_download_maps (OsmGpsMap *map, coord_t *pt1, coord_t *pt2, int zoom_start, int zoom_end); |
void osm_gps_map_download_maps (OsmGpsMap *map, coord_t *pt1, coord_t *pt2, int zoom_start, int zoom_end); |
96 |
void osm_gps_map_get_bbox (OsmGpsMap *map, coord_t *pt1, coord_t *pt2); |
void osm_gps_map_get_bbox (OsmGpsMap *map, coord_t *pt1, coord_t *pt2); |
97 |
void osm_gps_map_set_mapcenter (OsmGpsMap *map, float latitude, float longitude, int zoom); |
void osm_gps_map_set_mapcenter (OsmGpsMap *map, float latitude, float longitude, int zoom); |
100 |
void osm_gps_map_add_track (OsmGpsMap *map, GSList *track); |
void osm_gps_map_add_track (OsmGpsMap *map, GSList *track); |
101 |
void osm_gps_map_clear_tracks (OsmGpsMap *map); |
void osm_gps_map_clear_tracks (OsmGpsMap *map); |
102 |
void osm_gps_map_add_image (OsmGpsMap *map, float latitude, float longitude, GdkPixbuf *image); |
void osm_gps_map_add_image (OsmGpsMap *map, float latitude, float longitude, GdkPixbuf *image); |
103 |
|
gboolean osm_gps_map_remove_image (OsmGpsMap *map, GdkPixbuf *image); |
104 |
void osm_gps_map_clear_images (OsmGpsMap *map); |
void osm_gps_map_clear_images (OsmGpsMap *map); |
105 |
void osm_gps_map_osd_speed (OsmGpsMap *map, float speed); |
void osm_gps_map_osd_speed (OsmGpsMap *map, float speed); |
106 |
void osm_gps_map_draw_gps (OsmGpsMap *map, float latitude, float longitude, float heading); |
void osm_gps_map_draw_gps (OsmGpsMap *map, float latitude, float longitude, float heading); |
114 |
gfloat latitude, gfloat longitude, |
gfloat latitude, gfloat longitude, |
115 |
gint *pixel_x, gint *pixel_y); |
gint *pixel_x, gint *pixel_y); |
116 |
void osm_gps_map_scroll (OsmGpsMap *map, gint dx, gint dy); |
void osm_gps_map_scroll (OsmGpsMap *map, gint dx, gint dy); |
117 |
|
float osm_gps_map_get_scale(OsmGpsMap *map); |
118 |
|
void osm_gps_map_draw_balloon (OsmGpsMap *map, float latitude, float longitude, OsmGpsMapBalloonCallback cb, gpointer data); |
119 |
|
void osm_gps_map_clear_balloon (OsmGpsMap *map); |
120 |
|
|
121 |
G_END_DECLS |
G_END_DECLS |
122 |
|
|