gitpan / map-tube-kazan Goto Github PK
View Code? Open in Web Editor NEWRead-only release history for Map-Tube-Kazan
Home Page: http://metacpan.org/release/Map-Tube-Kazan
License: Other
Read-only release history for Map-Tube-Kazan
Home Page: http://metacpan.org/release/Map-Tube-Kazan
License: Other
NAME Map::Tube::Kazan - Interface to the Kazan Metro Map. SYNOPSIS use Map::Tube::Kazan; my $obj = Map::Tube::Kazan->new; my $routes_ar = $obj->get_all_routes($from, $to); my $lines_ar = $obj->get_lines; my $station = $obj->get_node_by_id($station_id); my $station = $obj->get_node_by_name($station_name); my $route = $obj->get_shortest_route($from, $to); my $stations_ar = $obj->get_stations($line); my $metro_name = $obj->name; my $xml_file = $obj->xml; DESCRIPTION It currently provides functionality to find the shortest route between the two given nodes. For more information about Kazan Map, click here <https://en.wikipedia.org/wiki/Kazan_Metro>. METHODS "new()" Constructor. "get_all_routes($from, $to)" [EXPERIMENTAL] Get all routes from station to station. Returns reference to array with Map::Tube::Route objects. "get_lines()" Get lines in metro map. Returns reference to array with Map::Tube::Line objects. "get_node_by_id($station_id)" Get station node by id. Returns Map::Tube::Node object. "get_node_by_name($station_name)" Get station node by name. Returns Map::Tube::Node object. "get_shortest_route($from, $to)" Get shortest route between $from and $to node names. Node names in $from and $to are case insensitive. Returns Map::Tube::Route object. "get_stations($line)" Get list of stations for concrete metro line. Returns reference to array with Map::Tube::Node objects. "name()" Get metro name. Returns string with metro name. "xml()" Get XML specification of Kazan metro. Returns string with XML. EXAMPLE1 # Pragmas. use strict; use warnings; # Modules. use Encode qw(decode_utf8 encode_utf8); use Map::Tube::Kazan; # Object. my $obj = Map::Tube::Kazan->new; # Get route. my $route = $obj->get_shortest_route(decode_utf8('Яшьлек'), decode_utf8('Горки')); # Print out type. print "Route: ".encode_utf8($route)."\n"; # Output: # Route: Яшьлек (Центральная линия), Козья слобода (Центральная линия), Кремлёвская (Центральная линия), Площадь Габдуллы Тукая (Центральная линия), Суконная слобода (Центральная линия), Аметьево (Центральная линия), Горки (Центральная линия) EXAMPLE2 # Pragmas. use strict; use warnings; # Modules. use Map::Tube::Kazan; # Object. my $obj = Map::Tube::Kazan->new; # Get XML file. my $xml_file = $obj->xml; # Print out XML file. print "XML file: $xml_file\n"; # Output like: # XML file: .*/kazan-map.xml EXAMPLE3 # Pragmas. use strict; use warnings; # Modules. use Map::Tube::GraphViz; use Map::Tube::GraphViz::Utils qw(node_color_without_label); use Map::Tube::Kazan; # Object. my $obj = Map::Tube::Kazan->new; # GraphViz object. my $g = Map::Tube::GraphViz->new( 'callback_node' => \&node_color_without_label, 'driver' => 'neato', 'tube' => $obj, ); # Get graph to file. $g->graph('Kazan.png'); # Print file. system "ls -l Kazan.png"; # Output like: # -rw-r--r-- 1 skim skim 27046 Dec 25 18:23 Kazan.png DEPENDENCIES File::Share, Map::Tube, Moo, namespace::clean. SEE ALSO Map::Tube, Map::Tube::GraphViz, Map::Tube::Text::Table. Map::Tube::Barcelona, Map::Tube::Berlin, Map::Tube::Bucharest, Map::Tube::Delhi, Map::Tube::Dnipropetrovsk, Map::Tube::Kharkiv, Map::Tube::Kiev, Map::Tube::London, Map::Tube::Minsk, Map::Tube::Moscow, Map::Tube::Novosibirsk, Map::Tube::NYC, Map::Tube::Prague, Map::Tube::SaintPetersburg, Map::Tube::Samara, Map::Tube::Sofia, Map::Tube::Tbilisi, Map::Tube::Tokyo, Map::Tube::Vienna, Map::Tube::Warsaw, Map::Tube::Yekaterinburg. REPOSITORY <https://github.com/tupinek/Map-Tube-Kazan> AUTHOR Michal Špaček <mailto:[email protected]> <http://skim.cz> LICENSE AND COPYRIGHT © 2014 Michal Špaček Artistic License BSD 2-Clause License VERSION 0.02
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.