Package org.geotools.geometry.iso.topograph2D

Examples of org.geotools.geometry.iso.topograph2D.DirectedEdge


   * of dimensional collapses. They do not form part of the result area
   * boundary.
   */
  private void findResultAreaEdges(int opCode) {
    for (Iterator it = graph.getEdgeEnds().iterator(); it.hasNext();) {
      DirectedEdge de = (DirectedEdge) it.next();
      // mark all dirEdges with the appropriate label
      Label label = de.getLabel();
      if (label.isArea()
          && !de.isInteriorAreaEdge()
          && isResultOfOp(label.getLocation(0, Position.RIGHT), label
              .getLocation(1, Position.RIGHT), opCode)) {
        de.setInResult(true);
        // Debug.print("in result "); Debug.println(de);
      }
    }
  }
View Full Code Here


   */
  private void cancelDuplicateResultEdges() {
    // remove any dirEdges whose sym is also included
    // (they "cancel each other out")
    for (Iterator it = graph.getEdgeEnds().iterator(); it.hasNext();) {
      DirectedEdge de = (DirectedEdge) it.next();
      DirectedEdge sym = de.getSym();
      if (de.isInResult() && sym.isInResult()) {
        de.setInResult(false);
        sym.setInResult(false);
        // Debug.print("cancelled "); Debug.println(de);
        // Debug.println(sym);
      }
    }
  }
View Full Code Here

    /**
     * For all L edges which weren't handled by the above, use a
     * point-in-poly test to determine whether they are covered
     */
    for (Iterator it = op.getGraph().getEdgeEnds().iterator(); it.hasNext();) {
      DirectedEdge de = (DirectedEdge) it.next();
      Edge e = de.getEdge();
      if (de.isLineEdge() && !e.isCoveredSet()) {
        boolean isCovered = op.isCoveredByA(de.getCoordinate());
        e.setCovered(isCovered);
      }
    }
  }
View Full Code Here

    }
  }

  private void collectLines(int opCode) {
    for (Iterator it = op.getGraph().getEdgeEnds().iterator(); it.hasNext();) {
      DirectedEdge de = (DirectedEdge) it.next();
      collectLineEdge(de, opCode, lineEdgesList);
      collectBoundaryTouchEdge(de, opCode, lineEdgesList);
    }
  }
View Full Code Here

   * for all DirectedEdges in result, form them into MaximalEdgeRings
   */
  private List buildMaximalEdgeRings(Collection dirEdges) {
    List maxEdgeRings = new ArrayList();
    for (Iterator it = dirEdges.iterator(); it.hasNext();) {
      DirectedEdge de = (DirectedEdge) it.next();
      if (de.isInResult() && de.getLabel().isArea()) {
        // if this edge has not yet been processed
        if (de.getEdgeRing() == null) {
          MaximalEdgeRing er = new MaximalEdgeRing(de,
              crs, cga);
          maxEdgeRings.add(er);
          er.setInResult();
          // System.out.println("max node degree = " +
View Full Code Here

  /**
   * For all nodes in this EdgeRing, link the DirectedEdges at the node to
   * form minimalEdgeRings
   */
  public void linkDirectedEdgesForMinimalEdgeRings() {
    DirectedEdge de = startDe;
    do {
      Node node = de.getNode();
      ((DirectedEdgeStar) node.getEdges()).linkMinimalDirectedEdges(this);
      de = de.getNext();
    } while (de != startDe);
  }
View Full Code Here

    } while (de != startDe);
  }

  public List buildMinimalRings() {
    List minEdgeRings = new ArrayList();
    DirectedEdge de = startDe;
    do {
      if (de.getMinEdgeRing() == null) {
        EdgeRing minEr = new MinimalEdgeRing(de,
            super.crs, cga);
        minEdgeRings.add(minEr);
      }
      de = de.getNext();
    } while (de != startDe);
    return minEdgeRings;
  }
View Full Code Here

TOP

Related Classes of org.geotools.geometry.iso.topograph2D.DirectedEdge

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.