/** * Copyright (c) 2011-2018 by Andrew Mustun. All rights reserved. * * This file is part of the QCAD project. * * QCAD is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * QCAD is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with QCAD. */ include("scripts/EAction.js"); include("scripts/File/File.js"); include("../PM/PM.js") include("../ZDM/ZDM.js") SetArguments.readmeFile = "readme.txt"; function SetArguments(guiAction) { EAction.call(this, guiAction); this.pmsel = false; this.zdmsel = false; // var lastOpenFile = RSettings.getStringValue("OpenProject/Current", RSettings.getDocumentsLocation()); // var lastOpenFileDir = SetArguments.includeBasePath + "/../../../project/" + lastOpenFile + "/para.ini"; } SetArguments.prototype = new EAction(); SetArguments.includeBasePath = includeBasePath; SetArguments.prototype.beginEvent = function () { EAction.prototype.beginEvent.call(this); // EAction.handleUserMessage("start show widget"); var appWin = EAction.getMainWindow(); if(RSettings.getStringValue("OpenProject/Current","") == ""){ QMessageBox.critical(appWin, qsTr("提示"), qsTr("请先选择工程路径")); return; } var lastOpenFileDir = RSettings.getStringValue("OpenProject/Current", RSettings.getDocumentsLocation()) + "/para.ini"; // EAction.handleUserMessage(lastOpenFileDir); var file = new QFile(lastOpenFileDir); if(!file.exists()){ QMessageBox.critical(EAction.getMainWindow(), qsTr("提示"), RSettings.getStringValue("OpenProject/Current","") + qsTr(" 工程下没有参数文件")); return; } this.iniFile = new QSettings(lastOpenFileDir, QSettings.IniFormat); // this.iniFile = new QSettings("D:/Project/para.ini", QSettings.IniFormat); this.standard_type = new Array(); this.dialog = this.createWidget(SetArguments.includeBasePath + "/SetArgumentsDialog.ui", appWin); WidgetFactory.restoreState(this.dialog); this.resetClicked(); //var iniConf = []; //iniConf = this.readNormalIniFile(); //this.setNormalBox(iniConf); var childs = this.iniFile.childGroups(); for(var i = 0; i < childs.length; i++){ if(childs[i].indexOf("standard") != -1){ this.standard_type.push(childs[i]); this.standard_type.push(this.iniFile.value("/" + childs[i].toString() + "/design_speed").replace(/(\s*)+/g,"").replace(/#(\S*)/,"")); // EAction.handleUserMessage(this.iniFile.value("/" + childs[i] + "/design_speed").replace(/(\s*)+/g,"").replace(/#(\S*)/,"")); // EAction.handleUserMessage(childs[i]); } } // 速度 this.select_type = this.standard_type[0]; //this.resetClicked(); // var design_speed = this.dialog.findChild("comboBox"); // for(var i = 1; i < this.standard_type.length; i += 2){ // design_speed.addItem(this.standard_type[i]); // } // design_speed["currentIndexChanged(int)"].connect(this, this.selectSpeed); // var speedCfg = []; // speedCfg = this.readSpeedCfg(); // this.setSpeedBox(speedCfg); // 恢复默认 var resetBtn = this.dialog.findChild("resetBtn"); resetBtn.clicked.connect(this, this.resetClicked); // 保存 var saveBtn = this.dialog.findChild("saveBtn"); saveBtn.clicked.connect(this, this.saveClicked); // 优化 var optimizeBtn = this.dialog.findChild("optimizeBtn"); optimizeBtn.clicked.connect(this, this.optimizeClicked); if (!this.dialog.exec()) { EAction.handleUserMessage("clicked~"); destr(this.dialog); EAction.activateMainWindow(); return undefined; } WidgetFactory.saveState(this.dialog); }; SetArguments.prototype.optimizeClicked = function() { // 查找文件,显示出来 // test:显示随便的数字 var appWin = EAction.getMainWindow(); var selectLineDialog = this.createWidget(SetArguments.includeBasePath + "/SelectLineDialog.ui", appWin); EAction.handleUserMessage("debug1"); var radioWidget = selectLineDialog.findChild("widget"); EAction.handleUserMessage("debug2"); this.btngrp = new QButtonGroup(radioWidget); var r1 = new QRadioButton("aa", radioWidget); r1.setGeometry(10, 10, 100, 30); var r2 = new QRadioButton("cc", radioWidget); r2.setGeometry(10, 30, 100, 30); this.btngrp.addButton(r1, 0); this.btngrp.addButton(r2, 1); r1.clicked.connect(this,this.pmClicked); r2.clicked.connect(this,this.pmClicked); var rBtnMan = new QRadioButton("男", radioWidget); rBtnMan.setGeometry(30, 50, 100, 30); var rBtnWoman = new QRadioButton("111", radioWidget); rBtnWoman.setGeometry(30, 90, 100, 30); var rBtnUnknown = new QRadioButton("222", radioWidget); rBtnUnknown.setGeometry(30, 130, 100, 30); EAction.handleUserMessage("debug3"); RSettings.setValue("ProjectImportFile/PMFile", ",aaa.pm"); var tmp = RSettings.getStringValue("ProjectImportFile/PMFile", ""); EAction.handleUserMessage(tmp); RSettings.setValue("ProjectImportFile/PMFile", tmp + ",bbb.pm"); tmp = RSettings.getStringValue("ProjectImportFile/PMFile", ""); EAction.handleUserMessage(tmp); var list = tmp.split(','); this.pms = new Array(); // EAction.handleUserMessage(list); for(var i = 0; i < list.length; i++){ if(list[i] == "") continue; this.pms.push(list[i]); EAction.handleUserMessage(list[i]); } if (!selectLineDialog.exec()) { EAction.handleUserMessage("clicked~"); destr(selectLineDialog); EAction.activateMainWindow(); return undefined; } } SetArguments.prototype.pmClicked = function() { var id = this.btngrp.checkedId(); EAction.handleUserMessage(id.toString()); EAction.handleUserMessage(this.pms[id]); } SetArguments.prototype.saveClicked = function() { this.iniFile.setValue("/parameter/batch_sizes",this.dialog.findChild("batch_sizes").text); this.iniFile.setValue("/parameter/learning_rate0",this.dialog.findChild("learning_rate0").text); this.iniFile.setValue("/parameter/learning_rate1",this.dialog.findChild("learning_rate1").text); this.iniFile.setValue("/parameter/iteration_times",this.dialog.findChild("iteration_times").text); this.iniFile.setValue("/parameter/discount_factor",this.dialog.findChild("discount_factor").text); this.iniFile.setValue("/parameter/d_k",this.dialog.findChild("d_k").text); this.iniFile.setValue("/parameter/d_line",this.dialog.findChild("d_line").text); this.iniFile.setValue("/parameter/forward_step",this.dialog.findChild("forward_step").text); this.iniFile.setValue("/parameter/learning_rate0",this.dialog.findChild("learning_rate0").text); this.iniFile.setValue("/parameter/range_p",this.dialog.findChild("range_p_x").text); this.iniFile.setValue("/parameter/range_g",this.dialog.findChild("range_g").text); this.iniFile.setValue("/parameter/range_k",this.dialog.findChild("range_k").text); this.iniFile.setValue("/parameter/range_c",this.dialog.findChild("range_c").text); this.iniFile.setValue("/parameter/range_v",this.dialog.findChild("range_v").text); this.iniFile.setValue("/parameter/range_e",this.dialog.findChild("range_e").text); this.iniFile.setValue("/weigth/hCostSlider",this.dialog.findChild("hCostSlider").text); this.iniFile.setValue("/weigth/hEcologySlider",this.dialog.findChild("hEcologySlider").text); this.iniFile.setValue("/weigth/vCostSlider",this.dialog.findChild("vCostSlider").text); EAction.handleUserMessage("Save File"); }; // 修改文件中的数据,保留注释 SetArguments.prototype.saveData = function(){ var file = new QFile(this.iniFile); var flags = makeQIODeviceOpenMode(QIODevice.WriteOnly, QIODevice.Text); if (file.open(flags)) { var textStream = new QTextStream(file); setUtf8Codec(textStream); // textStream.writeString(str); file.close(); } }; SetArguments.prototype.resetClicked = function(){ var iniConf = []; iniConf = this.readNormalIniFile(); this.setNormalBox(iniConf); // var speedCfg = []; // speedCfg = this.readSpeedCfg(); // this.setSpeedBox(speedCfg); }; SetArguments.prototype.selectSpeed = function(index){ // EAction.handleUserMessage("index: " + index); // index*2 得到child的名字 this.select_type = this.standard_type[index*2]; // EAction.handleUserMessage("type:" + this.select_type); var special_speed = this.getStandardInfo(this.standard_type[index*2]); this.setSpeedBox(special_speed); } SetArguments.prototype.readNormalIniFile = function(){ var ret = []; //#region 优化模型参数设置 ret["batch_sizes"] = this.iniFile.value("/parameter/batch_sizes").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["learning_rate0"] = this.iniFile.value("/parameter/learning_rate0").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["learning_rate1"] = this.iniFile.value("/parameter/learning_rate1").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["iteration_times"] = this.iniFile.value("/parameter/iteration_times").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["discount_factor"] = this.iniFile.value("/parameter/discount_factor").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["d_k"] = this.iniFile.value("/parameter/d_k").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["forward_step"] = this.iniFile.value("/parameter/forward_step").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_p"] = this.iniFile.value("/parameter/range_p").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_g"] = this.iniFile.value("/parameter/range_g").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_k"] = this.iniFile.value("/parameter/range_k").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["d_line"] = this.iniFile.value("/parameter/d_line").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_c"] = this.iniFile.value("/parameter/range_c").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_v"] = this.iniFile.value("/parameter/range_v").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["range_e"] = this.iniFile.value("/parameter/range_e").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); //#endregion //#region 铁路单位造价设置 ret["beam0"] = this.iniFile.value("/cost/beam0").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["beam1"] = this.iniFile.value("/cost/beam1").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["bridge_pier"] = this.iniFile.value("/cost/bridge_pier").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["tunnel0"] = this.iniFile.value("/cost/tunnel0").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["tunnel1"] = this.iniFile.value("/cost/tunnel1").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["tunnel2"] = this.iniFile.value("/cost/tunnel2").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["tunnel_entrance"] = this.iniFile.value("/cost/tunnel_entrance").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["railway_tracks"] = this.iniFile.value("/cost/railway_tracks").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["road_right_fee"] = this.iniFile.value("/cost/road_right_fee").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["filling_cost"] = this.iniFile.value("/cost/filling_cost").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["excavation_cost"] = this.iniFile.value("/cost/excavation_cost").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["arable_land_occupation"] = this.iniFile.value("/cost/arable_land_occupation").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["house_demolition"] = this.iniFile.value("/cost/house_demolition").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); // ret["farmland_layer_name"] = this.iniFile.value("/cost/farmland_layer_name").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); // ret["demolition_layer_name"] = this.iniFile.value("/cost/demolition_layer_name").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["replace_railway_by_bridge"] = this.iniFile.value("/cost/replace_railway_by_bridge").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); //#endregion //#region 生态 ret["water"] = this.iniFile.value("/ecology/water").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["voice"] = this.iniFile.value("/ecology/voice").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["culture"] = this.iniFile.value("/ecology/culture").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["animal"] = this.iniFile.value("/ecology/animal").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["prewater"] = this.iniFile.value("/ecology/prewater").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["traffic"] = this.iniFile.value("/ecology/traffic").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["tree"] = this.iniFile.value("/ecology/tree").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["air"] = this.iniFile.value("/ecology/air").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["house"] = this.iniFile.value("/ecology/house").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); //#endregion //#region 速度 ret["speed"] = this.iniFile.value("/standard/design_speed").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_curve_radius"] = this.iniFile.value("/standard/minimum_curve_radius").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_circular_length"] = this.iniFile.value("/standard/minimum_circular_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimal_longitudinal_length"] = this.iniFile.value("/standard/minimal_longitudinal_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["maximum_gradient"] = this.iniFile.value("/standard/maximum_gradient").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["maximum_slope_difference"] = this.iniFile.value("/standard/maximum_slope_difference").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_radius_of_convex_vertical_curve"] = this.iniFile.value("/standard/minimum_radius_of_convex_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_radius_of_concave_vertical_curve"] = this.iniFile.value("/standard/minimum_radius_of_concave_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_transition_curve_length"] = this.iniFile.value("/standard/minimum_transition_curve_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_clip_line_length"] = this.iniFile.value("/standard/minimum_clip_line_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["minimum_length_of_vertical_curve"] = this.iniFile.value("/standard/minimum_length_of_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); //#endregion //#region 速度 ret["hCostSlider"] = this.iniFile.value("/weigth/hCostSlider").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["hEcologySlider"] = this.iniFile.value("/weigth/hEcologySlider").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); ret["vCostSlider"] = this.iniFile.value("/weigth/vCostSlider").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); //#endregion EAction.handleUserMessage("read ini finish"); return ret; }; SetArguments.prototype.setNormalBox = function(iniConf){ var batch_sizes = this.dialog.findChild("batch_sizes"); var learning_rate0 = this.dialog.findChild("learning_rate0"); var learning_rate1 = this.dialog.findChild("learning_rate1"); var iteration_times = this.dialog.findChild("iteration_times"); var discount_factor = this.dialog.findChild("discount_factor"); var range_p_x = this.dialog.findChild("range_p_x"); var range_p_y = this.dialog.findChild("range_p_y"); var range_g = this.dialog.findChild("range_g"); var range_k = this.dialog.findChild("range_k"); var range_c = this.dialog.findChild("range_c"); var range_v = this.dialog.findChild("range_v"); var range_e = this.dialog.findChild("range_e"); var d_k= this.dialog.findChild("d_k"); var d_line= this.dialog.findChild("d_line"); var forward_step= this.dialog.findChild("forward_step"); // slider var batchSlider = this.dialog.findChild("batchsizeSlider"); var stepSlider = this.dialog.findChild("stepSlider"); var iterationtimeSlider = this.dialog.findChild("iterationtimeSlider"); var dkSlider = this.dialog.findChild("dkSlider"); var rangecSlider = this.dialog.findChild("rangecSlider"); var rangevSlider = this.dialog.findChild("rangevSlider"); var rangeeSlider = this.dialog.findChild("rangeeSlider"); // EAction.handleUserMessage("read ui"); batch_sizes.textChanged.connect( function() {batchSlider.setValue(batch_sizes.text);} ); forward_step.textChanged.connect( function() {stepSlider.setValue(forward_step.text);} ); iteration_times.textChanged.connect( function() {iterationtimeSlider.setValue(iteration_times.text);} ); d_k.textChanged.connect( function() {dkSlider.setValue(d_k.text);} ); range_c.textChanged.connect( function() {rangecSlider.setValue(range_c.text);} ); range_v.textChanged.connect( function() {rangevSlider.setValue(range_v.text);} ); range_e.textChanged.connect( function() {rangeeSlider.setValue(range_e.text);} ); batchSlider.valueChanged.connect( function() {batch_sizes.setText(batchSlider.value);} ); stepSlider.valueChanged.connect( function() {forward_step.setText(stepSlider.value);} ); iterationtimeSlider.valueChanged.connect( function() {iteration_times.setText(iterationtimeSlider.value);} ); dkSlider.valueChanged.connect( function() {d_k.setText(dkSlider.value);} ); rangecSlider.valueChanged.connect( function() {range_c.setText(rangecSlider.value);} ); rangevSlider.valueChanged.connect( function() {range_v.setText(rangevSlider.value);} ); rangeeSlider.valueChanged.connect( function() {range_e.setText(rangeeSlider.value);} ); batch_sizes.setText(iniConf["batch_sizes"]); learning_rate0.setText(iniConf["learning_rate0"]); learning_rate1.setText(iniConf["learning_rate1"]); iteration_times.setText(iniConf["iteration_times"]); discount_factor.setText(iniConf["discount_factor"]); range_p_x.setText(iniConf["range_p"]); range_p_y.setText(iniConf["range_p"]); range_g.setText(iniConf["range_g"]); range_k.setText(iniConf["range_k"]); range_c.setText(iniConf["range_c"]); range_v.setText(iniConf["range_v"]); range_e.setText(iniConf["range_e"]); d_k.setText(iniConf["d_k"]); d_line.setText(iniConf["d_line"]); forward_step.setText(iniConf["forward_step"]); range_p_x.textChanged.connect( function(){ range_p_y.setText(range_p_x.text); }); range_p_y.textChanged.connect( function(){ range_p_x.setText(range_p_y.text); }); EAction.handleUserMessage("end set form"); // range_g_x.textChanged.connect( // function(){ // range_g_y.setText(range_g_x.text); // }); // range_g_y.textChanged.connect( // function(){ // range_g_x.setText(range_g_y.text); // }); EAction.handleUserMessage("read ui"); var beam0 = this.dialog.findChild("beam0"); var beam1 = this.dialog.findChild("beam1"); var bridge_pier = this.dialog.findChild("bridge_pier"); var tunnel0 = this.dialog.findChild("tunnel0"); var tunnel1 = this.dialog.findChild("tunnel1"); var tunnel2 = this.dialog.findChild("tunnel2"); var tunnel_entrance = this.dialog.findChild("tunnel_entrance"); var railway_tracks = this.dialog.findChild("railway_tracks"); var road_right_fee = this.dialog.findChild("road_right_fee"); var filling_cost = this.dialog.findChild("filling_cost"); var excavation_cost = this.dialog.findChild("excavation_cost"); var arable_land_occupation = this.dialog.findChild("arable_land_occupation"); var house_demolition = this.dialog.findChild("house_demolition"); // var farmland_layer_name = this.dialog.findChild("farmland_layer_name"); // var demolition_layer_name = this.dialog.findChild("demolition_layer_name"); var replace_radio = this.dialog.findChild("replace_radio"); var not_replace_radio = this.dialog.findChild("not_replace_radio"); beam0.setText(iniConf["beam0"]); beam1.setText(iniConf["beam1"]); bridge_pier.setText(iniConf["bridge_pier"]); tunnel0.setText(iniConf["tunnel0"]); tunnel1.setText(iniConf["tunnel1"]); tunnel2.setText(iniConf["tunnel2"]); tunnel_entrance.setText(iniConf["tunnel_entrance"]); railway_tracks.setText(iniConf["railway_tracks"]); road_right_fee.setText(iniConf["road_right_fee"]); filling_cost.setText(iniConf["filling_cost"]); excavation_cost.setText(iniConf["excavation_cost"]); arable_land_occupation.setText(iniConf["arable_land_occupation"]); house_demolition.setText(iniConf["house_demolition"]); EAction.handleUserMessage("start set form"); // farmland_layer_name.setText(iniConf["farmland_layer_name"]); // demolition_layer_name.setText(iniConf["demolition_layer_name"]); if(0 == iniConf["replace_railway_by_bridge"].toInt()) { not_replace_radio.setChecked(1); } else { replace_radio.setChecked(1); } // 生态 var water = this.dialog.findChild("water"); var voice = this.dialog.findChild("voice"); var culture = this.dialog.findChild("culture"); var animal = this.dialog.findChild("animal"); var prewater = this.dialog.findChild("prewater"); var traffic = this.dialog.findChild("traffic"); var tree = this.dialog.findChild("tree"); var air = this.dialog.findChild("air"); var house = this.dialog.findChild("house"); var waterSlider = this.dialog.findChild("waterSlider"); var voiceSlider = this.dialog.findChild("voiceSlider"); var cultureSlider = this.dialog.findChild("cultureSlider"); var animalSlider = this.dialog.findChild("animalSlider"); var prewaterSlider = this.dialog.findChild("prewaterSlider"); var trafficSlider = this.dialog.findChild("trafficSlider"); var treeSlider = this.dialog.findChild("treeSlider"); var airSlider = this.dialog.findChild("airSlider"); var houseSlider = this.dialog.findChild("houseSlider"); water.textChanged.connect( function() {waterSlider.setValue(water.text);} ); voice.textChanged.connect( function() {voiceSlider.setValue(voice.text);} ); culture.textChanged.connect( function() {cultureSlider.setValue(culture.text);} ); animal.textChanged.connect( function() {animalSlider.setValue(animal.text);} ); prewater.textChanged.connect( function() {prewaterSlider.setValue(prewater.text);} ); traffic.textChanged.connect( function() {trafficSlider.setValue(traffic.text);} ); tree.textChanged.connect( function() {treeSlider.setValue(tree.text);} ); air.textChanged.connect( function() {airSlider.setValue(air.text);} ); house.textChanged.connect( function() {houseSlider.setValue(house.text);} ); water.setText(iniConf["water"]); voice.setText(iniConf["voice"]); culture.setText(iniConf["culture"]); animal.setText(iniConf["animal"]); prewater.setText(iniConf["prewater"]); traffic.setText(iniConf["traffic"]); tree.setText(iniConf["tree"]); air.setText(iniConf["air"]); house.setText(iniConf["house"]); // 速度 var speed = this.dialog.findChild("speed"); var minimum_curve_radius = this.dialog.findChild("minimum_curve_radius"); var minimum_circular_length = this.dialog.findChild("minimum_circular_length"); var minimal_longitudinal_length = this.dialog.findChild("minimal_longitudinal_length"); var maximum_gradient = this.dialog.findChild("maximum_gradient"); var maximum_slope_difference = this.dialog.findChild("maximum_slope_difference"); var minimum_radius_of_convex_vertical_curve = this.dialog.findChild("minimum_radius_of_convex_vertical_curve"); var minimum_radius_of_concave_vertical_curve = this.dialog.findChild("minimum_radius_of_concave_vertical_curve"); var minimum_transition_curve_length = this.dialog.findChild("minimum_transition_curve_length"); var minimum_clip_line_length = this.dialog.findChild("minimum_clip_line_length"); var minimum_length_of_vertical_curve = this.dialog.findChild("minimum_length_of_vertical_curve"); var speedSlider = this.dialog.findChild("speedSlider"); var radiusSlider = this.dialog.findChild("radiusSlider"); var lengthSlider = this.dialog.findChild("lengthSlider"); var minloglenSlider = this.dialog.findChild("minloglenSlider"); var gradientSlider = this.dialog.findChild("gradientSlider"); var slopdiffSlider = this.dialog.findChild("slopdiffSlider"); var convexSlider = this.dialog.findChild("convexSlider"); var concaveSlider = this.dialog.findChild("concaveSlider"); var transitionSlider = this.dialog.findChild("transitionSlider"); var clipSlider = this.dialog.findChild("clipSlider"); var verticalCurveSlider = this.dialog.findChild("verticalCurveSlider"); speed.textChanged.connect( function() {speedSlider.setValue(speed.text);} ); minimum_curve_radius.textChanged.connect( function() {radiusSlider.setValue(minimum_curve_radius.text);} ); minimum_circular_length.textChanged.connect( function() {lengthSlider.setValue(minimum_circular_length.text);} ); minimal_longitudinal_length.textChanged.connect( function() {minloglenSlider.setValue(minimal_longitudinal_length.text);} ); maximum_gradient.textChanged.connect( function() {gradientSlider.setValue(maximum_gradient.text);} ); maximum_slope_difference.textChanged.connect( function() {slopdiffSlider.setValue(maximum_slope_difference.text);} ); minimum_radius_of_convex_vertical_curve.textChanged.connect( function() {convexSlider.setValue(minimum_radius_of_convex_vertical_curve.text);} ); minimum_radius_of_concave_vertical_curve.textChanged.connect( function() {concaveSlider.setValue(minimum_radius_of_concave_vertical_curve.text);} ); minimum_transition_curve_length.textChanged.connect( function() {transitionSlider.setValue(minimum_transition_curve_length.text);} ); minimum_clip_line_length.textChanged.connect( function() {clipSlider.setValue(minimum_clip_line_length.text);} ); minimum_length_of_vertical_curve.textChanged.connect( function() {verticalCurveSlider.setValue(minimum_length_of_vertical_curve.text);} ); speed.setText(iniConf["speed"]); minimum_curve_radius.setText(iniConf["minimum_curve_radius"]); minimum_circular_length.setText(iniConf["minimum_circular_length"]); minimal_longitudinal_length.setText(iniConf["minimal_longitudinal_length"]); maximum_gradient.setText(iniConf["maximum_gradient"]); maximum_slope_difference.setText(iniConf["maximum_slope_difference"]); minimum_radius_of_convex_vertical_curve.setText(iniConf["minimum_radius_of_convex_vertical_curve"]); minimum_radius_of_concave_vertical_curve.setText(iniConf["minimum_radius_of_concave_vertical_curve"]); minimum_transition_curve_length.setText(iniConf["minimum_transition_curve_length"]); minimum_clip_line_length.setText(iniConf["minimum_clip_line_length"]); minimum_length_of_vertical_curve.setText(iniConf["minimum_length_of_vertical_curve"]); // 权重 var hCostSlider = this.dialog.findChild("hCostSlider"); var hEcologySlider = this.dialog.findChild("hEcologySlider"); var vCostSlider = this.dialog.findChild("vCostSlider"); hCostSlider.setValue(iniConf["hCostSlider"]); hEcologySlider.setValue(iniConf["hEcologySlider"]); vCostSlider.setValue(iniConf["vCostSlider"]); }; SetArguments.prototype.readSpeedCfg = function(){ // EAction.handleUserMessage(this.iniFile.value("/" + this.standard_type[0] + "/design_speed").replace(/(\s*)+/g,"").replace(/#(\S*)/,"")); // return this.getStandardInfo(this.standard_type[0]); return this.getStandardInfo(this.select_type); }; SetArguments.prototype.setSpeedBox = function(iniConf){ // var design_speed = this.dialog.findChild("comboBox"); var minimum_curve_radius = this.dialog.findChild("minimum_curve_radius"); var minimum_circular_length = this.dialog.findChild("minimum_circular_length"); var minimal_longitudinal_length = this.dialog.findChild("minimal_longitudinal_length"); var maximum_gradient = this.dialog.findChild("maximum_gradient"); var maximum_slope_difference = this.dialog.findChild("maximum_slope_difference"); // var maximum_bridge_height = this.dialog.findChild("maximum_bridge_height"); // var maximum_tunnel_length = this.dialog.findChild("maximum_tunnel_length"); // var filling_height_lbb = this.dialog.findChild("filling_height_lbb"); // var digging_deep_ltb = this.dialog.findChild("digging_deep_ltb"); var minimum_transition_curve_length = this.dialog.findChild("minimum_transition_curve_length"); var minimum_clip_line_length = this.dialog.findChild("minimum_clip_line_length"); var minimum_radius_of_convex_vertical_curve = this.dialog.findChild("minimum_radius_of_convex_vertical_curve"); var minimum_radius_of_concave_vertical_curve = this.dialog.findChild("minimum_radius_of_concave_vertical_curve"); var minimum_length_of_vertical_curve = this.dialog.findChild("minimum_length_of_vertical_curve"); // var horizontal_containing_vertical = this.dialog.findChild("horizontal_containing_vertical"); // for(var i = 1; i < this.standard_type.length; i += 2){ // design_speed.addItem(this.standard_type[i]); // } // design_speed["currentIndexChanged(int)"].connect(this, this.selectSpeed); // design_speed.setText(iniConf["design_speed"]); minimum_curve_radius.setText(iniConf["minimum_curve_radius"]); minimum_circular_length.setText(iniConf["minimum_circular_length"]); minimal_longitudinal_length.setText(iniConf["minimal_longitudinal_length"]); maximum_gradient.setText(iniConf["maximum_gradient"]); maximum_slope_difference.setText(iniConf["maximum_slope_difference"]); // maximum_bridge_height.setText(iniConf["maximum_bridge_height"]); // maximum_tunnel_length.setText(iniConf["maximum_tunnel_length"]); // filling_height_lbb.setText(iniConf["filling_height_lbb"]); // digging_deep_ltb.setText(iniConf["digging_deep_ltb"]); minimum_transition_curve_length.setText(iniConf["minimum_transition_curve_length"]); minimum_clip_line_length.setText(iniConf["minimum_clip_line_length"]); minimum_radius_of_convex_vertical_curve.setText(iniConf["minimum_radius_of_convex_vertical_curve"]); minimum_radius_of_concave_vertical_curve.setText(iniConf["minimum_radius_of_concave_vertical_curve"]); minimum_length_of_vertical_curve.setText(iniConf["minimum_length_of_vertical_curve"]); // if("1" == iniConf["horizontal_containing_vertical"]) // { // horizontal_containing_vertical.setChecked(true); // } // else // { // horizontal_containing_vertical.setChecked(false); // } }; SetArguments.prototype.getStandardInfo = function(childName){ var speedInfo = []; speedInfo["design_speed"] = this.iniFile.value("/" + childName + "/design_speed").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_curve_radius"] = this.iniFile.value("/" + childName + "/minimum_curve_radius").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_circular_length"] = this.iniFile.value("/" + childName + "/minimum_circular_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimal_longitudinal_length"] = this.iniFile.value("/" + childName + "/minimal_longitudinal_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["maximum_gradient"] = this.iniFile.value("/" + childName + "/maximum_gradient").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["maximum_slope_difference"] = this.iniFile.value("/" + childName + "/maximum_slope_difference").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["maximum_bridge_height"] = this.iniFile.value("/" + childName + "/maximum_bridge_height").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["maximum_tunnel_length"] = this.iniFile.value("/" + childName + "/maximum_tunnel_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["filling_height_lbb"] = this.iniFile.value("/" + childName + "/filling_height_lbb").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["digging_deep_ltb"] = this.iniFile.value("/" + childName + "/digging_deep_ltb").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_transition_curve_length"] = this.iniFile.value("/" + childName + "/minimum_transition_curve_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_clip_line_length"] = this.iniFile.value("/" + childName + "/minimum_clip_line_length").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_radius_of_convex_vertical_curve"] = this.iniFile.value("/" + childName + "/minimum_radius_of_convex_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_radius_of_concave_vertical_curve"] = this.iniFile.value("/" + childName + "/minimum_radius_of_concave_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["minimum_length_of_vertical_curve"] = this.iniFile.value("/" + childName + "/minimum_length_of_vertical_curve").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); speedInfo["horizontal_containing_vertical"] = this.iniFile.value("/" + childName + "/horizontal_containing_vertical").replace(/(\s*)+/g,"").replace(/#(\S*)/,""); return speedInfo; };