https://grasswiki.osgeo.org/w/api.php?action=feedcontributions&user=Bob-premky&feedformat=atomGRASS-Wiki - User contributions [en]2021-12-01T04:17:54ZUser contributionsMediaWiki 1.27.1https://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18841Turns in the vector network analysis2013-06-03T18:01:47Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
[[Image:Line_graph.png|center|600px|thumb]]<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
==WxGUI Vector Network Analysis Tool==<br />
<br />
In GUI for v.net modules there is the checkbox option to “use turns”. If checked, it is required to fill these additional parameters: tlayer (layer with turntable), tuclayer (layer with unique categories for turntable). The dialog is shown below.<br />
<br />
[[Image:Params_ttb.png|center|600px|thumb]]<br />
<br />
It is possible to predefine costs for default or custom angle intervals in the Global settings dialog as shown in picture below. <br />
<br />
[[Image:Global_ttb.png|center|400px|thumb]]<br />
<br />
The angle, however, is only the simple one between two straight lines (from previous intersection to current node and from current intersection to the next one ignoring any original shorter polyline segments).<br />
After the turntable is created, it is possible to customize costs explicitly for any specific turn on any given intersection (node) via the Local settings dialog.<br />
<br />
[[Image:Local_ttb.png|center|600px|thumb]]<br />
<br />
==Further Reading==<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=File:Line_graph.png&diff=18840File:Line graph.png2013-06-03T18:01:02Z<p>Bob-premky: Author: Stephan Winter (winter@geoinfo.tuwien.ac.at)</p>
<hr />
<div>Author: Stephan Winter (winter@geoinfo.tuwien.ac.at)</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18823Turns in the vector network analysis2013-06-02T17:41:17Z<p>Bob-premky: /* WxGUI Vector Network Analysis Tool */</p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
==WxGUI Vector Network Analysis Tool==<br />
<br />
In GUI for v.net modules there is the checkbox option to “use turns”. If checked, it is required to fill these additional parameters: tlayer (layer with turntable), tuclayer (layer with unique categories for turntable). The dialog is shown below.<br />
<br />
[[Image:Params_ttb.png|center|600px|thumb]]<br />
<br />
It is possible to predefine costs for default or custom angle intervals in the Global settings dialog as shown in picture below. <br />
<br />
[[Image:Global_ttb.png|center|400px|thumb]]<br />
<br />
The angle, however, is only the simple one between two straight lines (from previous intersection to current node and from current intersection to the next one ignoring any original shorter polyline segments).<br />
After the turntable is created, it is possible to customize costs explicitly for any specific turn on any given intersection (node) via the Local settings dialog.<br />
<br />
[[Image:Local_ttb.png|center|600px|thumb]]<br />
<br />
==Further Reading==<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18822Turns in the vector network analysis2013-06-02T17:40:51Z<p>Bob-premky: /* WxGUI Vector Network Analysis Tool */</p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
==WxGUI Vector Network Analysis Tool==<br />
<br />
In GUI for v.net modules there is the checkbox option to “use turns”. If checked, it is required to fill these additional parameters: tlayer (layer with turntable), tuclayer (layer with unique categories for turntable). The dialog is shown below.<br />
<br />
[[Image:Params_ttb.png|center|600px|thumb]]<br />
<br />
It is possible to predefine costs for default or custom angle intervals in the Global settings dialog as shown in picture below. <br />
<br />
[[Image:Global_ttb.png|center|600px|thumb]]<br />
<br />
The angle, however, is only the simple one between two straight lines (from previous intersection to current node and from current intersection to the next one ignoring any original shorter polyline segments).<br />
After the turntable is created, it is possible to customize costs explicitly for any specific turn on any given intersection (node) via the Local settings dialog.<br />
<br />
[[Image:Local_ttb.png|center|600px|thumb]]<br />
<br />
==Further Reading==<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=File:Global_ttb.png&diff=18821File:Global ttb.png2013-06-02T17:40:39Z<p>Bob-premky: </p>
<hr />
<div></div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18820Turns in the vector network analysis2013-06-02T17:38:58Z<p>Bob-premky: /* WxGUI Vector Network Analysis Tool */</p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
==WxGUI Vector Network Analysis Tool==<br />
<br />
In GUI for v.net modules there is the checkbox option to “use turns”. If checked, it is required to fill these additional parameters: tlayer (layer with turntable), tuclayer (layer with unique categories for turntable). The dialog is shown below.<br />
<br />
[[Image:Params_ttb.png|center|600px|thumb]]<br />
<br />
It is possible to predefine costs for default or custom angle intervals in the Global settings dialog as shown in picture below. <br />
<br />
<br />
<br />
The angle, however, is only the simple one between two straight lines (from previous intersection to current node and from current intersection to the next one ignoring any original shorter polyline segments).<br />
After the turntable is created, it is possible to customize costs explicitly for any specific turn on any given intersection (node) via the Local settings dialog.<br />
<br />
[[Image:Local_ttb.png|center|600px|thumb]]<br />
<br />
==Further Reading==<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=File:Local_ttb.png&diff=18819File:Local ttb.png2013-06-02T17:38:42Z<p>Bob-premky: </p>
<hr />
<div></div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18818Turns in the vector network analysis2013-06-02T17:37:06Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
==WxGUI Vector Network Analysis Tool==<br />
<br />
In GUI for v.net modules there is the checkbox option to “use turns”. If checked, it is required to fill these additional parameters: tlayer (layer with turntable), tuclayer (layer with unique categories for turntable). The dialog is shown below.<br />
<br />
[[Image:Params_ttb.png|center|600px|thumb]]<br />
<br />
It is possible to predefine costs for default or custom angle intervals in the Global settings dialog as shown in picture below. <br />
<br />
<br />
<br />
The angle, however, is only the simple one between two straight lines (from previous intersection to current node and from current intersection to the next one ignoring any original shorter polyline segments).<br />
After the turntable is created, it is possible to customize costs explicitly for any specific turn on any given intersection (node) via the Local settings dialog.<br />
<br />
<br />
<br />
<br />
<br />
==Further Reading==<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=File:Params_ttb.png&diff=18817File:Params ttb.png2013-06-02T17:36:35Z<p>Bob-premky: </p>
<hr />
<div></div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18816Turns in the vector network analysis2013-06-02T17:34:07Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18815Turns in the vector network analysis2013-06-02T17:33:24Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
==Turntable description (the table itself)==<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18814Turns in the vector network analysis2013-06-02T17:31:07Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
'''Columns description:'''<br />
<br />
* '''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
* '''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
* '''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
* '''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
* '''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
* '''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18813Turns in the vector network analysis2013-06-02T17:29:53Z<p>Bob-premky: </p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
Columns description:<br />
<br />
'''cat''' – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
'''ln_from''' – unique category in tucats layer assigned to the line<br />
<br />
'''ln_to''' – unique category in tucats layer assigned to the line<br />
<br />
'''cost''' – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
'''isec''' – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
'''angle''' – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
== Specific parameters ==<br />
<br />
* '''alayer''' - Name or number of the arc layer that will be expanded by turntable.<br />
<br />
* '''nlayer''' - Name or number of the node (points) layer, which will be copied into output layer. By default all points are copied.<br />
<br />
* '''tlayer''' - Name or number of the layer to which the turntable will be attached.<br />
<br />
* '''tuclayer''' - Name or number of the layer with unique categories for every line and point. The points are placed on every node.<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18812Vector network analysis2013-06-02T17:26:47Z<p>Bob-premky: /* Common parameters */</p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Common parameters ==<br />
<br />
* '''input''' - This is the name of input vector map or data source for direct OGR access.<br />
<br />
* '''output''' - This is the name for output vector map.<br />
<br />
* '''type''' - This parameter defines arc type, which can be line or boundary.<br />
<br />
* '''alayer''' - This parameter is a number and defines the arc layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* '''nlayer''' - This parameter is a number and defines the node layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* '''afcolumn''' - This is the number of the cost column for moving in forward direction or forward and backward directions together.<br />
<br />
* '''abcolumn''' - This is the number of the cost column for moving in backward direction.<br />
<br />
* '''ncolumn''' - This is the number of the cost column for moving through nodes.<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18811Vector network analysis2013-06-02T17:26:11Z<p>Bob-premky: /* Common parameters */</p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Common parameters ==<br />
<br />
* '''input''' - This is the name of input vector map or data source for direct OGR access.<br />
<br />
* output - This is the name for output vector map.<br />
<br />
* type - This parameter defines arc type, which can be line or boundary.<br />
<br />
* alayer - This parameter is a number and defines the arc layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* nlayer - This parameter is a number and defines the node layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* afcolumn - This is the number of the cost column for moving in forward direction or forward and backward directions together.<br />
<br />
* abcolumn - This is the number of the cost column for moving in backward direction.<br />
<br />
* ncolumn - This is the number of the cost column for moving through nodes.<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18810Vector network analysis2013-06-02T17:25:08Z<p>Bob-premky: /* Common parameters */</p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Common parameters ==<br />
<br />
* input - This is the name of input vector map or data source for direct OGR access.<br />
<br />
* output - This is the name for output vector map.<br />
<br />
* type - This parameter defines arc type, which can be line or boundary.<br />
<br />
* alayer - This parameter is a number and defines the arc layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* nlayer - This parameter is a number and defines the node layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* afcolumn - This is the number of the cost column for moving in forward direction or forward and backward directions together.<br />
<br />
* abcolumn - This is the number of the cost column for moving in backward direction.<br />
<br />
* ncolumn - This is the number of the cost column for moving through nodes.<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18809Vector network analysis2013-06-02T17:24:11Z<p>Bob-premky: </p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Common parameters ==<br />
<br />
* input - <br />
This is the name of input vector map or data source for direct OGR access.<br />
<br />
* output - <br />
This is the name for output vector map.<br />
<br />
* type - <br />
This parameter defines arc type, which can be line or boundary.<br />
<br />
* alayer - <br />
This parameter is a number and defines the arc layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* nlayer - <br />
This parameter is a number and defines the node layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
* afcolumn - <br />
This is the number of the cost column for moving in forward direction or forward and backward directions together.<br />
<br />
* abcolumn - <br />
This is the number of the cost column for moving in backward direction.<br />
<br />
* ncolumn - <br />
This is the number of the cost column for moving through nodes.<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18808Vector network analysis2013-06-02T17:22:56Z<p>Bob-premky: </p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Common parameters ==<br />
<br />
input <br />
This is the name of input vector map or data source for direct OGR access.<br />
<br />
output <br />
This is the name for output vector map.<br />
<br />
type <br />
This parameter defines arc type, which can be line or boundary.<br />
<br />
alayer <br />
This parameter is a number and defines the arc layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
nlayer <br />
This parameter is a number and defines the node layer. Vector features can have category values in different layers. This number determines which layer to use. When used with direct OGR access this is the layer name.<br />
<br />
afcolumn <br />
This is the number of the cost column for moving in forward direction or forward and backward directions together.<br />
<br />
abcolumn <br />
This is the number of the cost column for moving in backward direction.<br />
<br />
ncolumn <br />
This is the number of the cost column for moving through nodes.<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18807Turns in the vector network analysis2013-06-02T17:20:37Z<p>Bob-premky: /* Turntable description (the table itself) */</p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
Columns description:<br />
<br />
cat – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
ln_from – unique category in tucats layer assigned to the line<br />
<br />
ln_to – unique category in tucats layer assigned to the line<br />
<br />
cost – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
isec – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
angle – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
Every possible turn on any possible intersection is represented by unique record (line).<br />
In the picture above you can see the turntable and part of vector layer with highlighted turn from the line with unique category 289 through the node (intersection) 561 to the line with unique category 234. In other words the given subject travels from intersection 564 through intersection 561 to intersection 527.<br />
<br />
Arrows show orientation of each line. Note that in case of the line 289 the subject travels in BACKWARDS direction and therefore the In_from value is NEGATIVE (-289) while in case of the line 234 the travelling is in FORWARD direction, so the In_from value is POSITIVE (234).<br />
The category of this turn can be seen in the cat column and the value is 1817 (this kind of category is stored in tlayer). This category value belongs only to the lines with unique category values 234 and 289 (stored in tuclayer).<br />
<br />
In the angle column for this record the value is -1.373597 radians which is roughly -80°. This perfectly makes sense since left turns have negative values and right turns have positive. The angle is measured as deviance from straight direction (which is 0°).<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18806Turns in the vector network analysis2013-06-02T17:19:46Z<p>Bob-premky: /* Turntable description (the table itself) */</p>
<hr />
<div><br />
== Headline text ==<br />
{{ToModify}}<br />
<br />
The turntable module ('''v.net.turntable''') is one of [[vector network analysis]] modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Every record in the turntable represents one turn.<br />
<br />
Columns description:<br />
<br />
cat – category in tlayer (layer with turntable), which corresponds to both lines in turn<br />
<br />
ln_from – unique category in tucats layer assigned to the line<br />
<br />
ln_to – unique category in tucats layer assigned to the line<br />
<br />
cost – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
isec – point category in tucats layer, which represents the intersection, where the turn belongs<br />
<br />
angle – angle between the lines before and after the intersection (radians)<br />
<br />
[[Image:Turntable.png|center|600px|thumb]]<br />
<br />
===Further Reading===<br />
<br />
[ftp://ftp.geoinfo.tuwien.ac.at/winter/winter02modeling.pdf Modeling Costs of Turns in Route Planning]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]<br />
[[Category:Network Analysis]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=File:Turntable.png&diff=18805File:Turntable.png2013-06-02T17:17:54Z<p>Bob-premky: </p>
<hr />
<div></div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18758Turns in the vector network analysis2013-05-28T18:47:07Z<p>Bob-premky: /* Turntable description (the table itself) */</p>
<hr />
<div>The turntable module (v.net.turntable) is one of vector network analysis modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Columns description:<br />
<br />
cat – category in tlayer (layer with turntable), which coresponds to both lines before and after the intersection<br />
<br />
ln_from – unique category in tucats layer assigned to the line<br />
<br />
ln_to – unique category in tucats layer assigned to the line<br />
<br />
cost – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
<br />
isec – point category in tucats layer, which represents the intersection, where the forward turn with intersections belongs into<br />
<br />
angle – angle between the lines before and after the intersection (radians)</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18757Turns in the vector network analysis2013-05-28T18:46:43Z<p>Bob-premky: </p>
<hr />
<div>The turntable module (v.net.turntable) is one of vector network analysis modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===<br />
<br />
Columns description:<br />
cat – category in tlayer (layer with turntable), which coresponds to both lines before and after the intersection<br />
ln_from – unique category in tucats layer assigned to the line<br />
ln_to – unique category in tucats layer assigned to the line<br />
cost – cost for turn in forward direction from ln_from to ln_to (integer or double)<br />
isec – point category in tucats layer, which represents the intersection, where the forward turn with intersections belongs into<br />
angle – angle between the lines before and after the intersection (radians)</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Turns_in_the_vector_network_analysis&diff=18756Turns in the vector network analysis2013-05-28T18:46:09Z<p>Bob-premky: Created page with "==The Turntable module== The turntable module (v.net.turntable) is one of vector network analysis modules. It creates a turntable with the costs for every possible turn on ev..."</p>
<hr />
<div>==The Turntable module==<br />
<br />
The turntable module (v.net.turntable) is one of vector network analysis modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
===Turntable description (the table itself)===</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18755Vector network analysis2013-05-28T18:43:21Z<p>Bob-premky: </p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Extensios ==<br />
<br />
The [[Turntable]] module (to be added to GRASS soon)<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18754Vector network analysis2013-05-28T18:41:44Z<p>Bob-premky: </p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Extensios ==<br />
<br />
The turntable module (v.net.turntable) is one of vector network analysis modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premkyhttps://grasswiki.osgeo.org/w/index.php?title=Vector_network_analysis&diff=18753Vector network analysis2013-05-28T18:39:49Z<p>Bob-premky: </p>
<hr />
<div>= Vector network analysis =<br />
<br />
GRASS provides support for vector network analysis using the [http://trac.osgeo.org/grass/browser/grass/trunk/lib/vector/dglib/ DGlib] Directed Graph Library.<br />
<br />
== Implemented algorithms ==<br />
<br />
The following algorithms are implemented (GRASS 6.5+):<br />
<br />
* Vector maintenance: {{cmd|v.net|version=70}}<br />
* Shortest path: {{cmd|d.path|version=64}} and {{cmd|v.net.path|version=70}}<br />
* Shortest path between all pairs of nodes {{cmd|v.net.allpairs|version=70}}<br />
* Allocation of sources (create subnetworks, e.g. police station zones): {{cmd|v.net.alloc|version=70}}<br />
* Iso-distances (from centers): {{cmd|v.net.iso|version=70}}<br />
* Computes bridges and articulation points: {{cmd|v.net.bridge|version=70}}<br />
* Computes degree, centrality, betweeness, closeness and eigenvector centrality measures: {{cmd|v.net.centrality|version=70}}<br />
* Computes strongly and weakly connected components: {{cmd|v.net.components|version=70}}<br />
* Computes vertex connectivity between two sets of nodes: {{cmd|v.net.connectivity|version=70}}<br />
* Computes shortest distance via the network between the given sets of features: {{cmd|v.net.distance|version=70}}<br />
* Computes the maximum flow between two sets of nodes: {{cmd|v.net.flow|version=70}}<br />
* Computes minimum spanning tree: {{cmd|v.net.spanningtree|version=70}}<br />
* Minimum Steiner trees (star-like connections, e.g. broadband cable connections): {{cmd|v.net.steiner|version=70}}<br />
* Finds shortest path using timetables: {{cmd|v.net.timetable|version=70}}<br />
* Traveling salesman (round trip): {{cmd|v.net.salesman|version=70}}<br />
<br />
Vector directions are defined by the digitizing direction (a-->--b). You can navigate either omnidirectionally or differently in each directions as both directions are supported. Network modules provide parameters to assign attribute columns to the forward and backward direction. To see how a vector is directed, use the "display" parameter of {{cmd|d.vect}} (set display=dir).<br />
<br />
* see the {{cmd|vectorintro}} "vector map processing and network analysis" help page<br />
<br />
== Example: Shortest path routing ==<br />
<br />
* see the {{cmd|v.net.path}} and {{cmd|d.path}} help pages<br />
<br />
== Turntable extension (to be added soon) ==<br />
<br />
The turntable module (v.net.turntable) is one of vector network analysis modules.<br />
It creates a turntable with the costs for every possible turn on every possible node (intersection, crossroad) in given layer. U-turns are taken in account too.<br />
<br />
For better handling, a linegraph is created. In this linegraph, every line is represented by two nodes. These nodes have positive and negative values respectively, with their absolute values identical. Every node corresponds to opposite line direction. The positive node matches the direction of line. The negative node matches the opposite direction. For better understanding, let's have a travelling subject standing on a line (road) before an intersection wanting to cross it. This line's direction is TOWARDS the intersection. Travelling from this line through the intersection means that the subject is currently standing on the POSITIVE node representation of the line. After crossing to this line from any permitted direction, the subject gets to the NEGATIVE point representation of the line.<br />
<br />
These two nodes (corresponding to the same line) are connected with two U-turns (for both directions). Every U-turn direction belongs to another intersection. U-turn from the POSITIVE node to the NEGATIVE one belongs to the intersection we are going to cross. The other U-turn belongs to the intersection at the opposite end of this line.<br />
<br />
== New ideas ==<br />
<br />
* [[Vector network analysis ideas]] (please help to realize)<br />
<br />
== Screenshots ==<br />
* more screenshots [http://grass.osgeo.org/screenshots/vector.php from the GRASS website]<br />
<br />
<br />
[[Image:V.net.iso.png|center|600px|thumb|{{cmd|v.net.iso}} - Split net to bands between cost isolines (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:V.net.alloc.png|center|600px|thumb|{{cmd|v.net.alloc}} - Allocates subnets for nearest centres (direction from centre). Costs of centre node are used in calculation.]]<br />
<br />
<br />
[[Image:D.path.jpg|center|600px|thumb|{{cmd|d.path}} - Find shortest path for selected starting and ending node.]]<br />
<br />
== See also ==<br />
<br />
* [[GSoC Network Analysis]]: many new modules!<br />
<br />
== Tutorials ==<br />
<br />
* [http://www.ing.unitn.it/~grass/docs/tutorial_64_en/htdocs/esercitazione/network_analysis/index.html Network analysis tutorial] by University of Trento, Italy<br />
<br />
<br />
== External links ==<br />
<br />
* [http://www.ossgis.co.cc/2009/01/grass-gis-network-analysis-subnets.html GRASS GIS: Network Analysis (Subnets within a vector network)]<br />
<br />
[[Category:Documentation]]<br />
[[Category:Vector]]</div>Bob-premky