C
マップタイルフェッチャーの統合(テクノロジープレビュー)
Qt Quick Ultralite 向けのマップタイルフェッチャー連携の実装
Map アイテムを使用するアプリケーションは Qt Quick Ultralite LocationQul::MapTileFetcher アイテムを使用するアプリケーションは、オフラインの外部ストレージ(例:SD カードやeMMC )またはオンラインサービスプロバイダーからマップタイル画像を取得するために、 クラスを実装する必要があります。この実装は、Qul::Application::addMapTileFetcher を使用してアプリケーションに登録する必要があります。
オフラインの外部ストレージから地図タイルを取得するための参照実装については、地図のサンプルを参照してください。
マップタイル画像を提供するには、Qul::MapTileFetcher::getTileImage 関数を実装してください:
class MyTileFetcher : public Qul::MapTileFetcher { public: bool getTileImage(const Qul::Private::TileSpec &spec, Qul::Private::TileImage &tileImage) override { // compose a tile address using zoom, x and y information provided from spec parameter // fetch a tile image // copy the tile image into Qul::SharedImage object. } }
実装したマップタイルフェッチ機能をQt Quick Ultralite に認識させるには、アプリケーションに登録する必要があります。
static MyTileFetcher tilefetcher; Qul::Application::addMapTileFetcher(&tilefetcher);
Qt Quick Ultraliteは、最初にtrueを返すものが現れるまで、登録されたすべてのマップタイルフェッチ機能を順に呼び出し、getTileImage 関数を呼び出します。
特定の Qt ライセンスの下で利用可能です。
詳細はこちらをご覧ください。