【解決辦法】動态調整時(shí)間來(lái)模拟陰影變化效果:
function updateShadowQueryTime() {
var dateValue = $("#selDate").val();
var startTime = new Date(dateValue);
startTime.setHours(Number($("#startTime :selected").val()));
shadowQuery.startTime = SuperMap3D.JulianDate.fromDate(startTime);
var endTime = new Date(dateValue);
endTime.setHours(Number($("#endTime :selected").val()));
shadowQuery.endTime = SuperMap3D.JulianDate.fromDate(endTime);
}
$('#sunlight').click(function(){
var dateVal = $("#selDate").val();
var startTime = new Date(dateVal);
var endTime = new Date(dateVal);
var shour = Number($("#startTime :selected").val());
var ehour = Number($("#endTime :selected").val());
if(shour >= ehour) {
alert("結束時(shí)間必須大(dà)于(yú)開始時(shí)間");
return;
}
// 設置時(shí)鍾範圍
startTime.setHours(shour);
endTime.setHours(ehour);
viewer.clock.startTime = SuperMap3D.JulianDate.fromDate(startTime);
viewer.clock.stopTime = SuperMap3D.JulianDate.fromDate(endTime);
viewer.clock.currentTime = viewer.clock.startTime.clone();
// 設置時(shí)鍾爲(wéi / wèi)循環模式
viewer.clock.clockRange = SuperMap3D.ClockRange.LOOP_STOP;
// 設置初始速度 (1小時(shí)對應1秒)
viewer.clock.multiplier = 3600;
// 開始動畫
viewer.clock.shouldAnimate = true;
// 顯示動畫控制面闆
$('#animationControls').show();
// 更新陰影查詢時(shí)間範圍
updateShadowQueryTime();
// 啓用陰影效果
shadowQuery.build();
});