var handler = new Cesium.ScreenSpaceEventHandler(scene.canvas);
handler.setInputAction(function(click) {
var alertText = '';
function addToMessage(key, value) {
alertText += key + ': ' + value + '\n';
}
var pickedObject = scene.pick(click.position);
if (Cesium.defined(pickedObject) && (pickedObject.id === entity)) {
addToMessage('target', pickedObject.id.id);
var position = viewer.camera.pickEllipsoid(click.position);
addToMessage('screenX', click.position.x);
addToMessage('screenY', click.position.y);
addToMessage('didHitGlobe', Cesium.defined(position));
var cartographicPosition = Cesium.Ellipsoid.WGS84.cartesianToCartographic(position);
addToMessage('longitude', Cesium.Math.toDegrees(cartographicPosition.longitude));
addToMessage('latitude', Cesium.Math.toDegrees(cartographicPosition.latitude));
terrainSamplePositions = [cartographicPosition];
Cesium.sampleTerrain(viewer.terrainProvider, 9, terrainSamplePositions).then(function() {
addToMessage('height', terrainSamplePositions[0].height);
}).always(function() {
alert(alertText);
});
}
}, Cesium.ScreenSpaceEventType.LEFT_CLICK);
google.earth.addEventListener(placemark, 'click', function(event) {
var text = 'Click:';
function addToMessage(append1, append2) {
text += ' ' + append1 + ': ' + append2 + '\n';
}
addToMessage('target type', event.getTarget().getType());
addToMessage('currentTarget type', event.getCurrentTarget().getType());
addToMessage('button', event.getButton());
addToMessage('clientX', event.getClientX());
addToMessage('clientY', event.getClientY());
addToMessage('screenX', event.getScreenX());
addToMessage('screenY', event.getScreenY());
addToMessage('latitude', event.getLatitude());
addToMessage('longitude', event.getLongitude());
addToMessage('altitude', event.getAltitude());
addToMessage('didHitGlobe', event.getDidHitGlobe());
addToMessage('altKey', event.getAltKey());
addToMessage('ctrlKey', event.getCtrlKey());
addToMessage('shiftKey', event.getShiftKey());
addToMessage('timeStamp', event.getTimeStamp());
// Prevent default balloon from popping up for marker placemarks
event.preventDefault();
// wrap alerts in API callbacks and event handlers
// in a setTimeout to prevent deadlock in some browsers
setTimeout(function() {
alert(text);
}, 0);
});