org.matsim.api.core.v01.network.Node.getCoord()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(6.7k)|赞(0)|评价(0)|浏览(223)

本文整理了Java中org.matsim.api.core.v01.network.Node.getCoord()方法的一些代码示例,展示了Node.getCoord()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Node.getCoord()方法的具体详情如下:
包路径:org.matsim.api.core.v01.network.Node
类名称:Node
方法名:getCoord

Node.getCoord介绍

暂无

代码示例

代码示例来源:origin: matsim-org/matsim

  1. /**
  2. * Estimates the remaining travel cost from fromNode to toNode using the euclidean distance between them.
  3. *
  4. * @param fromNode The first node.
  5. * @param toNode The second node.
  6. * @return The travel cost when traveling between the two given nodes.
  7. */
  8. protected double estimateRemainingTravelCost(final Node fromNode, final Node toNode) {
  9. double dist = CoordUtils.calcEuclideanDistance(fromNode.getCoord(), toNode.getCoord()) * getMinTravelCostPerLength();
  10. return dist * this.overdoFactor;
  11. }

代码示例来源:origin: matsim-org/matsim

  1. @Override
  2. public Link createLink(Id<Link> id, Node fromNode, Node toNode) {
  3. return this.linkFactory.createLink(id, fromNode, toNode,
  4. this.network, CoordUtils.calcEuclideanDistance(fromNode.getCoord(), toNode.getCoord()), 1.0, 1.0, 1.0);
  5. }
  6. @Override

代码示例来源:origin: matsim-org/matsim

  1. ImaginaryNode(Collection<? extends InitialNode> initialNodes) {
  2. this.initialNodes = initialNodes;
  3. double sumX = 0.0;
  4. double sumY = 0.0;
  5. for (InitialNode initialNode : initialNodes) {
  6. sumX += initialNode.node.getCoord().getX();
  7. sumY += initialNode.node.getCoord().getY();
  8. }
  9. sumX /= initialNodes.size();
  10. sumY /= initialNodes.size();
  11. this.coord = new Coord(sumX, sumY);
  12. }

代码示例来源:origin: matsim-org/matsim

  1. private Set<Node> circularCut(Network network) {
  2. Set<Node> nodesToRemove = new HashSet<>();
  3. for (Node n : network.getNodes().values()) {
  4. Coord coord = n.getCoord();
  5. double distance = CoordUtils.calcEuclideanDistance(coord, center);
  6. if (distance > radius) {
  7. nodesToRemove.add(n);
  8. }
  9. }
  10. return nodesToRemove;
  11. }
  12. }

代码示例来源:origin: matsim-org/matsim

  1. private Set<Node> rectangularCut(Network network) {
  2. Set<Node> nodesToRemove = new HashSet<>();
  3. for (Node n : network.getNodes().values()) {
  4. Coord coord = n.getCoord();
  5. double x = coord.getX();
  6. double y = coord.getY();
  7. if (!((x < this.maxX) && (this.minX < x) && (y < this.maxY) && (this.minY < y))) {
  8. nodesToRemove.add(n);
  9. }
  10. }
  11. return nodesToRemove;
  12. }

代码示例来源:origin: matsim-org/matsim

  1. public static Map<Id<Node>, Zone> createNodeToZoneMap(Network network, ZoneFinder zoneFinder) {
  2. Map<Id<Node>, Zone> nodeToZone = new HashMap<>();
  3. for (Node n : network.getNodes().values()) {
  4. nodeToZone.put(n.getId(), zoneFinder.findZone(n.getCoord()));
  5. }
  6. return nodeToZone;
  7. }
  8. }

代码示例来源:origin: matsim-org/matsim

  1. /**
  2. *
  3. * @param l
  4. * @return {@code true} if the Link is not farther away than the
  5. * distance specified by the distance filter from the center node of the filter.
  6. */
  7. @Override
  8. public boolean judgeLink(Link l) {
  9. double dist = CoordUtils.calcEuclideanDistance(l.getCoord(), this.distanceFilterNode.getCoord());
  10. return dist < this.distanceFilter;
  11. }

代码示例来源:origin: matsim-org/matsim

  1. private SimpleFeature getFeature(Node node) {
  2. Point p = MGC.coord2Point(node.getCoord());
  3. try {
  4. return this.builder.buildFeature(null, new Object[]{p,node.getId().toString()});
  5. } catch (IllegalArgumentException e) {
  6. throw new RuntimeException(e);
  7. }
  8. }

代码示例来源:origin: matsim-org/matsim

  1. public static Map<Id<Link>, Zone> createLinkToZoneMap(Network network, ZoneFinder zoneFinder) {
  2. Map<Id<Link>, Zone> linkToZone = new HashMap<>();
  3. for (Link l : network.getLinks().values()) {
  4. linkToZone.put(l.getId(), zoneFinder.findZone(l.getToNode().getCoord()));
  5. }
  6. return linkToZone;
  7. }

代码示例来源:origin: matsim-org/matsim

  1. /**
  2. * Helper method for type conversion.
  3. *
  4. * @param link
  5. * @return
  6. */
  7. public static LineString createGeotoolsLineString(Link link) {
  8. Coordinate fromCoord = MGC.coord2Coordinate( link.getFromNode().getCoord() ) ;
  9. Coordinate toCoord = MGC.coord2Coordinate( link.getToNode().getCoord() ) ;
  10. LineString theSegment = new GeometryFactory().createLineString(new Coordinate[]{ fromCoord, toCoord });
  11. return theSegment;
  12. }

代码示例来源:origin: matsim-org/matsim

  1. private static Coord getVector(Link link){
  2. double x = link.getToNode().getCoord().getX() - link.getFromNode().getCoord().getX();
  3. double y = link.getToNode().getCoord().getY() - link.getFromNode().getCoord().getY();
  4. return new Coord(x, y);
  5. }

代码示例来源:origin: matsim-org/matsim

  1. @Override
  2. protected void setOrModifyNodeAttributes(Node n, OsmNode node) {
  3. if (this.elevationDataParser==null) return;
  4. Coord coord = n.getCoord();
  5. double elevation = elevationDataParser.getElevation(n.getCoord());
  6. Coord elevationCoord = CoordUtils.createCoord(coord.getX(), coord.getY(), elevation);
  7. n.setCoord(elevationCoord);
  8. }

代码示例来源:origin: matsim-org/matsim

  1. public static double getGradientFactor(Link link) {
  2. double gradient = 0.;
  3. Double fromNodeZ = link.getFromNode().getCoord().getZ();
  4. Double toNodeZ = link.getToNode().getCoord().getZ();
  5. if ((fromNodeZ != null) && (toNodeZ != null)) {
  6. if (toNodeZ > fromNodeZ) { // No positive utility for downhill, only negative for uphill
  7. gradient = (toNodeZ - fromNodeZ) / link.getLength();
  8. }
  9. }
  10. return gradient;
  11. }

代码示例来源:origin: matsim-org/matsim

  1. public SquareGridSystem(Network network, double cellSize) {
  2. this.grid = new SquareGrid(network, cellSize);
  3. for (Node n : network.getNodes().values()) {
  4. Zone zone = grid.getZone(n.getCoord());
  5. zones.put(zone.getId(), zone);
  6. }
  7. }

代码示例来源:origin: matsim-org/matsim

  1. private boolean linkToNodeInServiceArea(Link link) {
  2. Point p = factory.createPoint(MGC.coord2Coordinate(link.getToNode().getCoord()));
  3. if(this.include.contains(p)){
  4. if(exclude.contains(p)){
  5. return false;
  6. }
  7. return true;
  8. }
  9. return false;
  10. }

代码示例来源:origin: matsim-org/matsim

  1. private boolean linkToNodeInServiceArea(Link link) {
  2. Point p = factory.createPoint(MGC.coord2Coordinate(link.getToNode().getCoord()));
  3. if(this.include.contains(p)){
  4. if(exclude.contains(p)){
  5. return false;
  6. }
  7. return true;
  8. }
  9. return false;
  10. }

代码示例来源:origin: matsim-org/matsim

  1. @Override
  2. public Coord getCoord() {
  3. Coord fromXY = getFromNode().getCoord();
  4. Coord toXY = getToNode().getCoord();
  5. return new Coord((fromXY.getX() + toXY.getX()) / 2.0, (fromXY.getY() + toXY.getY()) / 2.0);
  6. }

代码示例来源:origin: matsim-org/matsim

  1. private Node addNode(Network net, Node n){
  2. Node newNode = net.getFactory().createNode(n.getId(), n.getCoord());
  3. net.addNode(newNode);
  4. return newNode;
  5. }

代码示例来源:origin: matsim-org/matsim

  1. private Network reshuffleNodesAndReturnNetwork(List<Node> nodes) {
  2. Network network = NetworkUtils.createNetwork();
  3. Collections.shuffle(nodes);
  4. for (Node n : nodes) {
  5. System.out.println("Adding node "+ n.getId());
  6. network.addNode(NetworkUtils.createNode(n.getId(), n.getCoord()));
  7. }
  8. return network;
  9. }

代码示例来源:origin: matsim-org/matsim

  1. @Test
  2. public void testNo3DCoord() {
  3. // should be done through once "mixed" network as soon as possible
  4. final Scenario sc = createTestNetwork( false );
  5. new NetworkWriter( sc.getNetwork() ).writeV2( utils.getOutputDirectory()+"network.xml" );
  6. final Scenario read = ScenarioUtils.createScenario( ConfigUtils.createConfig() );
  7. new MatsimNetworkReader( read.getNetwork() ).readFile( utils.getOutputDirectory()+"network.xml" );
  8. final Id<Node> zh = Id.createNodeId( "Zurich" );
  9. final Coord zhCoord = read.getNetwork().getNodes().get( zh ).getCoord();
  10. Assert.assertFalse( "did not expect Z",
  11. zhCoord.hasZ() );
  12. }

相关文章