calculates the angle between arcs where they flow together at a node.  JCTANGLE writes the results to an {out_item} in the node attribute table (NAT) of the input <cover>.




JCTANGLE <cover> {out_item} {back_vertices}




<cover> - the input coverage.


This coverage must have an AAT.  However, if it doesn't have a NAT, that will be built.


{out_item} - the output item for junction angle.


Default is JCTANGLE.  It is DEFINEd as 4,4,B.  It is written in the <cover>.NAT.  It can not be the name of an existing item in the NAT.


The junction angles will range from 0 to 180, in degrees.  Nodes at which junction angles are not calculated receive a null angle of 0.  (See DISCUSSION section.)


{back_vertices} - the number of vertices back from each node at which to perform the calculation of angle.


Default is 3.  (See DISCUSSION section.)





- JCTANGLE runs from the ARCPLOT module of ARC/INFO, ver. 7.0.3.


- JCTANGLE can be run from the command line or from a menu.  When the global variable: .R6MODE is set to MENU, then running JCTANGLE will popup a menu, unless all the required arguments are provided.


- JCTANGLE only calculates the junction angle for nodes that connect to 3 arcs, 2 incoming and 1 outgoing.  The angle is calculated between the 2 incoming arcs.




CALCULATING JUNCTION ANGLE - First each node is checked to determine if it has two incoming arcs and one outgoing arc.  If so, then the junction angle is calculated between the two incoming arcs.


VALID NODES - only for those nodes that connect to 3 arcs, 2 incoming and 1 outgoing, will junction angle be calculated.  Incoming arcs connect to the node at their to-nodes, as apposed to their from-nodes.

ANGLE CALCULATION - the junction angle is calculated between the 2 incoming arcs.  The angle is that between the lines drawn from the node and the nth vertices on each arc (back from the node), where n is {back_vertices}.  In the example below, 'v1' and 'v2' are the first and second vertices back on each incoming arc from the node, represented by 'o'.



\      /

v1  angle

\  /






In other words, when {back_vertices} is equal to 2, then the junction angle is the angle between the two lines drawn from the 'o' node to the 'v2' vertices on each incoming arc.


When {back_vertices} exceeds the number of vertices in an arc, then the from-node for this arc is used instead.


Junction angle is expressed in degrees, and ranges from 0 to 180.  Nodes that are NOT VALID receive a null value of 0.


PREPERATION FOR JCTANGLE - It may be desirable to flip the arcs in the input <cover> before running JCTANGLE.


In the case of stream data it makes sense to have all arcs flowing (from-node to to-node) downstream before running JCTANGLE.  One such tool which does this is FLIPARCS.  FLIPARCS can also be RIS'ed from R06B :STAFF:IR:ARC:LIBRARY:FLIPARCS.TAR.