English

How To: Create a Dynamic Segmentation demo No. 3

Procedure

A short recapitulation on our progress:
Dynamic Segmentation demo No. 1 demonstrated how to convert a single arc into a section and route and tie event databases to it.

Dynamic Segmentation demo No. 2 demonstrated how to convert partial arcs into sections and how to string several sections into one route. It also featured how different routes can overlap each other along a common arc.

Dynamic Segmentation demo No. 3 is intended to demonstrate how to loop the same route onto itself. In other words, the same arc occurs twice in a route. This can be accomplished by putting two sections on that arc.

See the following diagram:

----------------------------------------
| | | |
| | | |
| | | |
| | | |
| | | |
----------------------------------------
| |############| |
| |# #| |
| |# #| |
| |# #| |
| |# #| |
Start of route |#########################| |
--------------#-------------------------
| |########################## End of route.
| | | |
| | | |
| | | |
| | | |
----------------------------------------

Notice that this route consists of seven sections. Sections 2 and 6 fall on the same arc. Generate a 3x3 grid, clean it as a line cover, and assign unique user ids to the arcs.

arc60> cw demo3
w demo3
&term 9999
display 9999
generate c
grid
0,0
0,1
10,10
3,3
q
arc>clean c # # # line
info
ARC
SEL C.AAT
CALC C-ID = C#
Q STOP
idedit c line
list c.aat

Next, enter arcedit and define a route system called LOOP. Use the CREATEFEATURE ROUTE.LOOP followed by the ADD command to define the seven sections that make this route.

arcedit
editc c
de arc ids node section.loop measures route.loop arrows
draw
setdrawsym 11 2
createfeature route.loop
add

A submenu displays with 9 selections.
Concentrate on choices 1 and 4. make arc #11 the first section. Move the cursor to arc #11. Enter 1 to select it. It is highlighted in red. Enter 4 to add this section to the current route system.

Move the cursor over to arc #13. Enter 1 and 4 to add this to the route.

Keep selecting and adding in this manner. The complete route system should consist of 7 sections selected in the following order:

arc #11, arc #13, arc #12, arc #6, arc #10, arc#13, arc #15.

Enter 9 to quit.

|--------------------------|
| | | |
| | | |
| | | |
|--------|---6----|--------|
| | | |
| 10 12 |
| | | |
|---11---|---13---|---15---|
| | | |
| | | |
| | | |
|--------------------------|

Do not be concerned if some arrows are not pointing in the right direction. They can all be manually updated.

Specify the start point of this route and use the MAKEROUTE command to put these 7 sections into the route and add measures along sections using LENGTH as the measure item.

makeroute length *

Move the cursor to the beginning of arc #11 to specify the start point.

list

Switch to editfeature section and FLIP some sections so that they point in the right direction. Use the REMEASURE command to establish the proper f-meas and t-meas values.

The cell size in the grid is 10 x 10. This means that each of the seven sections has a LENGTH of 10 units. So logically, the route should begin at 0 and end at 70.

To summarize the data, see the following:

section # arc# f-meas to-meas
1 11 0 10
2 13 10 20
3 12 20 30
4 6 30 40
5 10 40 50
6 13 50 60
7 15 60 70

Lets see how we can achieve this.

createfeature section.loop
draw

Flip the section that falls on arc #10 to make it point in the right direction. Use the SELECT command to select it.

sel
flip
draw

The direction is now correct but the from and to measures are not. Use the remeasure command to establish the correct values.

remeasure 40 50
draw

The directions are correct of the two sections that fall on arc #13, however both sections show from and to measures of 10 and 20.
Select any one of them and set it to 50 and 60.

sel arclink# = 13
list

The two records displayed as selected. Reselect any one of them base on loop# or $recno.

res loop# = 12
remeasure 50 60
list

Run a remeasure to set the beginning and end points to 60 and 70 for the last section on arc #15.

sel
remeasure 60 70
sel all
list arclink# loop-id f-meas t-meas f-pos t-pos

The results should look like the following:

Record ARCLINK# LOOP-ID F-MEAS T-MEAS F-POS T-POS
8 6 6 30.000 40.000 100.000 0.000
10 11 11 0.000 10.000 0.000 100.000
11 12 12 20.000 30.000 0.000 100.000
13 13 13 10.000 20.000 0.000 100.000
16 10 10 40.000 50.000 100.000 0.000
17 13 13 50.000 60.000 0.000 100.000
18 15 15 60.000 70.000 0.000 100.000

The above information demonstrates how to make a route loop onto itself.