2015-01-05 1 views
1

Мне нужно сделать многоугольник на курсор мыши и восстановить его цвет и внешний вид, как только мышь выйдет из полигона.Изменение цвета многоугольника цезия на мыши наведите указатель мыши

Я пробовал это с обработчиком событий ScreenSpaceEventType.MOUSE_MOVE, но в этом случае я не могу восстановить внешний вид, когда мышь выведена из полигона.

Я попытался https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Apps/Sandcastle/gallery/Polygons.html (http://cesiumjs.org/Cesium/Apps/Sandcastle/gallery/polygons.html)

Этот файл в Sancastle. Он имеет встроенные комментарии, такие как // For highlighting on mouseover in Sandcastle.

Но он не работает должным образом.

Есть ли какой-либо путь в цезие для достижения этого? или я что-то упускаю?

+0

"// Для подсветки на мыши в Sandcastle." для выделения многоугольного кода в левой части в sandcastle http://cesiumjs.org/Cesium/Apps/Sandcastle/index.html?src=polygons.html&label=undefined :( – meen

+0

«Я пробовал это ...» Вы можете показать нам ваш код? – dgiugg

+0

@dgiugg, шаги, которые я выполняю для этого: 1. Получить свойства и координаты полигона, выделенного полигоном. 2. Удалить выбранный многоугольник. 3. Перерисовать многоугольник с другим цветом со свойствами и координатами, которые я получаю на шаге 1 – meen

ответ

1

Посмотрите на "Picking" example в Sandcastle и нажмите кнопку, которая гласит: «Выбор уровня детализации».

Существуют различные способы выполнения описанных выше действий, но приведенная выше демонстрация использует цезий CallbackProperty и обеспечивает обратный вызов, который будет возвращать нормальный цвет многоугольника или цвет подсветки в зависимости от статуса «выбрано». Обратите внимание, что с помощью этого метода можно одновременно выбрать несколько перекрывающихся многоугольников.

Обработчик перемещения мыши затем просто контролирует членство в списке pickedEntities, а полигоны выбирают подходящие цвета для себя на основе их членства в этом списке.

+0

Спасибо! Как вы сказали: «Существуют разные способы достижения того, что вы описываете». Вы можете обобщить некоторые из них? – meen