タイル・ステータスの表示
デバッグ・ビューを作成して、次の方法でタイル・レイヤーのタイルのステータスを表示できます。
IlvTiledLayer::setDebugView(IlvView* view,
IlvColor* borderColor = 0,
IlvColor* lockedTilesColor = 0,
IlvColor* cachedTilesColor = 0)
名前のとおり、このデバッグ・ビューは、新しい地図形式にロード・オン・デマンドを実装する際のデバッグ処理に特に便利です。
タイルには、4 つの異なるステータスを与えることができます。
空:オブジェクトがメモリーにロードされていない。
ロック済み:オブジェクトがメモリーにロードされ表示されている。
キャッシュ済み:オブジェクトがメモリーにロードされているが、表示されていない。
削除済み:オブジェクトがキャッシュから削除されている。
デバッグ・ビューが
IlvView タイプで、タイル・レイヤーに付加する必要があります。デバッグ・ビューでは、タイル・ロック・カウンターの増減は行いません。これは、タイル・コントローラの役割です。デバッグ・ビューは、図 4.2 のように、ステータスに従ってタイルを色表示するだけです。
1 より大きいロック・カウンターを持つタイルは、青色で表示されます。それらのタイルは、1 つ以上のビューで表示されます。カウンターが 0 のタイルは、黄色で表示されます。それらのタイルはキャッシュされています。白色のタイルは、ロードされていません。
前の例では、
IlvManagerMagViewInteractor はデバッグ・ビューに関連付けられていました。青色のタイルの中に小さい黄色の正方形を表示するのは、このインタラクターです。正方形はメイン・ビューで表示されている地域を表します。
以下は、レイヤーのデバッグ・ビューを作成する例です。
void SimpleLod::debugView() { _debug = new IlvView(_display, “DebugView”, “DebugView”, IlvRect(450, 0, 100, 100), IlvFalse, IlvFalse); _manager->addView(_debug); _tiledLayer->setDebugView(_debug); } |
void SimpleLod::magView() { _magvint = new IlvManagerMagViewInteractor(_manager, _debug, _view); _magvint->setAutoZooming(IlvTrue); _magvint->setAutoTranslating(IlvTrue); _magvint->setResizingAllowed(IlvTrue); _manager->setInteractor(_magvint, _debug); } |
Version 6.0
Copyright © 2015, Rogue Wave Software, Inc. All Rights Reserved.