2018年11月13日にMobile Dynamic Map 3.0バージョンが発売される運びとなり、従来の2.0バージョンは、2019年12月31日付けでサービスのご提供を終了させていただく予定です。2020年1月からは、Mobile Dynamic Map 2.0バージョンのご利用の際、マップの初期画面でエラーメッセージが表示され、機能をご利用いただけませんので、ご了承ください。

そのため、2019年12月31日までは、Mobile Dynamic Map 2.0バージョンと3.0バージョンとを一緒にご利用いただけますが、2020年1月1日からは、2.0バージョンは終了となり、新たな3.0バージョンのみのご利用となりますので、2.0バージョンの終了前にバージョンの切り替えをお願いいたします。

Mobile Dynamic Map 2.0バージョンから3.0バージョンに移行するための詳しいガイドは、以下のリンクをご参照ください。 ​

※ サービスの終了日程

  • Mobile Dynamic Map SDK 2.0バージョンの新規ダウンロードの終了日:2019年8月1日
  • Mobile Dynamic Map 2.0バージョンのサービス終了日:2020年1月1日

​ ※ サービス移行(マイグレーション)ガイド

iOS用のライブラリ

iOS用のMapsライブラリで提供するクラスに関する情報を提供します。ライブラリでは地図を画面に表示するための地図メインクラスと地図の上にオーバーレイデータを表示するためのオーバーレイクラス、そしてデータクラスを提供します。

SDKおよびサンプルコード >

API呼び出しの例題

iOS Maps API開発のために準備することは次の通りです。

  • XCodeでプロジェクトを作成: この際、入力する‘Bundle Identifier’はアプリケーション登録設定のiOS Bundle IDと必ず一致するように注意してください。
  • https://github.com/navermaps/maps.iosでSDKをダウンロードします。
  • SDKのNMapViewerSDKフレームワークとApiGatewayMacフレームワークをプロジェクトに追加します。NMapViewerSDKはLinked FrameworksでApiGatewayMacはEmbedded Binariesで登録しなければなりません。Embedded Binariesで登録すると、Linked Frameworksにも自動で登録されます。フレームワークはSDKのFrameworksフォルダにあります。

  • プロジェクトBuild設定に次の設定を追加します。

  • Linking > Other Linker Flagsに -ObjC -lxml2フラグを追加します。
  • Search Paths > Framework Search PathsにNMapViewerSDK, ApiGatewayMacフレームワークがあるフォルダが追加されているかを確認します。

  • プロジェクトターゲットのBuild Phasesに次の設定を追加します。

  • New Run Script Phasesにstrip-frameworks.shスクリプトを追加します。
  • スクリプトの位置に合わせてパス名を調整しなければなりません。

  • Info.plistに次の設定を追加します。

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
</dict>

<key>LSApplicationCategoryType</key>
<string>NSLocationWhenInUseUsageDescription</string>
  • Swiftを利用する場合、次の作業が追加的に必要です。

  • Objective-C Bridging Headerを次の内容で作成します。

#ifndef your_project_Bridging_Header_h
#define your_project_Bridging_Header_h

#import <NMapViewerSDK/NMapView.h>
#import <NMapViewerSDK/NMapLocationManager.h>

#endif
  • プロジェクトBuild設定に次の設定を追加します。
    • Swift Compiler - General > Objective-C Bridging Headerに上で作成したヘッダファイルを追加します。
// NAVERの地図のみ画面に表示する簡単な例題です。(ファイル名: MapViewController.m)
#import "MapViewController.h"
#import <NMapViewerSDK/NMapView.h>
#define kClientID @" YOUR_CLIENT_ID" //get your clientID

@interface ViewController () <NMapViewDelegate, NMapPOIdataOverlayDelegate>
@property (nonatomic, strong) NMapView *mapView;
@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // create map view
    self.mapView = [[NMapView alloc] initWithFrame:self.view.bounds];
    // set delegate for map view
    [self.mapView setDelegate:self];
    // set Client ID for Open MapViewer Library
    [self.mapView setClientId:kClientID];
    [self.view addSubview:self.mapView];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

#pragma mark NMapViewDelegate Method

- (void) onMapView:(NMapView *)mapView initHandler:(NMapError *)error {

    if (error == nil) { // success
        // set map center and level
        [self.mapView setMapCenter:NGeoPointMake(126.978371, 37.5666091) atLevel:11];
        [self.mapView setMapEnlarged:YES mapHD:YES];
    } else { // fail
        NSLog(@"onMapView:initHandler: %@", [error description]);
    }
}

#pragma mark NMapPOIdataOverlayDelegate

- (UIImage *) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay imageForOverlayItem:(NMapPOIitem *)poiItem selected:(BOOL)selected {
    return nil;
}

- (CGPoint) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay anchorPointWithType:(NMapPOIflagType)poiFlagType {
    return CGPointZero;
}

- (UIImage*) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay imageForCalloutOverlayItem:(NMapPOIitem *)poiItem
           constraintSize:(CGSize)constraintSize selected:(BOOL)selected
imageForCalloutRightAccessory:(UIImage *)imageForCalloutRightAccessory
          calloutPosition:(CGPoint *)calloutPosition calloutHitRect:(CGRect *)calloutHitRect {
    return nil;
}

- (UIImage*) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay imageForCalloutOverlayItem:(NMapPOIitem *)poiItem
            constraintSize:(CGSize)constraintSize selected:(BOOL)selected
imageForCalloutRightAccessory:(UIImage *)imageForCalloutRightAccessory
            calloutPosition:(CGPoint *)calloutPosition calloutHitRect:(CGRect*)calloutHitRect {
    return nil;
}

- (CGPoint) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay calloutOffsetWithType:(NMapPOIflagType)poiFlagType {
    return CGPointZero;
}

@end

Dataクラス

NGeoPoint

  • Description
    地図上の緯度・軽度の座標を表示するクラスです。

  • Constructor

説明
NGeoPoint(double longitude, double latitude) 緯度・軽度の座標作成
  • Fields
説明
double longitude 軽度
double latitude 緯度

NMapError

  • Initializer
    エラーコードとエラーメッセージを表示するクラスです。

  • Constructor

説明
(id) initWithCode:(int)code message:(NSString *)message エラーコードとエラーメッセージで初期化
  • Properties
説明
@property (nonatomic, assign) int code エラーコード
@property (nonatomic, retain) NSString *message エラーメッセージ

NMapPlacemark

  • Description
    緯度・軽度の座標を住所に変換するメソッドのコールバックインターフェースに転送されるクラスです。住所に番地は含まれません。

  • Initializer

説明
(id) initWithLocation:(NGeoPoint)location addressDictionary:(NSDictionary *)addressDictionary 緯度・軽度の座標と該当の住所で初期化
  • Properties
説明
@property (nonatomic, readonly) NSString *doName 住所の広域市/道を表す。
@property (nonatomic, readonly) NSString *siName 住所の市/群/区を表す。
@property (nonatomic, readonly) NSString *dongName 住所の邑/面/洞を表す。
@property (nonatomic, readonly) NSString *address 住所を返す。

NMapPlacemark

  • Description
    緯度・軽度の座標を住所に変換するメソッドのコールバックインターフェースに転送されるクラスです。住所に番地は含まれません。

  • Initializer

説明
(id) initWithLocation:(NGeoPoint)location addressDictionary:(NSDictionary *)addressDictionary 緯度・軽度の座標と該当の住所で初期化
  • Properties
説明
@property (nonatomic, readonly) NSString *doName 住所の広域市/道を表す。
@property (nonatomic, readonly) NSString *siName 住所の市/群/区を表す。
@property (nonatomic, readonly) NSString *dongName 住所の邑/面/洞を表す。
@property (nonatomic, readonly) NSString *address 住所を返す。
  • Methods
説明
String toString() 住所を返す。

NMapLocationManager

  • Description
    端末の現在の位置の検索と羅針盤機能を使用するためのクラスです。内部的にシステムで提供するCLLocationManagerクラスを利用します。羅針盤機能は現在の位置検索の状態でのみ使えます。

  • Constants
    現在の位置の検索および羅針盤モニタリングの失敗に関するエラーの種類は次の通りです。

説明
NMapLocationManagerErrorTypeTimeout 一定時間以内に現在の位置の検索に失敗
NMapLocationManagerErrorTypeUnavailableArea 現在の位置を地図でサポートしない
NMapLocationManagerErrorTypeDenied 現在の位置の検索が拒否される
NMapLocationManagerErrorTypeUnknown 不明なエラーにより現在の位置の検索に失敗
NMapLocationManagerErrorTypeHeading 羅針盤モニタリングに失敗
  • Properties
説明
@property (nonatomic, readonly) CLLocation *location 現在の位置に関する情報を表す。
  • Methods
説明
(NMapLocationManager *) getSharedInstance Singletonオブジェクトを返す。
(void) setDelegate:(id)delegate 現在の位置および羅針盤の状態が変更された場合に呼び出されるオブジェクトを設定する。
(void) startContinuousLocationInfo 現在の位置の検索を開始する。
(void) stopUpdateLocationInfo 現在の位置の検索を終了する。
(void) suspendUpdateLocationInfo 現在の位置の検索を一時中止する。
(void) resumeUpdateLocationInfo 現在の位置の検索を再開する。
(BOOL) isUpdateLocationStarted 現在の位置の検索が開始されたかどうかを返す。
(BOOL) isUpdateLocationSuspended 現在の位置の検索が一時停止されたかどうかを返す。
(BOOL) isTrackingEnabled 現在の位置を検索中であるかどうかを返す。
(BOOL) headingAvailable 端末の羅針盤機能をサポートできるかどうかを返す。
(BOOL) isHeadingUpdateStarted 羅針盤モニタリング中であるかどうかを返す。
(void) startUpdatingHeading 羅針盤モニタリングを開始する。
(void) stopUpdatingHeading 羅針盤モニタリングを終了する。
  • Protocol – NMapLocationManagerDelegate
    端末の現在の位置または羅針盤の状態が変更された場合に呼び出されるプロトロルを定義します。
説明
(void) locationManager:(NMapLocationManager )locationManager didUpdateToLocation:(CLLocation )location 現在の位置が変更された場合に呼び出される。locationオブジェクトに変更された位置の情報が転送される。
(void) locationManager:(NMapLocationManager *)locationManager didFailWithError:(NMapLocationManagerErrorType)errorType 現在の位置の検索に失敗した場合に呼び出される。失敗原因はerrorTypeに転送される。
(void) locationManager:(NMapLocationManager )locationManager didUpdateHeading:(CLHeading )heading 羅針盤の角度が変更された場合に呼び出される。headingオブジェクトに角度の情報が転送される。

Map Mainクラス

NMapView

  • Description
    地図データを画面に表示するビュークラスであり、UIViewクラスを継承します。本クラスで管理する地図データは地図のイメージ以外に地図の上に表示されるオーバーレイオブジェクトも含まれます。

  • Initializer

説明
(id) initWithFrame:(CGRect)frame 緯度・軽度の座標と該当の住所で初期化
  • Constants
    地図の状態に関する常数の値は次の通りです。
説明
NMapViewStatusBeginAnimation アニメーション開始
NMapViewStatusEndAnimation アニメーション終了

地図モードに関する常数の値は次の通りです。

説明
NMapViewModeVector 一般地図を見るモード
NMapViewModeHybrid 衛星地図を見るモード
NMapViewModeTraffic リアルタイム交通地図を見るモード
NMapViewModeBicycle 自転車地図を見るモード
NMapViewModePanorama パノラマ地図を見るモード
  • Properties
説明
@property (nonatomic, getter=isAutoRotateEnabled) BOOL autoRotateEnabled 地図の自動回転機能を有効にするかどうかを設定したり、現在の状態を返す。
@property (nonatomic) CGFloat rotateAngle 地図を転送された角度で回転したり、回転された角度を返す。地図の自動回転機能が有効になっている状態でのみ使える。
@property (nonatomic, assign) id delegate 地図の状態の変更、タッチイベントの発生およびオーバーレイアイテム処理の際に呼び出されるコールバックインターフェースを設定する。
@property (nonatomic, assign) id reverseGeocoderDelegate 座標を住所に変換するAPI呼び出しの際、サーバのレスポンスに対するコールバックインターフェースを設定する。
@property (nonatomic, readonly) NMapOverlayManager *mapOverlayManager オーバーレイデータを管理するためのオブジェクトを返す。
@property (nonatomic, assign) BOOL isAnimating マップビューの状態がアニメーション中であるかどうかを返す。
@property (nonatomic, assign) BOOL isPanning マップビューの状態がパンイング中であるかどうかを返す。
  • Methods
説明
(BOOL) isValidLongitude:
(double)lon latitude:
(double)lat
転送された座標を地図ライブラリで処理できるかどうかを返す。内部的に国内の領土を覆うポリゴンの領域に含まれるのかどうかをチェックする。
(double)distanceFromLocation:
(NGeoPoint)fromLocation toLocation:
(NGeoPoint)toLocation
2つの緯度・軽度の座標の間の距離(メートル)を返す。
(void)setClientId:(NSString *)clientId; アプリケーション登録の際に発行されたクライアントアイディの値を設定するためのメソッドである。
(void) setApiKey:(NSString *)apiKey // deprecated 従来のAPIキー方式の呼び出しのためのメソッドで、オープン地図ライブラリの使用のために登録されたキーを設定する。正常に登録されたキーを設定しなかった場合はonMapView:initHandler:コールバックにエラーが転送される。(deprecatedメソッドで、2016年末まで利用可能)
(void) setEnlarged:(BOOL)isEnlarged mapHD:(BOOL)isMapHD 地図タイルを拡大するかどうか、高解像度タイルを使うかどうかを選択する。アイフォン4以上のレティナディスプレイをターゲットにする場合は、2つの値ともYESに設定することをお勧めする。
(void) setLogoImageOffsetX:(CGFloat)offsetX offsetY:(CGFloat)offsetY NAVERロゴイメージの位置を調整する。基準は画面の左下であり、画面の左下の端より右の方はoffsetXの値が正数で、上の方はoffsetYの値が正数である。
(void) reload 地図タイルを再びローディングする。
(void) invalidate 地図画面を再び描く。
(void) viewWillAppear 地図が含まれたUIViewControllerのviewWillAppearで呼び出す。
(void) viewDidAppear 地図が含まれたUIViewControllerのviewDidAppearで呼び出す。
(void) viewWillDisappear 地図が含まれたUIViewControllerのviewWillDisappearで呼び出す。
(void) viewDidDisappear 地図が含まれたUIViewControllerのviewDidDisappearで呼び出す。
(void) didReceiveMemoryWarning 地図が含まれたUIViewControllerのdidReceiveMemoryWarningで呼び出す。
  • Protocol – NMapViewDelegate
    地図の状態の変更およびタッチイベント発生の場合に呼び出されるコールバックプロトコルを定義します。
説明
(void) onMapView:(NMapView )mapView initHandler:(NMapError )error 地図が初期化された後で呼び出される。正常に初期化されると、errorオブジェクトにnilが転送され、初期化に失敗した場合はerrorオブジェクトにエラーの原因が転送される。
(void) onMapView:(NMapView *)mapView willChangeMapLevel:(int)toLevel 地図のレベルの変更が始まると呼び出され、変更された地図のレベルがパラメータとして転送される。
(void) onMapView:(NMapView *)mapView didChangeMapLevel:(int)level 地図のレベルの変更が完了した後で呼び出され、変更された地図のレベルがパラメータとして転送される。
(void) onMapView:(NMapView *)mapView didChangeViewStatus:(NMapViewStatus)status 地図のアニメーションの開始および終了の際に呼び出される。
(void) onMapView:(NMapView *)mapView didChangeMapCenter:(NGeoPoint)location 地図の中心が変更された場合に呼び出され、変更された中心座標はパラメータとして転送される。
(void) onMapView:(NMapView )mapView touchesBegan:(NSSet )touches withEvent:(UIEvent *)event 地図でタッチ開始イベントが発生した場合に呼び出される。
(void) onMapView:(NMapView )mapView touchesMoved:(NSSet )touches withEvent:(UIEvent *)event 地図でタッチ移動イベントが発生した場合に呼び出される。
(void) onMapView:(NMapView )mapView touchesEnded:(NSSet )touches withEvent:(UIEvent *)event 地図でタッチ終了イベントが発生した場合に呼び出される。
(void) onMapViewTouchesCanceled:(NMapView *)mapView 地図でタッチキャンセルイベントが発生した場合に呼び出される。
(BOOL) onMapView:(NMapView *)mapView dispatchTouchesBeganPoint:(CGPoint)touchPoint withFrame:(CGRect)frame オーバーレイアイテムのモードがNMapPOIflagModeDispatchである場合、タッチイベントによって該当のアイテムが選択されると呼び出される。frameには該当のアイテムの領域が転送される。該当のアイテムに対するタッチイベントを直接処理するためにはYESを返す。
(BOOL) onMapView:(NMapView *)mapView dispatchTouchesBeganPoint:(CGPoint)touchPoint オーバーレイアイテムのモードがNMapPOIflagModeDispatchであるアイテムが選択された場合、地図で発生したタッチ開始イベントを転送する。delegateでタッチイベントを直接処理するためにはYESを返す。
(void) onMapView:(NMapView *)mapView dispatchTouchesMovedPoint:(CGPoint)touchPoint 地図でタッチ移動イベントが発生した場合に呼び出される。
(void) onMapView:(NMapView *)mapView dispatchTouchesEndedPoint:(CGPoint)touchPoint 地図でタッチ終了イベントが発生した場合に呼び出される。
(void) onMapViewDispatchTouchesCancelled:(NMapView *)mapView 地図でタッチキャンセルイベントが発生した場合に呼び出される。
(void) onMapView:(NMapView )mapView forwordTouchesBegan:(NSSet )touches withEvent:(UIEvent *)event 地図でタッチ開始イベントが発生した場合に呼び出される。(マップビュー内部的にタッチイベントが処理された場合)
(void) onMapView:(NMapView )mapView forwordTouchesEnded:(NSSet )touches withEvent:(UIEvent *)event 地図でタッチキャンセルイベントが発生した場合に呼び出される。(マップビュー内部的にタッチイベントが処理された場合)
(void) onMapView:(NMapView )mapView handleLongPressGesture:(UIGestureRecognizer)recogniser 地図でロングタブイベントが発生した場合に呼び出される。
(void) onMapView:(NMapView )mapView handleSingleTapGesture:(UIGestureRecognizer)recogniser 地図でシングルタブイベントが発生した場合に呼び出される。
(void) onMapView:(NMapView )mapView didHandleSingleTapGesture:(UIGestureRecognizer)recogniser 地図でシングルタブイベントが発生した場合に呼び出される。(マップビュー内部的にタッチイベントが処理された場合)

NMapController

  • Description
    NMapViewクラスのカテゴリクラスであり、地図ビューアをコントロールする役割を果たします。地図の中心位置および地図のレベルの指定、拡大、縮小、パンニング機能など、様々な機能を実行します。

  • Properties

説明
@property (nonatomic) NMapViewMode mapViewMode 地図を見るモードを設定する/返す。
NMapViewModeVector : 一般地図
NMapViewModeHybrid : 衛星地図
@property (nonatomic) BOOL mapViewTrafficMode リアルタイム交通地図を見るモードを設定する/返す。
@property (nonatomic) BOOL mapViewBicycleMode 自転車地図を見るモードを設定する/返す。
@property (nonatomic) BOOL mapViewPanoramaMode パノラマ地図を見るモードを設定する/返す。
@property (nonatomic, readonly) NGeoPoint mapCenter 地図の中心座標を緯度・軽度形式で返す。地図の中心はboundsVisibleによって設定された領域の中心に位置する。
@property (nonatomic) CGRect boundsVisible 画面に見える地図の領域を設定する/返す。地図全体の領域と画面に見える地図の領域が異なる場合に設定する。設定しないと、地図の領域と同一である。
  • Methods
説明
(void) setMapCenter:(NGeoPoint)location atLevel:(int)level 地図の中心座標および縮尺レベルを設定する。縮尺レベルを指定しない場合、中心座標のみ変更される。有効な縮尺レベルの範囲は1~14である。地図の中心はboundsVisibleによって設定された領域の中心に位置する。
(NGeoPoint) mapBoundsCenter 地図の中心座標を緯度・軽度の形式で返す。
(void) setZoomLevelMin:(int)minLevel max:(int)maxLevel 最大、最小の地図縮尺レベルを設定する。有効な縮尺レベルの範囲は1~14である。
(int) minZoomLevel 最小の地図縮尺レベルを返す。
(int) maxZoomLevel 最大の地図縮尺レベルを返す。
(void) setZoomEnabled:(BOOL)enabled; 地図を拡大/縮小できるかどうかを設定する。
(void) setPanEnabled:(BOOL)enabled 地図のパンニングが可能かどうかを設定する。
(int) zoomLevel 現在の地図縮尺レベルを返す。
(BOOL) setZoomLevel:(int)level 地図縮尺レベルを変更し、成功かどうかを返す。
(void) zoomIn 地図縮尺レベルを一段階拡大する。
(void) zoomOut 地図縮尺レベルを一段階縮小する。
(void) moveByDx:(float)dX dY:(float)dY 地図の中心を転送された変位の値だけ移動させる。
(void) zoomToBounds:(NGeoRect)bounds atLevel:(int)level (int)level転送された領域が画面に表示されるように地図の中心点および縮尺レベルを自動で変更する。縮尺レベルを指定すると、指定された縮尺レベルで地図の中心座標のみ変更される。boundは緯度・軽度の座標の値で構成された領域である。

NMapProjection

  • Description NMapViewクラスのカテゴリクラスであり、画面の座標を地図の座標に変換する機能を実行します。オーバーレイレイヤーを直接具現する場合に使わなければなりません。

  • Methods

説明
(NGeoPoint) fromPoint:(CGPoint)pt マップビューの画面の座標に該当する地図の座標を返す。
(int) metersToPoints:(float)meters 地図の中心からの実際の距離(meters)を画面上の距離(points)に変換する。
(int) metersToPoints:(float)meters atLocation:(NGeoPoint)location 転送された座標を中心に実際の距離(meters)を画面上の距離(points)に変換する。
(CGPoint) toPointFromLocation:(NGeoPoint)location 転送された緯度・軽度の座標に該当するマップビューの画面の座標を返す。
(NGPoint) toMapPointFromLocation: (NGeoPoint)location 転送された緯度・軽度の座標に該当するマップビューの地図の座標を返す。本座標はオーバーレイレイヤーで地図の上に経路などを直接ドローイングする際に使用する。
(BOOL) isVisibleLocation: (NGeoPoint)location 転送された地図の座標が現在画面に表示されているかどうかを返す。
(NGeoRect) screenBounds マップビューの画面の領域に該当する地図の座標の領域を返す。
(NGeoRect) screenBoundsBy: (double)areaRatio マップビューの画面の領域に該当する地図の座標の領域を返す。転送されたareaRatioは画面の領域にareaRatioを掛けた領域にてついて、地図の座標の領域を返す。

NMapViewRotation

  • Description
    NMapViewクラスのカテゴリクラスであり、地図回転機能を実行します。

  • Properties

説明
@property (nonatomic, getter=isAutoRotateEnabled) BOOL autoRotateEnabled 地図の自動回転機能を有効にするかどうかを設定したり、現在の状態を返す。
@property (nonatomic) CGFloat rotateAngle 地図を転送された角度で回転したり、回転された角度を返す。地図の自動回転機能が有効になっている状態でのみ使える。

NMapReverseGeocoder

  • Description
    NMapViewクラスのカテゴリクラスであり、座標を住所に変換するメソッドを実行します。

  • Methods

説明
(void) findPlacemarkAtLocation: (NGeoPoint)location 座標を住所に変換するサーバAPIを呼び出す。サーバAPIは非同期で実行すれば、結果はNMapReverseGeocoderDelegateに転送される。
  • Protocol – NMapReverseGeocoderDelegate
    座標を住所に変換するAPIについてレスポンスプロトコルを定義します。
説明
(void) location:(NGeoPoint)location didFindPlacemark:(NMapPlacemark *)placemark 座標を住所に変換するAPI呼び出しの際、サーバのレスポンスに対するコールバックインターフェースである。placemarkオブジェクトにはリクエストした座標に対する住所データが含まれる。
(void) location:(NGeoPoint)location didFailWithError:(NMapError *)error 座標を住所に変換するAPIが失敗した場合に呼び出される。errorオブジェクトにエラーに関する情報が転送される。

Overlayクラス

NMapOverlay

  • Description
    図の上にオーバーレイオブジェクトを表示するためのベースのクラスです。このクラスを継承したクラスでは次のメソッドを直接具現しなければなりません。

  • Properties

説明
@property (nonatomic, assign) BOOL hidden オーバーレイオブジェクトを画面に表示するかどうかを設定する/返す。
@property (nonatomic, assign) NMapOverlayZPosition zPosition オーバーレイオブジェクトの画面でzPositionを設定する/返す。値が大きいほど上位に表示される。
  • Methods
説明
(void) drawToLayer:(CALayer *)theLayer frame:(CGRect)rect オーバーレイオブジェクトを画面に表示する。経路のように地図の上に直接表示されるオーバーレイオブジェクトの場合、具現する。
(void) clearOverlay オーバーレイオブジェクトが画面から削除された場合に呼び出される。経路のように地図の上に直接表示されるオーバーレイオブジェクトの場合はマップビューのinvalidateメソッドを呼び出さなければならない。
(void) stopTimers オーバーレイオブジェクトで使用するタイマーを終了する。マップビューが無効になった場合に呼び出される。
(void) layoutSublayers オーバーレイオブジェクトで表示するレイヤーの位置を調整する。マップビューのレイアウトが変更された場合に呼び出される。
(void) moveByDx:(float)dX dY:(float)dY オーバーレイオブジェクトで表示するレイヤーの位置を転送された変位だけ移動させる。地図パンニングの際に呼び出される。
(void) initZoomByFactor: (float)zoomFactor near:(CGPoint)pivot 拡大/縮小アニメーションが始まると呼び出される。アニメーションが始まる前に必要な作業を実行する。アニメーションの途中画面に表示されるレイヤーの位置の変更が必要な場合に具現する。
(void) zoomByFactor: (float)zoomFactor near:(CGPoint)pivot 拡大/縮小アニメーションが進行中の場合に呼び出される。pivot位置を中心にzoomFactorの倍率で拡大または縮小される。アニメーションの途中画面に表示されるレイヤーの位置の変更が必要な場合に具現する。
(BOOL) hasPathData オーバーレイオブジェクトで地図の上に直接経路を表示するかどうかを返す。
(int) layerZPosition:(int)zPosition オーバーレイオブジェクトで表示されるレイヤーのzPositionを因子として受け取って、マップビュー上のオーバーレイレイヤーのzPositionに返す。

NMapPOIitem

  • Description
    地図の上に表示されるオーバーレイアイテムクラスであり、NMapPOIdataOverlayクラスで表示する基本オブジェクトとして使われます。地図に表示されるマーカーのイメージはNMapPOIdataOverlayDelegateプロトコルを利用して転送します。

  • Initializer
    NMapPOIdataOverlayクラスのメソッドを使ってアイテムを追加すると、内部的に作成されます。

  • Constants
    現在、位置オーバーレイオブジェクトを表示するために予め定義されたマーカーの種類は次の通りです。地図ライブラリで現在の位置表示機能を使う場合は、アプリケーションで該当のマーカーのイメージを提供しなければなりません。

説明
NMapPOIflagTypeLocation 現在の位置を表示するマーカー
NMapPOIflagTypeLocationOff 現在の位置を表示するマーカー
NMapPOIflagTypeCompass 現在の位置のマーカーの上に羅針盤の方向を表示するマーカー

オーバーレイアイテムの属性は次の通りです。

説明
NMapPOIflagModeTouch タッチおよびドラッグイベントで位置変更が可能なアイテム
NMapPOIflagModeDrag ドラッグイベントで位置変更が可能なアイテム
NMapPOIflagModeFixed 地図の上に位置が固定されたアイテム
NMapPOIflagModeDispatch アイテム選択の際にタッチイベントを直接処理するためのアイテム
  • Properties
説明
@property (nonatomic, readonly) CGRect frame マーカーが画面に表示される領域を返す。
@property (nonatomic, assign, getter=isHidden) BOOL hidden マーカーを表示するかどうかを設定する/返す。
@property (nonatomic, retain) NSString *title マーカーのタイトルを設定する/返す。タイトルを設定しないと、マーカーを選択した際に吹き出しメッセージが表示されない。
@property (nonatomic, assign) NGeoPoint location マーカーの座標を設定する/返す。
@property (nonatomic, assign) int poiFlagType マーカーの種類を設定する/返す。
@property (nonatomic, retain) id object ユーザーオブジェクトを設定する/返す。
@property (nonatomic, assign) BOOL hasRightCalloutAccessory マーカーを選択した際に表示される吹き出しメッセージの右側のアイコンを表示するかどうかを設定する/返す。
  • Methods
説明
(void) setPOIflagMode: (NMapPOIflagMode)mode マーカーの属性を変更する。

NMapPOIdataOverlay

  • Description
    複数のオーバーレイアイテムを含められるオーバーレイクラスであり、NMapOverlayクラスを継承します。グループオーバーレイアイテムを効果的に処理できる機能を提供します。

  • Initializer
    NMapOverlayManagerクラスのcreatePOIdataOverlayメソッドの呼び出しの際に内部的に作成されます。

  • Properties

説明
@property (nonatomic, readonly) int idxFocusedPOIitem 選択されたアイテムのインデックスを返す。
@property (nonatomic, readonly) BOOL focusedBySelectItem タッチイベントによって選択されたアイテムの場合はfalseを返し、それ以外はtrueを返す。
  • Methods
説明
(void) initPOIdata:(int)countOfPOIdata POIアイテムの追加を始める。
(NMapPOIitem ) addPOIitemAtLocation:(NGeoPoint)location title:(NSString )title type:(NMapPOIflagType)poiFlagType iconIndex:(int)iconIndex withObject:(id)object POIアイテムを追加する。アイテムが表示される座標とマーカーの種類は必須因子であり、titleをnilで転送すると、マーカー選択の際に吹き出しメッセージが表示されない。objectはマーカーおよび吹き出しメッセージを選択した際に呼び出されるコールバックインターフェースで使用するために転送する。返されたオブジェクトで追加的な情報を設定できる。
(void) endPOIdata POIアイテムの追加を終了する。
(int) count; POIデータのアイテムの数を返す。
(NSArray *) poiData POIデータを返す。返された配列はNMapPOIitemオブジェクトで構成される。
(void) selectPOIitemAtIndex:(int)index moveToCenter:(BOOL)moveToCenter POIデータでindexに該当するアイテムを選択する。moveToCenterとして選択されたアイテムが画面の中央に表示されるように地図を移動するかどうかを設定する。
(void) selectPOIitemWithType: (NMapPOIflagType)poiFlagType moveToCenter:(BOOL)moveToCenter POIデータでマーカーの種類と一致するアイテムを選択する。moveToCenterとして選択されたアイテムが画面の中央に表示されるように地図を移動するかどうかを設定する。
(void) selectPOIitemWithObject:(id)object moveToCenter:(BOOL)moveToCenter POIデータでobjectを持っているアイテムを選択する。moveToCenterとして選択されたアイテムが画面の中央に表示されるように地図を移動するかどうかを設定する。
(void) showAllPOIdataAtLevel:(int)zoomLevel POIデータがすべて画面に表示されるように地図縮尺レベルおよび地図の中心を変更する。zoomLevelが0でない場合、指定した地図縮尺レベルで地図の中心のみを変更する。
(NMapPOIitem ) findPOIitemWithObject: (id)object foundIndex:(int )foundIndex objectを持っているPOIアイテムを返す。
(CGRect) frameOfSelectedPOIitem 選択されたアイテムが画面に表示される領域を返す。
(void) deselctFocusedPOIitem アイディの選択を解除する。
(void) changeTitleOfPOIitemWithType: (NMapPOIflagType)poiFlagType title:(NSString *)title *)titleマーカーの種類がpoiFlagTypeであるアイテムのタイトルを変更する。
(void) updateImageAtIndex:(int)index アイテムのイメージをアップデートするために呼び出す。
(BOOL) containsLocation:(NGeoPoint)location 全体のPOIデータを含む領域に転送された座標が含まれているかどうかを返す。
(int) indexForAdjacentLocation 転送された座標を中心に半径以内に隣接しているアイテム
(NGeoPoint)lonLat withinRadius:(float)radius インデックスを返す。
  • Protocol – NMapPOIdataOverlayDelegate
    オーバーレイアイテム処理の際に呼び出されるコールバックプロトコルを定義します。
説明
(UIImage ) onMapOverlay:(NMapPOIdataOverlay )poiDataOverlay imageForOverlayItem: (NMapPOIitem *)poiItem selected:(BOOL)selected マーカーに該当するイメージを返す。マーカーを選択した際に表示されるイメージはselectedの値がYESの場合に返す。
(CGPoint) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay anchorPointWithType:(NMapPOIflagType)poiFlagType マーカーの基準位置を設定する。範囲は0.0 1.0であり、マーカーの左下が原点である。
(UIView) onMapOverlay:(NMapPOIdataOverlay )poiDataOverlay viewForCalloutOverlayItem:(NMapPOIitem )poiItem calloutPosition:(CGPoint )calloutPosition マーカーを選択した際に表示される吹き出しメッセージの内容をビューで返す。
poiItem : 選択されたオーバーレイアイテム
calloutPosition : 吹き出しメッセージの表示位置
該当のdelegateを具現しない、あるいはnilを返すとイメージを返すonMapOverlay:imageForCalloutOverlayItem:...が呼び出される。
(UIImage) onMapOverlay: (NMapPOIdataOverlay )poiDataOverlay imageForCalloutOverlayItem: (NMapPOIitem )poiItem constraintSize: (CGSize)constraintSize selected:(BOOL)selected imageForCalloutRightAccessory: (UIImage )imageForCalloutRightAccessory calloutPosition: (CGPoint )calloutPosition calloutHitRect:(CGRect )calloutHitRect マーカーを選択した際に表示される吹き出しメッセージの内容をイメージで返す。
constraintSize : 吹き出しメッセージのサイズの制限
selected : 吹き出しメッセージの領域を選択するかどうか
imageForCalloutRightAccessory : 吹き出しメッセージの右側のアイコンのイメージ
calloutPosition : 吹き出しメッセージの表示位置
* calloutHitRect : 吹き出しメッセージタッチの領域
(CGPoint) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay calloutOffsetWithType: (NMapPOIflagType)poiFlagType マーカーを選択した際に表示される吹き出しメッセージの相対位置を設定する。
(BOOL) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay didChangeSelectedPOIitemAtIndex: (int)index withObject:(id)object 選択されたアイテムが変更されると呼び出される。
(BOOL) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay didDeselectPOIitemAtIndex: (int)index withObject:(id)object 以前選択されたアイテムの選択が解除されると呼び出される。
(BOOL) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay didSelectCalloutOfPOIitemAtIndex: (int)index withObject:(id)object マーカーの吹き出しメッセージが選択されると呼び出される。
(BOOL) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay hasCalloutRightAccessoryAtIndex: (int)index withObject:(id)object マーカーの吹き出しメッセージが右側のアイコンのイメージを表示するかどうかを返す。
(UIImage ) onMapOverlay:(NMapPOIdataOverlay)poiDataOverlay imageForCalloutRightAccessoryAtIndex:(int)index selected:(BOOL)selected withObject:(id)object 吹き出しメッセージに表示する右側のアイコンのイメージを返す。
(void) onMapOverlay:(NMapPOIdataOverlay *)poiDataOverlay didChangePOIitemLocationTo:(NGeoPoint)location withType:(NMapPOIflagType)poiFlagType フロートアイテムの位置が変更された場合に呼び出される。

NMapPathData

  • Description
    地図の上に表示される経路線を管理するクラスです。

  • Constants
    経路線のスタイル関連の常数フィールドに関する説明は次の通りです。

説明
NMapPathLineTypeSolid 実線
NMapPathLineTypeDash 点線
  • Initializer
説明
(id)initWithCapacity:(int)capacity 経路データの数を因子として転送する。
  • Methods
説明
(void) initPathData:(int)count 経路データの追加を始める。
(void) addPathPointLongitude:(double)longitude latitude:(double)latitude lineType:(NMapPathLineType)lineType 経路データの補間点座標を追加する。lineTypeはNMapPathLineStyleで定義された値で転送する。lineTypeを0で転送すると、以前の補間点の値をそのまま使う。
(void) endPathData 経路データの追加を終了する。

NMapPathDataOverlay

  • Description
    経路データを表示するためのオーバーレイクラスであり、NMapOverlayクラスを継承します。単純な経路データ以外にポリゴンおよびサークルデータも表示できます。

  • Initializer
    NMapOverlayManagerクラスのcreatePathDataOverlayメソッドを呼び出す際に内部的に作成されます。

  • Methods

説明
(void) setLineColorWithRed:(float)red green:(float)green blue:(float)blue alpha:(float)alpha デフォルト経路線の色の値を設定する。
(void) setLineWidth:(float)width デフォルト経路線の太さの値を設定する。
(void) showAllPathDataAtLevel:(int)zoomLevel 経路データがすべて画面に表示されるように地図縮尺レベルおよび地図の中心を変更する。
zoomLevelが0でない場合は指定した地図縮尺レベルで地図の中心のみを変更する。
(BOOL) containsLocation:(NGeoPoint)location 全体の経路を含む領域が転送された座標を含めているかどうかを返す。

NMapOverlayManager

  • Description
    地図の上に表示されるすべてのオーバーレイオブジェクトを管理します。

  • Initializer
    NMapViewクラスで内部的に作成されます。

  • Properties

説明
@property (nonatomic, readonly) NMapMyLocationOverlay *myLocationOverlay 現在の位置のオーバーレイオブジェクトを返す。
@property (nonatomic, assign) CALayer *overlayLayer 地図の上に表示されるオーバーレイアイテムの親オブジェクトを表す。NMapOverlay <#IOC_Overlay>クラスを継承したクラスでオーバーレイアイテムを直接処理する場合に使用する。
  • Methods
説明
(void) addOverlay:(NMapOverlay *)overlay オーバーレイオブジェクトを追加する。
(void) clearOverlays 該当の位置のオーバーレイオブジェクトを除くすべてのオーバーレイオブジェクトを削除する。
(void) setMyLocation:(NGeoPoint)location locationAccuracy:(float)locationAccuracy 転送された座標および半径で現在の位置のオーバーレイオブジェクトを作成して追加する。
(NMapPathDataOverlay ) createPathDataOverlay:(NMapPathData )pathData 経路データを因子として転送し、NMapPathDataOverlayオブジェクトを作成して追加する。返されるオブジェクトは呼び出すところでreleaseしなければならない。
(NMapPOIdataOverlay *) createPOIdataOverlay NMapPOIdataOverlay オブジェクトを作成して追加する。返されるオブジェクトは呼び出すところでreleaseしなければならない。
(NMapPOIdataOverlay *) findFocusedPOIdataOverlay 選択されたNMapPOIdataOverlayオブジェクトを返す。
(BOOL) hasOverlay:(NMapOverlay *)overlay 転送されたoverlayオブジェクトが存在するかどうかを返す。
(void) releaseOverlay:(NMapOverlay *)overlay 転送されたoverlayオブジェクトを削除し、releaseする。
(void) clearMyLocationOverlay 現在の位置オーバーレイオブジェクトを削除する。
(BOOL) hasMyLocationOverlay 現在の位置overlayオブジェクトが存在するかどうかを返す。
(BOOL) canRefreshOverlayData:(BOOL)checkCallout オーバーレイオブジェクトがアップデート可能かどうかを返す。地図アニメーション中はfalseを返す。checkCalloutがtrueである場合、吹き出しメッセージが表示された状態でもfalseを返す。

に対する検索結果は~件です。 ""

    に対する検索結果がありません。 ""

    処理中...