Всем добрый день,
Я немного работаю с Cesium и начал, когда можно было использовать Primitive Collections. У меня работал примитивный рендеринг щелчком и перетаскиванием, но теперь я хочу обновить Cesium и перейти к сущностям. Я переместил код, провел рефакторинг и могу щелкать и перетаскивать, чтобы рисовать фигуры; однако, прежде чем я смог перевернуть асинхронный флаг, и он отображался при перемещении мыши. Теперь я не могу этого сделать. Я попытался установить «allowDataSourcesToSuspendAnimation» в средстве просмотра на false, но безрезультатно. Любая помощь будет чрезвычайно признательна.
По своей наивности я забыл добавить к своему вопросу фрагмент кода. Это прослушиватель событий такта часов, который срабатывает только тогда, когда происходит нажатие мыши (логическое значение установлено в true)
var radius = Cesium.Cartesian3.distance(cartesianStartMousePosition, cartesianMousePosition);
if (radius > 0) {
if (currentEntity && currentEntity.id) {
currentEntity.position = cartesianStartMousePosition;
currentEntity.ellipse = {
semiMinorAxis: radius,
semiMajorAxis: radius,
material: new Cesium.ColorMaterialProperty(myColor)
};
currentEntity.label = {
text: 'New Overlay',
scale: 0.35
};
overlayEntities.resumeEvents();
}
else {
currentEntity = new Cesium.Entity({
position: cartesianStartMousePosition,
ellipse: {
semiMinorAxis: radius,
semiMajorAxis: radius,
material: new Cesium.ColorMaterialProperty(myColor)
},
label: {
text: 'New Overlay',
scale: 0.35
},
isSaved: false
});
overlayEntities.add(currentEntity);
}
bDrewPrim = true;
}