| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- include("scripts/EAction.js");
- include("scripts/simple.js");
- include("scripts/Common/DrawingUtils.js");
- include("scripts/Common/CsvToZdmConvert.js")
- include("scripts/Common/DrawZdmAll.js");
- /**
- * \ingroup ecma_misc_examples_ioexamples
- * \class ExTxtImport
- * This action reads an XML file and outputs information to stderr.
- * This can be used as starting point for XML importers.
- */
- function ZDMCsvImport(guiAction) {
- EAction.call(this, guiAction);
- // 绘图比例
- this.ratio = 10.0;
- }
- ZDMCsvImport.prototype = new EAction();
- ZDMCsvImport.includeBasePath = includeBasePath;
- ZDMCsvImport.prototype.beginEvent = function () {
- EAction.prototype.beginEvent.call(this);
- try {
- var appWin = EAction.getMainWindow();
- if (RSettings.getStringValue("OpenProject/Current", "") == "") {
- QMessageBox.critical(appWin, qsTr("提示"), qsTr("请先选择工程路径"));
- return;
- }
- var lastOpenFileDir = RSettings.getStringValue("OpenProject/Current", RSettings.getDocumentsLocation());
- var filterAll = qsTr("csv文件") + " (*.csv);"; //+ qsTr("All Files") + " (*)";
- var fileDialog = new QFileDialog(appWin, qsTr("请选择纵断面表格文件"), lastOpenFileDir, "");
- fileDialog.setNameFilters([filterAll]);
- fileDialog.selectNameFilter(filterAll);
- fileDialog.setOption(QFileDialog.DontUseNativeDialog, getDontUseNativeDialog());
- fileDialog.fileMode = QFileDialog.ExistingFiles;
- if (!fileDialog.exec()) {
- destr(fileDialog);
- EAction.activateMainWindow();
- this.terminate();
- return;
- }
- var files = fileDialog.selectedFiles();
- if (files.length === 0) {
- destr(fileDialog);
- EAction.activateMainWindow();
- this.terminate();
- return;
- }
- destr(fileDialog);
- EAction.activateMainWindow();
- var fileName = files[0];
- EAction.handleUserMessage("Starting to load file: " + fileName);
- this.convert(fileName);
- } catch (error) {
- EAction.handleUserMessage("ZDMCsvImport.js, ERROR: " + error.toString());
- }
- };
- ZDMCsvImport.prototype.convert = function (csvFile) {
- try {
- // CSV => ZDM
- var convert = new CsvToZdmConvert(csvFile);
- convert.convert();
- var zdmFile = convert.getZdmFileName();
- // 图层
- var layername = getLayername("CSV>ZDM", csvFile);
- // 绘制ZDM
- var drawZdmAll = new DrawZdmAll(this.ratio, false);
- var path = RSettings.getStringValue("OpenProject/Current", "");
- var dmxFile = path + "/诸城南-五莲北.DMX";
- var ctrFile = dmxFile.replace(/.\w+$/i, ".CTR");
- drawZdmAll.applyPainting(layername, dmxFile, zdmFile, ctrFile, false);
- if (true) {
- var tmp = RSettings.getStringValue("OpenDisplayFile/ZDMFile", "");
- RSettings.setValue("OpenDisplayFile/ZDMFile", tmp + "," + zdmFile);
- }
- } catch (error) {
- EAction.handleUserMessage("ZDMCsvImport.js, ERROR: " + error.toString());
- }
- return true;
- };
|