Skip to content

Instantly share code, notes, and snippets.

@WanderingHogan
Created August 18, 2016 21:03
Show Gist options
  • Select an option

  • Save WanderingHogan/d307d65840377051c46e70b5f9889642 to your computer and use it in GitHub Desktop.

Select an option

Save WanderingHogan/d307d65840377051c46e70b5f9889642 to your computer and use it in GitHub Desktop.
var viewer = new Cesium.Viewer('cesiumContainer');
var entity = viewer.entities.add({
position: Cesium.Cartesian3.fromDegrees(-111.0, 40.0, 150000.0),
ellipse : {
semiMinorAxis : 800000.0,
semiMajorAxis : 800000.0,
height: 0,
material : new Cesium.Color(228, 240, 245, .1),
outline : true,
outlineColor : new Cesium.Color(228, 240, 245, .5),
outlineWidth: 5
}
});
var handler = new Cesium.ScreenSpaceEventHandler(viewer.canvas);
var dragging = false;
handler.setInputAction(
function(click) {
var pickedObject = viewer.scene.pick(click.position);
if (Cesium.defined(pickedObject) && (pickedObject.id === entity)) {
entity.ellipse.scale = 1.2;
dragging = true;
viewer.scene.screenSpaceCameraController.enableRotate = false;
}
},
Cesium.ScreenSpaceEventType.LEFT_DOWN
);
handler.setInputAction(
function(movement) {
if (dragging) {
entity.position = viewer.camera.pickEllipsoid(movement.endPosition);
}
},
Cesium.ScreenSpaceEventType.MOUSE_MOVE
);
handler.setInputAction(
function() {
entity.ellipse.scale = 1;
dragging = false;
viewer.scene.screenSpaceCameraController.enableRotate = true;
},
Cesium.ScreenSpaceEventType.LEFT_UP
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment