Package org.geotools.graph.structure

Examples of org.geotools.graph.structure.Graphable


        //throw all the features into the graph generator
        try {
            features.accepts( new FeatureVisitor(){
                public void visit( Feature feature ) {
                    Graphable added;
                    added = featureGen.add( feature );
                }          
            }, GeoToolsAdapters.progress( monitor ));
            return featureGen.getGraph();
        } catch (IOException e) {
View Full Code Here


    traversal.init();
    traversal.traverse();
   
    GraphVisitor visitor = new GraphVisitor() {
      public int visit(Graphable component) {
        Graphable parent = iterator.getParent(component);
        if (component.getID() < 50 && component.getID() > 0) {
          assertTrue(iterator.getCost(component) == (double)component.getID());
          assertTrue(parent.getID() == component.getID() - 1);
        }
        else if (component.getID() > 50 && component.getID() < 99) {
          assertTrue(
            iterator.getCost(component) == (double)100 - component.getID()
          );
          assertTrue(parent.getID() == component.getID() + 1);
        }
        else if (component.getID() == 0) {
          assertTrue(parent == null);
          assertTrue(iterator.getCost(component) == 0d)
        }
        else if (component.getID() == 99) {
          assertTrue(parent.getID() == 0);
          assertTrue(iterator.getCost(component) == 1d);
        }
       
        return(0);
      }
View Full Code Here

            return decorated;
        }

  public Graphable add( Object obj ) {
    SimpleFeature feature = (SimpleFeature) obj;
    Graphable g = decorated.add( feature.getDefaultGeometry() );
        Geometry geom = (Geometry) g.getObject();
        //Preserve geometry from Graphable, as it may be changed.
        feature.setDefaultGeometry(geom);
        g.setObject( feature );
    return g;
  }
View Full Code Here

   */
  public Path getPath(Graphable g) {
    Path p = new Path();
    p.add(g);
   
    Graphable parent = g;
    while((parent = m_iterator.getParent(parent)) != null) p.add(parent);
   
    if (!p.getLast().equals(m_iterator.getSource())) return(null);
   
    return(p);
View Full Code Here

     */
    private List query(Collection components, GraphVisitor visitor) {
      ArrayList result = new ArrayList();

      for (Iterator itr = components.iterator(); itr.hasNext();) {
        Graphable component = (Graphable) itr.next();

        switch(visitor.visit(component)) {
          case PASS_AND_CONTINUE:  
            result.add(component);
            continue;
View Full Code Here

   * </TABLE>
   *
   * @see GraphTraversal#traverse()
   */
  public void traverse() {
    Graphable current;
   
    //get next component from iterator, null means stop
O:  while((current = m_iterator.next(this)) != null) {
      setVisited(current, true);
     
View Full Code Here

   *
   * @see org.geotools.graph.traverse.GraphIterator#next()
   */
  public Graphable next(GraphTraversal traversal) {
    while(!m_active.isEmpty()) {
      Graphable next = (Graphable)m_active.deq();
      if (!traversal.isVisited(next)) return(next)
    }
    return(null);
  }
View Full Code Here

   *
   * @see org.geotools.graph.traverse.GraphIterator#cont(Graphable)
   */
  public void cont(Graphable current, GraphTraversal traversal) {
    for (Iterator itr = current.getRelated(); itr.hasNext();) {
      Graphable related = (Graphable)itr.next();
      if (!traversal.isVisited(related)) {
        m_active.enq(related)
      }     
    }
  }
View Full Code Here

TOP

Related Classes of org.geotools.graph.structure.Graphable

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.