⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lianxubyconcatedtrack.java

📁 基于Java的地图数据管理软件。使用MySQL数据库管理系统。
💻 JAVA
字号:
package net.aetherial.gis.jiaotongbu.outputJTB.prepare.lianxu;

import org.w3c.dom.Node;
import java.util.Vector;
import java.util.Hashtable;
import java.util.Enumeration;
import net.aetherial.gis.surface.ItemValue;
import org.w3c.dom.NodeList;
import net.aetherial.gis.our.FrameOur;
import net.aetherial.gis.garmin.GarminGMLDoc;
import org.w3c.dom.Element;
import java.io.File;
import net.aetherial.gis.output.toLd.OpenDirectory;
import net.aetherial.gis.jiaotongbu.input.publicuse.ReFangxiang;
import net.aetherial.gis.jiaotongbu.input.jxl.ReadFangxiang;
import net.aetherial.gis.publicuse.track.ConcatenatedTrack;

/**
 * <p>标题: 农村公路数据采集与核对工具</p>
 *
 * <p>描述: </p>
 *
 * <p>版权: Copyright (c) 2006</p>
 *
 * <p>公司: 安徽省通途信息技术公司</p>
 *
 * @author 王爱国
 * @version 1.0
 */
public class LianxuByConcatedTrack {

  public LianxuByConcatedTrack() {
  }

  public void connectedConcatenatedTrack(Vector contrks) {

    ConcatenatedTrack temp = null,pre = null;
    for (int i = 0; i < contrks.size(); i++) {
      temp = ( (ConcatenatedTrack) contrks.get(i));
      if (pre != null) {
        this.connectedConcatenatedTrack(pre,temp);
      }else{
        this.connectedConcatenatedTrack(temp);
      }
      pre = temp;
    }
  }

  private void connectedConcatenatedTrack(ConcatenatedTrack conTrack) {
    Node[] trks = conTrack.getConcatenatedTrack();
    Node nextTrackFirstPoint = null;
    for (int i = 0; trks != null && i < trks.length; i++) {
      if (i + 1 < trks.length) {
        nextTrackFirstPoint = this.getFirstPoint(trks[i + 1]);
//        nl = ItemValue.getTracksPoint(trks[i + 1]);
        if (nextTrackFirstPoint != null) {
          System.out.println("*******************" + ItemValue.getTracksName(trks[i]));
          this.printTrackPoint(trks[i]);
          System.out.println("  FirstPoint:" + ItemValue.getTracksPointX(nextTrackFirstPoint));
          ItemValue.appendTracksPoint(trks[i], nextTrackFirstPoint);
          this.printTrackPoint(trks[i]);
          System.out.println("Next:");
          this.printTrackPoint(trks[i + 1]);
          System.out.println("*******************");
        }
      }
    }
  }

  private Node getFirstPoint(Node trks){
    NodeList nl = ItemValue.getTracksPoint(trks);
    if (nl == null) {
      return null;
    }else{
      return nl.item(1);
    }
  }
  private void printTrackPoint(Node trks){
    NodeList nl = ItemValue.getTracksPoint(trks);
    if (nl == null) {
      System.out.println("   **nl == null");
    }
    else {
      System.out.println("   **nl.length:" + nl.getLength());
      System.out.print("   X:");
      for (int i = 0; i < nl.getLength() && i <= 3; i++) {
        System.out.print(ItemValue.getTracksPointX(nl.item(i)) + ",");
      }
       System.out.print("...");
      for (int i = nl.getLength() -4 ; i < nl.getLength() && i >0; i++) {
        System.out.print(ItemValue.getTracksPointX(nl.item(i)) + ",");
      }
      System.out.println("");
    }

  }
  private void printTrackPointLength(Node trks){
    NodeList nl = ItemValue.getTracksPoint(trks);
    if (nl == null) {
      System.out.println("**nl == null");
    }
    else {
      System.out.println("**nl.length:" + nl.getLength());
      System.out.println("X:" + ItemValue.getTracksPointX(nl.item(nl.getLength() -1)));
    }
  }

  private void connectedConcatenatedTrack(ConcatenatedTrack preConTrack,
                                          ConcatenatedTrack currentTrack) {
//    this.connectedConcatenatedTrack(preConTrack);
    this.connectedConcatenatedTrack(currentTrack);

    Node fcon_lastTrack = preConTrack.getLastTrack();
    Node lcon_firstTrack = currentTrack.getFirstTrack();
    if (fcon_lastTrack != null && lcon_firstTrack != null) {
      NodeList nl = ItemValue.getTracksPoint(lcon_firstTrack);
      if (nl != null) {
        ItemValue.appendTracksPoint(fcon_lastTrack, nl.item(0));
      }
    }
  }



}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -