2017-12-28 19 views
1

セシウムにWaze LiveMap(https://www.waze.com/livemap)を使用すると表示される機能を模倣しようとしています。ポイントをクリックすると、アイコン付きのマーカーに変換されます。セシウム - クリックすると、マップポイントがアイコンの標準マーカーに変更されます

私はさまざまなレベルの成功でいくつかの異なることを試みましたが、私は賢明です。私はどのように進むことができるのか、誰かが良い提案をしていますか?

答えて

0

これには、高レベルと低レベルの2つの方法があります。高レベルのものが最も簡単なので、そこから始めます。セシウムビューアは、自身の選択が変更されたときにselectedEntityChangedというイベントを発生させ、それを配線して掲示板の表示フラグをオンまたはオフに切り替えることができます。

Here's a demo。このデモでは、元のmap pins demoを取り出し、いくつかの行を追加しました。開始時にすべての看板のフラグをshowにしました。今すぐ隠された看板のためにポイントを追加しました。選択されたときのように、看板番組フラグを切り替えるコード:

var lastSelectedPin; 
viewer.selectedEntityChanged.addEventListener(function(newEntity) { 
    if (lastSelectedPin && lastSelectedPin.billboard) { 
     lastSelectedPin.billboard.show = false; 
    } 
    lastSelectedPin = newEntity; 
    if (lastSelectedPin && lastSelectedPin.billboard) { 
     lastSelectedPin.billboard.show = true; 
    } 
}); 

これは、セシウムビューア自身の選択システムを使用していますが、選択したときに表示されると非選択時に消滅する看板番組フラグを切り替えます。

また、細かい制御のためにセシウムの下位レベルを調べることもできますが、学習曲線は長くなります。 Picking Demoは、scene.pick,scene.drillPick、およびcamera.pickEllipsoidを含むいくつかのタイプのピッキング操作を示しています。これは、特定の画面の場所にどのようなコンテンツが存在するかを検出するさまざまな方法を提供します。多くの場合、これらの関数は、マウスの動きやクリック、またはタッチ/ポインターのイベントに応答して呼び出され、ユーザーが何を操作しているかを確認します。

関連する問題