📄 qsd.java
字号:
package net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.colligate;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.ReadAdder;
import java.io.File;
import org.w3c.dom.Node;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.txt.ItemUse;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.txt.lx;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.gpsdata.lxld.lx.
LXNodeManager;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.gpsdata.lxld.lx.
FillLXBianma;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.gpsdata.lxld.
LXRecord;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.gpsdata.lxld.lx.
TwoNode;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.gpsdata.lxld.lx.
LXBEPoint;
import net.aetherial.gis.surface.ItemValue;
import java.util.Enumeration;
import java.util.Vector;
import java.text.DecimalFormat;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.txt.*;
import jxl.Cell;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.
ReadQiaoLiang;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.Property;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.
ReadXiangzhen;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.SheetItem;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.ReadSuiDao;
import net.aetherial.gis.jiaotongbu.outputJTB.txtOutput.module.excel.ReadDuKou;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2004</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class QSD {
protected ReadAdder adder = null;
// private LXNodeManager manager = null;
protected String Q = "";
protected String S = "";
protected String D = "";
protected String qlxx = "";
protected String sdxx = "";
protected String dkxx = "";
protected ReadQiaoLiang QLReader = null;
protected ReadSuiDao SDReader = null;
protected ReadDuKou DKReader = null;
protected static String[] number = new String[] {
"",
"一", "二", "三", "四", "五", "六", "七", "八", "九",
"十", "十一", "十二", "十三", "十四", "十五", "十六", "十七", "十八", "十九",
"二十", "二十一", "二十二", "二十三", "二十四", "二十五", "二十六", "二十七", "二十八", "二十九",
"三十", "三十一", "三十二", "三十三", "三十四", "三十五", "三十六", "三十七", "三十八", "三十九",
"四十", "四十一", "四十二", "四十三", "四十四", "四十五", "四十六", "四十七", "四十八", "四十九",
"五十", "五十一", "五十二", "五十三", "五十四", "五十五", "五十六", "五十七", "五十八", "五十九",
"六十", "六十一", "六十二", "六十三", "六十四", "六十五", "六十六", "六十七", "六十八", "六十九",
"七十", "七十一", "七十二", "七十三", "七十四", "七十五", "七十六", "七十七", "七十八", "七十九",
"八十", "八十一", "八十二", "八十三", "八十四", "八十五", "八十六", "八十七", "八十八", "八十九",
"九十", "九十一", "九十二", "九十三", "九十四", "九十五", "九十六", "九十七", "九十八", "九十九",
"一百"
};
public QSD() {
// manager = new LXNodeManager();
}
public void setAdder(ReadAdder adder) {
this.adder = adder;
}
public void setSdxx(String sdxx) {
this.sdxx = sdxx;
}
public void setQlxx(String qlxx) {
this.qlxx = qlxx;
}
public void setDkxx(String dkxx) {
this.dkxx = dkxx;
}
public void getGPSLXData() {
System.out.println("开始生成桥梁、隧道、渡口信息...");
this.Q = this.Q + ql.getLXHeaderString() + "\r\n";
this.S = this.S + sd.getLXHeaderString() + "\r\n";
this.D = this.D + dk.getLXHeaderString() + "\r\n";
Enumeration keys = ItemValue.namedTracks.keys();
Vector qiaoLiang = new Vector();
Vector suiDao = new Vector();
Vector duKou = new Vector();
java.text.DecimalFormat formater = new DecimalFormat("000");
java.text.DecimalFormat zhuangHaoFormater = new DecimalFormat("#.###");
double changDu=0,zhuangHao = 0;
double dis = 0,length=0;
while (keys.hasMoreElements()) {
zhuangHao = 0;changDu=0;
String key = (String) keys.nextElement();
Vector nodes = (Vector) ItemValue.namedTracks.get(key);
int q, s, d, h;
q = s = d = h = 0;
for (int i = 0; nodes != null && i < nodes.size(); i++) {
h=0; zhuangHao = 0;
length = ItemValue.getTracksDistance((Node)nodes.get(i))/1000;
Node[] wpts = ItemValue.getTracksWaypoint( (Node) nodes.get(i));
dis = changDu + length;
for (int w = 0; wpts != null && w < wpts.length; w++) {
String type = ItemValue.getWaypointKP(wpts[w]);
zhuangHao = changDu + ItemValue.getDistanceWPTAtTrk(wpts[w],(Node)nodes.get(i));
if(zhuangHao < 0 ) zhuangHao = 0;
// zhuangHao = changDu + length/2;
if ("桥梁".equals(type)) {
System.out.print("发现桥梁: " + ItemValue.getWaypointName(wpts[w]));
String x = ItemValue.getWaypointX(wpts[w]);
String y = ItemValue.getWaypointY(wpts[w]);
ql qiao = new ql();
if (fillQLInfo(qlxx, qiao, x, y)) {
q++;
System.out.println(" 填写第" + q + "座桥梁信息");
qiao.setBianMa( (String) ItemValue.numberedTracks.get(key) +
getLuDuanBianHao( (Node) nodes.get(i)) + "L" +
formater.format(q) + "0");
qiao.setLuDuanBianMa( (String) ItemValue.numberedTracks.get(key) +
getLuDuanBianHao( (Node) nodes.get(i)));
qiao.setJinDu(x);
qiao.setWeiDu(y);
qiao.setBianHao("L" + formater.format(q) + "0");
qiao.setMingChen(key.replaceAll("\\[村道\\]","") + " " + number[q] + "桥");
qiao.setZhongXingZhuangHao(zhuangHaoFormater.format(zhuangHao));
if (adder != null) {
qiao.set0_4ColumnAdder(adder.getAdder());
qiao.set0_5ColumnAdderPhone(adder.getAdderPhone());
qiao.set0_6ColumnAsses(adder.getAsses());
qiao.set0_7ColumnAssesPhone(adder.getAssesPhone());
qiao.set0_8ColumnDept(adder.getDept());
qiao.set0_9ColumnDeptPrin(adder.getDeptPrin());
}
this.Q += qiao.toString() + "\r\n";
}
else {
System.out.println(" 没有发现桥梁信息, 跳过");
}
}
if ("隧道".equals(type)) {
System.out.print("发现隧道: " + ItemValue.getWaypointName(wpts[w]));
String x = ItemValue.getWaypointX(wpts[w]);
String y = ItemValue.getWaypointY(wpts[w]);
sd sui = new sd();
if (fillSDInfo(sdxx, sui, x, y)) {
s++;
System.out.println(" 填写第" + s + "座隧道信息");
sui.setBianMa( (String) ItemValue.numberedTracks.get(key) +
getLuDuanBianHao( (Node) nodes.get(i)) + "U" +
formater.format(s) + "0");
sui.setLuDuanBianMa( (String) ItemValue.numberedTracks.get(key) +
getLuDuanBianHao( (Node) nodes.get(i)));
sui.setJinDu(x);
sui.setWeiDu(y);
sui.setBianHao("U" + formater.format(s) + "0");
sui.setMingChen(key.replaceAll("\\[村道\\]","") + " " + number[s] + "隧");
sui.setQiDianZhuangHao(zhuangHaoFormater.format(zhuangHao));
if (adder != null) {
sui.set0_4ColumnAdder(adder.getAdder());
sui.set0_5ColumnAdderPhone(adder.getAdderPhone());
sui.set0_6ColumnAsses(adder.getAsses());
sui.set0_7ColumnAssesPhone(adder.getAssesPhone());
sui.set0_8ColumnDept(adder.getDept());
sui.set0_9ColumnDeptPrin(adder.getDeptPrin());
}
this.S += sui.toString() + "\r\n";
}
else {
h++;
System.out.println(" 没有发现隧道信息, 跳过");
}
;
}
if ("渡口".equals(type)) {
System.out.print("发现渡口: " + ItemValue.getWaypointName(wpts[w]));
String x = ItemValue.getWaypointX(wpts[w]);
String y = ItemValue.getWaypointY(wpts[w]);
dk du = new dk();
if (fillDKInfo(dkxx, du, x, y)) {
d++;
System.out.println(" 填写第" + d + "座渡口信息");
du.setBianMa( (String) ItemValue.numberedTracks.get(key) +
getLuDuanBianHao( (Node) nodes.get(i)) + "D" +
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -