Название говорит само за себя, я не могу заставить объект перемещаться по земному шару визуально, даже если его положение перемещается. Этот код воспроизведет проблему в Sandcastle:
var viewer = new Cesium.Viewer('cesiumContainer');
var e = viewer.entities.add({
name : 'Sphere',
position: Cesium.Cartesian3.fromDegrees(-100, 30.0, 300000.0),
ellipsoid : {
radii : new Cesium.Cartesian3(200000.0, 200000.0, 200000.0)
}
});
viewer.scene.postRender.addEventListener(function(scene, time) {
var pos = e.position._value;
var cart = Cesium.Ellipsoid.WGS84.cartesianToCartographic(pos);
pos = Cesium.Cartesian3.fromRadians(cart.longitude + (1 * Math.PI / 180), cart.latitude, cart.height);
e.position = pos;
});
Если вы выберете сферу в демоверсии, вы увидите, что зеленый индикатор выбора будет перемещаться по земному шару, но сфера застрянет на одном месте. Я предполагаю, что мне не хватает какого-то простого вызова функции, но я гуглил последние несколько часов и не могу найти решение.
Я уже просмотрел демонстрацию Picking на Sandcastle, но там нет ничего подходящего. Функциональность, которую я ищу, состоит в том, чтобы просто иметь форму, бесконечно повторяющую один и тот же набор координат, поэтому я не могу использовать SampledPositionProperty
, насколько я видел в любом случае.