Нефть и песок О стали Компрессор - подбор и ошибки Из истории стандартизации резьб Соперник ксерокса - гектограф Новые технологии производства стали Экспорт проволоки из России Прогрессивная технологическая оснастка Цитадель сварки с полувековой историей Упрочнение пружин Способы обогрева Назначение, структура, характеристики анализаторов Промышленные пылесосы Штампованные гайки из пружинной стали Консервация САУ Стандарты и качество Технология производства Водород Выбор материала для крепежных деталей Токарный резец в миниатюре Производство проволоки Адгезия резины к металлокорду Электролитическое фосфатирование проволоки Восстановление корпусных деталей двигателей Новая бескислотная технология производства проката Синие кристаллы Автоклав Нормирование шумов связи Газосварочный аппарат для тугоплавких припоев
Главная --> Промиздат -->  Map principle 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 ( 42 ) 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127

6.2.1 Managing metadata of vector maps

To display metadata for a vector map, run

V.info map

The output includes a map title, production date, creator, vector level (topology present or not), number of categories, lines, areas and islands (areas in areas), projection, map boundary coordinates, map scale, and further comments.

Metadata modifications. Most metadata for vector maps can be managed with v.digit. After loading the vector map, the metadata screen allows us the modification of these data. First, make sure that map scale matches the true map scale, because some vector calculations and the snapping threshold depend on it. If the map scale is not correct, use v.digit to change it within this metadata screen. You can leave the metadata screen with <ESC><ENTER> if you dont intend to digitize the map. Then v.digit can be left either with answering Shall we continue? [y] with n or leave it from the main menu with Q (quit).

A timestamp representing the date of map generation or last modification can be applied to the vector map. Use the module v.timestamp to generate, query or delete a timestamp. Please refer to Section 5.1.4 to learn more about absolute and relative timestamps and time ranges.

6.2.2 Map attributes modications

As we have already explained, vector lines and areas have assigned a category number (attribute ID) and an optional category label (attribute text). The internal vector ID is usually not visible to the user. Both category number and category label may be shared between vectors. For more details please read Section 4.2.1. Attributes can be modified by the module v.support. Besides building the topological information the module provides access to the category labels file, the internal attribute table. The module menus are a bit old-fashioned, but this may change in future.

You have to start v.support in interactive mode to reach the menus (omitting a parameter at startup). For modifying text labels, select the menu entry Edit the category file . If no category labels are present in the map, the Highest Category in the next screen will be zero. In this case, enter the number of attributes you intend to apply to the map. Otherwise the Highest Category represents the highest category number appearing in the table. Leave this screen with <ESC><ENTER> to proceed to the table. Here you can modify individual entries using the cursor keys. To quickly move around in large category tables or to reach a certain attribute you can enter a line number in the bottom line of the window and press <ESC><ENTER> to go there. To leave it, either scroll to the last screen of the category table or enter end at the bot-



6.3. VIEWING AND ANALYSIS

First, we show how to display vector maps. Then, we explain how to perform geometrical operations, and how to modify vector map layers based on attribute selection.

6.3.1 Displaying vector map layers

As we have already done earlier, vector data can be displayed in the GRASS monitor window using the command d.vect. For example, to display the streams in the Spearfish region run:

d.vect streams col=blue

This will display the selected vector map in the monitor; in the case that another map is already present, it will be overlayed. If you want to display only selected vectors in a map, use the catnum parameter. The selection is done by category number given as a single value or a comma-separated list. If you dont define the color, the vector map will be displayed in white, so you need to have a non-white background or raster map in your monitor to see it.

To zoom within the map, you may use d.zoom. The module is controlled with the mouse buttons, the context menu is shown in the terminal window.

If you want to display vector areas as filled polygons, run d.vect.area instead. For example, a colored soils polygons vector map is shown with

d.vect.area -r soils

Optionally the border and polygon fill colors can be defined. The parameter allows us to limit the display areas to selected category numbers (use v.report to find out associated labels which is explained below).

To display category labels in the map, use d.vect.labels. An example:

d.vect.labels soils attr=string

Font size, colors, label marker etc. can be customized.

tom line of the window and press <ESC><ENTER> to leave the table. With <CTRL><C> you can interrupt the editing and leave the module with unsaved changes.

To check a map for unlabeled lines and areas, you can use v.digit ( Toolbox and Window menu, see Section 6.1.2 for details).

If you have a map without category labels which you want to label with a unique value or incrementally, the modules v.llabel (for line and vector sites maps) and v.alabel (for area maps) are useful. They will apply labels to all unlabeled vector objects.



To see all or selected vector maps, the script slide.show.sh can be used. It only requires an open GRASS monitor. When running it with flag -v, it will show all available vector maps (without this flag it shows raster maps). Optionally, you can define a name prefix to see only selected maps.

To get a list of the maps currently displayed in the GRASS monitor, use d.frame -l.

Querying vector information. General information such as map title, creation date, scale, number of categories, lines and areas, and boundary coordinates from a vector map are provided by the command v.info. It also shows if the topology for a vector map has been built. If not, v.support should be run. To get a list of the vector map attributes (category numbers and labels), optionally with length or area sizes, use v.report:

v.info soils

v.report soils type=area units=h

The latter allows us to query line lengths and area sizes of vector features with parameter units. The map type, either line or area, has to be provided with parameter type.

The module v.what retrieves area information from polygons queried by a list of coordinates. As an example we query two points in the soils map of Spearfish:

v.what soils east north=596954,4924870,591797,4926687

It reports the areas for the polygons which include the given coordinates and the area attributes (here soil names). To get coordinates from screen, use d.where.

You can interactively query vector data in a GRASS monitor with mouse. The module d.what.vect allows you to query vector objects in one or more map layers. As an example, we query the farm fields map and the soils map:

d.what.vect map=fields,soils

The mouse context menu is shown in the terminal window.

The alternate query module is v.area which retrieves area information (but no lines) by mouse click. Optionally, the desired area can be highlighted or filled in a different color.

6.3.2 Intersecting and clipping vector maps

Besides visually overlaying maps on the screen, you sometimes need to merge (intersect) two or more maps. The module v.patch provides this functionality. Unlike merging raster maps, intersection of vector maps is not a trivial task. Internally, new vectors have to be generated, because for each new



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 ( 42 ) 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127