Prev Up Top Next Contents
3.5 Joining scraps
When the scraps are drawn in the same map file (and possibly with the
same background image) it is possible to start the lines of a scrap where
those of the other end, so that there are no problems when they are
assembled to compose the cave map.
However scraps are often drawn independently and they must be
joined together in the final map. The join
command tells
therion
how to connect the lines of two scraps.
The sytax of the command has two forms: it can take either the names of the
scraps or the name of the line points (usually "line:0" for the starting
point and "line:end" for the end point).
Often the first syntax is good enough,
join scrap1 scrap2
because
therion can figure out
how to join the scraps according to the survey stations.
This is especially true when the scraps contains few outline lines.
Notice that you can join any line point, not just the endpoints
(although it is easier with the latter because you do not have to
count the points to get the index). You can also join points of
any line, not just "wall" lines [M. Sluka 2006.11.26].
An advice: try to split the cave map in scraps that join
where the cave is simple, possibly straight, and with no features.
Therefore avoid join at crosspoints, and try to make the joins in the
middle of a gallery, in a place where there is no symbol.
Above all avoid joins that might split an area symbol (eg, water pool).
Unfortunately, cave surveys have the tendency to end at crosspoints, and
it happens to draw scraps that end (and therefore must join) at crosspoints.
The following example shows the usage of the join
command, and
addresses the case of a join at a crosspoint. The cave data are
fictional: the centerline is composed of two loops, and there are
three scraps: a scrap for each branch of the loops.
Fig. 38. Join (map editor)
The above figure shows the map editor with the ".th2" file containing
the three scraps. xtherion
displays the inactive (ie, not selected)
scraps with a yellow color [thbook 29].
To properly join the scraps the survey data file must have the
join
commands for the endpoints of the lines of the scraps.
The
join
commands are written inside the
survey
block, but
outside the
centerline
block.
input test1.th2
join s1_l1:end s3_l1:end
join s1_l2:end s2_l2:0
join s2_l1:0 s3_l2:0
join s2_l1:end s3_l2:end
join s2_l2:end s1_l4:end
join s3_l1:0 s1_l3:0
The outcome of the processing is shown in the figure below.
The intermediate steps of the processing are display using the
"debug" option of the "layout" ("-layout-debug on").
The position of the scraps after the linear transformation that takes
the "station" points as close as possible to the stations of the survey
is shown in red.
The position after the non-linear transformation that takes the "station"
points on the survey stations is shown in blue. This is the map
before the joins.
The result after the join is shown in black. This is the final map.
Fig. 39. Join
The final map looks good. There is however a mistake.
If we color the cave outline (for instance with the layout option
"-layout-color mag-fg altitude"), the two regions of the joins have a
white triangular hole. Infact therion
completes the contour of the
outline of each scrap with a segment at both ends.
To fill the triangular holes,
the scrap outline should extend a little beyond these segments when
the scraps are joined together.
Unfortunately therion
does not do this.
A solution to this problem is to avoid scrap joins at crosspoints
of three or more passages. In other words, avoid joins at 'Y' junctions and
place them where the cave passage is linear.
Another solution is to add to a scrap a small piece of the cave wall
opposite to the scrap end. In this way the junction becomes a 'T' (the
scrap with the added piece of wall is the vertical bar, the other two
scraps are attached on the opposite sides of it, without joins between them).
A third solution is to add to a scrap a point of type "bedrock", beyond the
end, and a (zero-length) line of type "wall" from this point to itself
(Ctrl-L and click twice on the point).
Finally you must add the id of the point in the list of the join
command that links the lines of the other two scraps.
Without the "wall" line (even if this has zero length) the triangular
hole is not removed.
If the line is not of type "wall", you must add the option
"-outline out" (or "-outline in") to specify that it belongs to the
contour of the scrap. Contours with "-outline in" must not touch the contour
with "-outline out".
3.5.1 Joining maps
When the cave project is large you need to split the cave map
in smaller maps. You work on these smaller maps joining their scraps,
and finally you must put these maps together to form the whole map
of the cave.
As is often the case the lines from a scrap extend into the nearby map,
and you need to edit them in order to obtain a satisfactory join.
Open the two scraps you want to join in two xtherion map editors,
so that you can easily edit both of them until you are satisfied with
the result.
3.5.2 Marking line points
The line command
mark
lets you assign keywords to line points.
For instance
mark N_19 assigns the keyword "N_19" to the
previous line point. Then you can use point keywords instead of
indices in the join command. For example
join left_wall@top_passage:N_19 left_wall@bottom_passage:C_2
3.5.3 Splitting a scrap
To split a scrap in two scraps, you can use the xtherion map
editor objects control. First insert a new scrap
with the "Insert scrap" button, name is properly, and assign a projection
to it. The scrap command (and its "endscrap") will be placed at the
end of the object list.
Next select in the drop-down list nearby the "MoveTo" button the
beginning or the end of the new scrap you just added.
Next click with the mouse on the drawing items you want to move
to the new scrap, inside the canvas window. The item you click on will be
highlighted in red. Click on the "MoveTo" button: the item will be placed
either at the beginning or at the end of the new scrap.
Repeat for all the items you want to place in the new scrap.
When you move an item, xtherion shifts the selection to another one.
If this is another item you want to move to the new scrap, just click
the "MoveTo" button. Otherwise you must select the item to move
by yourself.
When you are done save the file. If you want to split the scraps into
two different files, open it with a text editor (for example xtherion
text editor), cut the commands in one scrap block and save (with
a suitable filename), then cut the other scrap and save (with
another filename). You can also cut the background images that are
not necessary for the scrap left in each file.
3.5.4 The examples
therion users - Thu May 17 18:43:43 2012
Prev Up Top Next Contents
This work is licensed under a Creative Commons
Attribution-NonCommercial-ShareAlike 2.5 License.