'route-me'是一个iPhone地图引擎,我想添加自己的地图源。我在我的服务器上有所有的地图图像,但我不知道如何添加地图源?任何人都可以帮忙吗?
答案 0 :(得分:4)
似乎有两种方法可以做到这一点:
首先,来自文档:
如果您有自己的地图,则可以使用Mapnik作为框架,OpenStreetMap作为主机。然后,您可以使用RMOpenStreetMapsSource
类指向地图以指定网址。
可替换地,
您可以使用app进行路由 - 这个名为SimpleMap以及一个名为Map2sqlite的扩展。这允许您使用一个类RMDBTileSource
,并指向您的地图的sqlite DB文件作为源。我在google groups article covering this topic.
答案 1 :(得分:4)
谷歌地图:
RegionGmapTile.h中的
#import <Foundation/Foundation.h>
#import "RMAbstractMercatorWebSource.h"
@interface RegionGmapTile : RMAbstractMercatorWebSource
{
}
@end
RegionGmapTile.m中的
#import "RegionGmapTile.h"
@implementation RegionGmapTile
-(NSString*) tileURL: (RMTile) tile
{
NSString* url = [NSString stringWithFormat:@"http://mt0.google.com/vt/lyrs=m@127&x=%d&y=%d&z=%d",tile.x, tile.y,tile.zoom];
return url;
}
-(NSString*) uniqueTilecacheKey
{
return @"NLSHistoricMap";
}
-(NSString *)shortName
{
return @"NLS Historic Map";
}
-(NSString *)longDescription
{
return @"NLS Historic Map Test";
}
-(NSString *)shortAttribution
{
return @"Google maps";
}
-(NSString *)longAttribution
{
return @"Google maps";
}
@end
在你的路线中留下了一些声音
[[RMMapContents alloc] initForView:mvMap];
mvMap.contents.tileSource = [[RegionGmapTile alloc] init];
和谷歌地图显示没有任何键
答案 2 :(得分:2)
那么,下面的代码应该完成工作吗?
id <RMTileSource> tileSource;
NSURL *mapURL = [NSURL URLWithString:@"myOSM_URL"];
tileSource = [[[RMOpenStreetMapSource alloc] initWithURL:mapURL] autorelease];
执行此结果时出错:
-[RMOpenStreetMapSource initWithURL:]: unrecognized selector sent to instance 0x5b0c310