479 lines
13 KiB
JavaScript
479 lines
13 KiB
JavaScript
var thisWidget;
|
|
|
|
|
|
//当前页面业务
|
|
function initWidgetView(_thisWidget) {
|
|
thisWidget = _thisWidget;
|
|
|
|
|
|
if (thisWidget.config && thisWidget.config.style) {
|
|
$("body").addClass(thisWidget.config.style);
|
|
}
|
|
|
|
//点击显示子页面
|
|
$('.tool-btn').click(function () {
|
|
$(this).parents('.basicbox').hide();
|
|
$('.mainbox').eq($(this).index()).show().siblings('.mainbox').hide();
|
|
})
|
|
//返回主菜单
|
|
$('.backmenu').click(function () {
|
|
$(this).parents('.mainbox').hide();
|
|
$('.basicbox').show();
|
|
|
|
thisWidget.destroyAll();
|
|
});
|
|
|
|
|
|
|
|
initRZFX()//日照分析
|
|
initPDPX()//坡度坡向
|
|
initKSY()//可视域分析
|
|
|
|
initFLFX()//方量分析
|
|
initDXKW() //地形开挖
|
|
initDBTM()//地表透明
|
|
|
|
initMXPQ()//模型剖切
|
|
initMXYP()//模型压平
|
|
initMXCJ()//模型裁剪
|
|
}
|
|
|
|
|
|
//=============日照分析=============
|
|
function initRZFX() {
|
|
|
|
$('#btn_goto_rzfx').click(function () {
|
|
thisWidget.createRZFX();
|
|
});
|
|
|
|
$('#btn_rzfx_destory').click(function () {
|
|
thisWidget.destroyRZFX();
|
|
});
|
|
$('#btn_rzfx_clear').click(function () {
|
|
thisWidget.clearRZFX();
|
|
$('#btn_rzfx_btn_rzfx_pause').hide();
|
|
$("#lbl_rzfx_nowTime").html("")
|
|
});
|
|
|
|
|
|
jeDate("#txt_rzfx_Date", {
|
|
theme: { bgcolor: "#135b91", pnColor: "#00CCFF" },
|
|
format: "YYYY-MM-DD"
|
|
});
|
|
|
|
jeDate("#txt_rzfx_StartTime", {
|
|
theme: { bgcolor: "#135b91", pnColor: "#00CCFF" },
|
|
format: "hh:mm:ss"
|
|
});
|
|
jeDate("#txt_rzfx_EndTime", {
|
|
theme: { bgcolor: "#135b91", pnColor: "#00CCFF" },
|
|
format: "hh:mm:ss"
|
|
});
|
|
|
|
var today = new Date().format("yyyy-MM-dd");
|
|
$("#txt_rzfx_Date").val(today);
|
|
$("#txt_rzfx_StartTime").val("8:00:00");
|
|
$("#txt_rzfx_EndTime").val("18:00:00");
|
|
|
|
|
|
|
|
$('#btn_rzfx_Start').click(function () {
|
|
var _date = $("#txt_rzfx_Date").val();
|
|
var _starttime = _date + " " + $("#txt_rzfx_StartTime").val();
|
|
var _endTime = _date + " " + $("#txt_rzfx_EndTime").val();
|
|
|
|
var startDate = new Date(_starttime);
|
|
var endDate = new Date(_endTime);
|
|
thisWidget.startPlayRZFX(startDate, endDate);
|
|
$('#btn_rzfx_btn_rzfx_pause').show();
|
|
});
|
|
$('#btn_rzfx_btn_rzfx_pause').hide();
|
|
|
|
$('#btn_rzfx_btn_rzfx_pause').click(function () {
|
|
var result = thisWidget.pauseRZFX();
|
|
if (result) {
|
|
$('#btn_rzfx_btn_rzfx_pause').val("暂停")
|
|
}
|
|
else {
|
|
$('#btn_rzfx_btn_rzfx_pause').val("继续")
|
|
}
|
|
});
|
|
|
|
}
|
|
function setRZFXNowTime(date) {
|
|
$("#lbl_rzfx_nowTime").html(date.format("MM月dd日 HH:mm:ss"));
|
|
}
|
|
|
|
//=============坡度坡向=============
|
|
function initPDPX() {
|
|
|
|
$('#btn_goto_pdpx').click(function () {
|
|
thisWidget.createPDPX();
|
|
});
|
|
|
|
$('#btn_pdpx_destory').click(function () {
|
|
thisWidget.destroyPDPX();
|
|
});
|
|
$('#btn_pdpx_clear').click(function () {
|
|
thisWidget.clearPDPX();
|
|
});
|
|
|
|
$('#btn_pdpx_drawLine').click(function () {
|
|
var splitNum = Number($("#txt_pdpx_SplitNum").val());
|
|
thisWidget.drawPDPXLine(splitNum);
|
|
});
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
//=============可视域分析=============
|
|
function initKSY() {
|
|
|
|
$('#btn_goto_ksy').click(function () {
|
|
thisWidget.createKSY();
|
|
});
|
|
$('#btn_ksy_destory').click(function () {
|
|
thisWidget.destroyKSY();
|
|
});
|
|
$('#btn_ksy_clear').click(function () {
|
|
thisWidget.clearKSY();
|
|
|
|
updateKsyDistance(100);
|
|
});
|
|
|
|
|
|
//滑动条
|
|
$("#range_ksy_horizontalAngle").range({
|
|
onChange: function (value, bfb) {
|
|
$("#txt_ksy_horizontalAngle").val(value)
|
|
thisWidget.getLastKSY().horizontalAngle = value;
|
|
}
|
|
});
|
|
$("#txt_ksy_horizontalAngle").change(function () {
|
|
var value = Number($(this).val());
|
|
$("#range_ksy_horizontalAngle").val(value).change();
|
|
thisWidget.getLastKSY().horizontalAngle = value;
|
|
});
|
|
|
|
|
|
$("#range_ksy_verticalAngle").range({
|
|
onChange: function (value, bfb) {
|
|
$("#txt_ksy_verticalAngle").val(value)
|
|
thisWidget.getLastKSY().verticalAngle = value;
|
|
}
|
|
});
|
|
$("#txt_ksy_verticalAngle").change(function () {
|
|
var value = Number($(this).val());
|
|
$("#range_ksy_verticalAngle").val(value).change();
|
|
thisWidget.getLastKSY().verticalAngle = value;
|
|
});
|
|
|
|
|
|
$("#range_ksy_distance").range({
|
|
onChange: function (value, bfb) {
|
|
$("#txt_ksy_distance").val(value)
|
|
thisWidget.getLastKSY().distance = value;
|
|
}
|
|
});
|
|
$("#txt_ksy_distance").change(function () {
|
|
var value = Number($(this).val());
|
|
$("#range_ksy_distance").val(value).change();
|
|
thisWidget.getLastKSY().distance = value;
|
|
});
|
|
|
|
|
|
$("#chk_ksy_DebugFrustum").change(function () {
|
|
var debugFrustum = $(this).is(':checked');
|
|
thisWidget.updateKsyDebugFrustum(debugFrustum);
|
|
});
|
|
|
|
$('#btn_ksy_add').click(function () {
|
|
var horizontalAngle = Number($("#txt_ksy_horizontalAngle").val());
|
|
var verticalAngle = Number($("#txt_ksy_verticalAngle").val());
|
|
var distance = Number($("#txt_ksy_distance").val());
|
|
|
|
thisWidget.addKSY({
|
|
horizontalAngle: horizontalAngle,
|
|
verticalAngle: verticalAngle,
|
|
distance: distance,
|
|
});
|
|
|
|
});
|
|
}
|
|
|
|
function updateKsyDistance(value) {
|
|
$("#range_ksy_distance").val(value).change();
|
|
$("#txt_ksy_distance").val(value)
|
|
}
|
|
|
|
|
|
//=============方量分析============
|
|
function initFLFX() {
|
|
$('#btn_goto_flfx').click(function () {
|
|
thisWidget.createFLFX();
|
|
});
|
|
$('#btn_flfx_destory').click(function () {
|
|
thisWidget.destroyFLFX();
|
|
});
|
|
$('#btn_flfx_clear').click(function () {
|
|
$("#txt_flfx_Height").val(0);
|
|
$("#txt_flfx_MaxHeight").val(0);
|
|
$("#txt_flfx_MinHeight").val(0);
|
|
|
|
thisWidget.clearFLFX();
|
|
});
|
|
|
|
$('#btn_flfx_draw').click(function () {
|
|
thisWidget.measureObj.startDraw();
|
|
});
|
|
$("#txt_flfx_Height").change(function () {
|
|
var num = Number($(this).val());
|
|
thisWidget.measureObj.height = num;
|
|
|
|
showFLFXHeightRg()
|
|
});
|
|
$("#txt_flfx_MaxHeight").change(function () {
|
|
var num = Number($(this).val());
|
|
|
|
var maxHeight = getFixedNum(thisWidget.measureObj.squareResult.maxHeight)
|
|
if (num < maxHeight) {
|
|
haoutil.msg("墙顶部高度不能低于区域内的地表高" + maxHeight);
|
|
|
|
$(this).val(maxHeight);
|
|
thisWidget.measureObj.maxHeight = Number(maxHeight);
|
|
return
|
|
}
|
|
if (num < thisWidget.measureObj.height) {
|
|
haoutil.msg("墙顶部高度不能低于基准面高" + thisWidget.measureObj.height);
|
|
return
|
|
}
|
|
thisWidget.measureObj.maxHeight = num;
|
|
});
|
|
$("#txt_flfx_MinHeight").change(function () {
|
|
var num = Number($(this).val());
|
|
if (num > thisWidget.measureObj.height) {
|
|
haoutil.msg("墙底部高度不能高于基准面高" + thisWidget.measureObj.height);
|
|
return
|
|
}
|
|
thisWidget.measureObj.minHeight = num;
|
|
});
|
|
$("#btn_flfx_selHeight").click(function () {
|
|
thisWidget.measureObj.selecteHeight(showFLFXHeightRg);
|
|
});
|
|
|
|
}
|
|
|
|
function showFLFXHeightRg() {
|
|
$("#txt_flfx_Height").val(thisWidget.measureObj.height.toFixed(1));
|
|
$("#txt_flfx_MaxHeight").val( getFixedNum(thisWidget.measureObj.maxHeight));
|
|
$("#txt_flfx_MinHeight").val(thisWidget.measureObj.minHeight.toFixed(1));
|
|
}
|
|
function getFixedNum(val) {
|
|
return Math.ceil(val * 10) / 10
|
|
}
|
|
|
|
//=============地形开挖=============
|
|
function initDXKW() {
|
|
|
|
$('#btn_goto_dxkw').click(function () {
|
|
thisWidget.createDXKW();
|
|
});
|
|
|
|
$('#btn_dxkw_destory').click(function () {
|
|
thisWidget.destroyDXKW();
|
|
});
|
|
$('#btn_dxkw_clear').click(function () {
|
|
thisWidget.clearDXKW();
|
|
});
|
|
$('#bt_dxkw_draw').click(function () {
|
|
thisWidget.startDrawDXKW();
|
|
});
|
|
$('#bt_dxkw_draw_extent').click(function () {
|
|
thisWidget.startDrawDXKWExtent();
|
|
});
|
|
|
|
|
|
$("#txt_dxkw_clipHeight").change(function () {
|
|
var nowValue = $(this).val();
|
|
thisWidget.updateDXKWHeight(nowValue);
|
|
});
|
|
}
|
|
function getDXKWNowHeight() {
|
|
return $("#txt_dxkw_clipHeight").val();
|
|
}
|
|
|
|
|
|
|
|
//=============地表透明=============
|
|
function initDBTM() {
|
|
|
|
$('#btn_goto_dbtm').click(function () {
|
|
thisWidget.createDBTM();
|
|
});
|
|
$('#btn_dbtm_destory').click(function () {
|
|
thisWidget.destroyDBTM();
|
|
});
|
|
$('#btn_dbtm_clear').click(function () {
|
|
thisWidget.clearDBTM();
|
|
});
|
|
|
|
|
|
$("#chk_dbtm_Underground").change(function () {
|
|
var val = $(this).is(':checked');
|
|
|
|
thisWidget.underObj.enable = val;
|
|
});
|
|
|
|
$("#txt_dbtm_alpha").range({
|
|
onChange: function (value, bfb) {
|
|
thisWidget.underObj.alpha = value;
|
|
}
|
|
});
|
|
|
|
|
|
}
|
|
|
|
function getDbtmEnable() {
|
|
var val = $("#chk_dbtm_Underground").is(':checked');
|
|
return val;
|
|
}
|
|
|
|
function updateDbtmVisible(visible) {
|
|
if (visible) {
|
|
$(".undergroundAttr").show();
|
|
} else {
|
|
$(".undergroundAttr").hide();
|
|
}
|
|
}
|
|
|
|
|
|
//=============模型剖切=============
|
|
function initMXPQ() {
|
|
|
|
$('#btn_mxpq_destory').click(function () {
|
|
$("#lbl_mxpq_mxmc").html("未选择");
|
|
thisWidget.destroyMXPQ();
|
|
});
|
|
$('#btn_mxpq_clear').click(function () {
|
|
thisWidget.clearMXPQ();
|
|
});
|
|
|
|
|
|
$('#btn_mxpq_selectd').click(function () {
|
|
thisWidget.selectedPQMX();
|
|
});
|
|
|
|
|
|
//滑动条
|
|
$("#range_mxpq_Distance").range({
|
|
onChange: function (value, bfb) {
|
|
$("#txt_mxpq_Distance").val(value.toFixed(1))
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.distance = value;
|
|
}
|
|
});
|
|
$("#txt_mxpq_Distance").change(function () {
|
|
var value = Number($(this).val());
|
|
$("#range_mxpq_Distance").val(value).change();
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.distance = value;
|
|
});
|
|
|
|
$("#btn_mxpq_DrawLine").click(function () {
|
|
thisWidget.drawLinePQMX();
|
|
});
|
|
|
|
|
|
$("#btn_mxpq_Clipping1").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.Z;
|
|
});
|
|
$("#btn_mxpq_Clipping2").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.ZR;
|
|
});
|
|
$("#btn_mxpq_Clipping3").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.X;
|
|
});
|
|
$("#btn_mxpq_Clipping4").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.XR;
|
|
});
|
|
|
|
$("#btn_mxpq_Clipping5").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.Y;
|
|
});
|
|
$("#btn_mxpq_Clipping6").click(function () {
|
|
if (thisWidget.clipTileset)
|
|
thisWidget.clipTileset.type = parent.xjsdk.tiles.TilesClipPlan.Type.YR;
|
|
});
|
|
|
|
}
|
|
function setClipDistanceRange(radius, name) {
|
|
$("#range_mxpq_Distance").attr("min", -radius);
|
|
$("#range_mxpq_Distance").attr("max", radius);
|
|
|
|
$("#lbl_mxpq_mxmc").html("已选择“" + name + "”");
|
|
}
|
|
|
|
//=============模型压平=============
|
|
function initMXYP() {
|
|
|
|
$('#btn_goto_mxyp').click(function () {
|
|
thisWidget.createMXYP();
|
|
});
|
|
$('#btn_mxyp_destory').click(function () {
|
|
thisWidget.destroyMXYP();
|
|
});
|
|
$('#btn_mxyp_clear').click(function () {
|
|
thisWidget.clearMXYP();
|
|
});
|
|
|
|
$('#bt_mxyp_draw').click(function () {
|
|
var height = Number($("#txt_mxyp_flatHeight").val());
|
|
thisWidget.drawMxypPoly(height);
|
|
});
|
|
$("#txt_mxyp_flatHeight").change(function () {
|
|
var num = Number($(this).val());
|
|
if (thisWidget.flatObj)
|
|
thisWidget.flatObj.flatHeight = num;
|
|
});
|
|
|
|
|
|
}
|
|
|
|
//=============模型裁剪=============
|
|
function initMXCJ() {
|
|
|
|
$('#btn_goto_mxcj').click(function () {
|
|
thisWidget.createMXCJ();
|
|
});
|
|
$('#btn_mxcj_destory').click(function () {
|
|
thisWidget.destroyMXCJ();
|
|
});
|
|
$('#btn_mxcj_clear').click(function () {
|
|
thisWidget.clearMXCJ();
|
|
});
|
|
$('#bt_mxcj_draw').click(function () {
|
|
var clipOutSide = $("#radioMxcjType2").is(':checked')
|
|
thisWidget.drawMxcjPoly(clipOutSide);
|
|
});
|
|
|
|
|
|
|
|
$('input:radio[name="radioMxcjType"]').change(function () {
|
|
if (!thisWidget.tilesetClip) return;
|
|
|
|
if ($(this).val() == "1") {
|
|
thisWidget.tilesetClip.clipOutSide = true;
|
|
}
|
|
else {
|
|
thisWidget.tilesetClip.clipOutSide = false;
|
|
}
|
|
});
|
|
|
|
}
|