
388
|
Chapter 6, Mapping on Your Desktop
#77 Become a GRASS Ninja
HACK
completely within a single country—such as the British Isle—shows up, but
any landmass spanning more than one country—like, say, mainland North
America—has simply disappeared. However,
d.vect borders type=boundary
shows that the vectors are all there. What gives?
It turns out that, had the ninja trainee paid close attention, as every ninja
must, he would have noted the following warning emitted by each execu-
tion of v.patch:
Patch complete. 1 files patched.
Intersections at borders will have to be snapped.
Lines common between files will have to be edited.
The header information also may have to be edited.
A message like this from GRASS is a sure sign that the vector layer in ques-
tion needs a run through v.clean to fix what ails it and reassure GRASS that
the polygons contained therein really are polygons. The following does the
trick:
GRASS:~/hacks/world > v.clean in=borders out=borders2 tool=rmdupl,snap,bpol
v.clean needs a few minutes to work its magic (this is 13 megs of vector data,
after all) and it won’t overwrite the original layer, so we have to create a new
layer called
borders2. A quick call to d.vect reveals, as shown in Figure 6-53,
that the
borders2 layer does indeed contain a vector map of the world’s
international boundaries.
Having verified for ourselves that this is indeed the case, we can engage in a
bit of cleanup ...