Back to project page Mapyst.
The source code is released under:
Apache License
If you think the Android project Mapyst listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
/* * Copyright (C) 2013 Mapyst//from w ww.jav a2 s . c o m * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.mapyst.route; /* Class: Arc A one-way arc or edge of the graph, used to connect graph nodes. Also includes constants for terrains. Author: Brandon Kase Parameters: <E> - The type of graph node that this arc connects */ public class Arc<E> { private GraphNode<E> node; private int distance; private int terrain; public boolean export = true; public final class Terrains { public static final int LENGTH = 8; public static final int OUTSIDE = 0; public static final int ELEVATOR = 1; public static final int OUTSIDE_STAIRS = 2; public static final int INSIDE_STAIRS = 3; public static final int INSIDE = 4; public static final int CROWDED_INSIDE = 5; public static final int CROWDED_OUTSIDE = 6; public static final int STREET = 7; public static final int RESTRICTED_ACCESS = 8; public static final int RAMP = 9; public static final int INVISIBLE = 10; } /* * Constructor: Arc * * Parameters: node - The node this arc points towards distance - The * distance from the node the arc originates from towards the next node * terrain - The terrain between the node the arc originates from to the * next node */ public Arc(GraphNode<E> node, int distance, int terrain) { this.node = node; this.distance = distance; this.terrain = terrain; } /* * Function: setDistance Sets the distance of the arc * * Parameters: newDistance - The new distance of the arc to replace the * previous one * * Returns: The previous distance of the arc */ public int setDistance(int newDistance) { int temp = this.distance; this.distance = newDistance; return temp; } /* * Function: getDistance * * Returns: The distance of the arc */ public int getDistance() { return this.distance; } /* * Function: getTerrain * * Returns: The terrain of the arc */ public int getTerrain() { return this.terrain; } /* * Function: getConnectedNode * * Returns: The node this arc points towards */ public GraphNode<E> getConnectedNode() { return this.node; } /* * Function: toString * * Returns: A string representation of the arc. */ public String toString() { return "-(" + this.distance + ")->" + this.node.data; } }