dwww Home | Manual pages | Find package

v.edit(1grass)              GRASS GIS User's Manual             v.edit(1grass)

NAME
       v.edit  - Edits a vector map, allows adding, deleting and modifying se-
       lected vector features.

KEYWORDS
       vector, geometry, editing, line, node, point, vertex, level1

SYNOPSIS
       v.edit
       v.edit --help
       v.edit [-rcnb1p] map=name  [layer=string]    [type=string[,string,...]]
       tool=string         [input=name]          [move=x,y,z]         [thresh-
       old=float[,float,...]]       [ids=range]       [cats=range]        [co-
       ords=x,y[,x,y,...]]      [bbox=x1,y1,x2,y2]     [polygon=x,y[,x,y,...]]
       [where=sql_query]        [query=string]         [bgmap=name[,name,...]]
       [snap=string]    [zbulk=value,step]    [--overwrite]  [--help]  [--ver-
       bose]  [--quiet]  [--ui]

   Flags:
       -r
           Reverse selection

       -c
           Close added boundaries (using threshold distance)

       -n
           Do not expect header of input data

       -b
           Do not build topology
           Advantageous when handling a large number of points

       -1
           Modify only first found feature in bounding box

       -p
           Connect parallel lines (using extend tools and threshold distance)

       --overwrite
           Allow output files to overwrite existing files

       --help
           Print usage summary

       --verbose
           Verbose module output

       --quiet
           Quiet module output

       --ui
           Force launching GUI dialog

   Parameters:
       map=name [required]
           Name of vector map to edit
           Or data source for direct OGR access

       layer=string
           Layer number or name
           Vector features can have category values in different layers.  This
           number determines which layer to use. When used with direct OGR ac-
           cess this is the layer name.
           Default: 1

       type=string[,string,...]
           Input feature type
           Options: point, line, boundary, centroid
           Default: point,line,boundary,centroid

       tool=string [required]
           Tool
           Options: create, add, delete, copy,  move,  flip,  catadd,  catdel,
           merge,   break,  snap,  connect,  extend,  extendstart,  extendend,
           chtype, vertexadd, vertexdel, vertexmove, areadel, zbulk, select
           create: Create new (empty) vector map
           add: Add new features to existing vector map
           delete: Delete selected features from vector map
           copy: Copy selected features
           move: Move selected features in vector map
           flip: Flip direction of selected vector lines
           catadd: Set new categories to selected vector features for  defined
           layer
           catdel: Delete categories from selected vector features for defined
           layer
           merge: Merge selected vector lines
           break: Break/split vector lines
           snap: Snap vector features in given threshold
           connect: Connect two lines
           extend: Extend lines
           extendstart: Extend start nodes
           extendend: Extend end nodes
           chtype: Change feature type (point<->centroid, line<->boundary)
           vertexadd: Add new vertex to selected vector lines
           vertexdel: Remove vertex from selected vector lines
           vertexmove: Move vertex of selected vector lines
           areadel: Delete selected areas from vector map (based  on  selected
           centroids)
           zbulk:  Z  bulk-labeling  (automated  assignment of z coordinate to
           vector lines)
           select: Select lines and print their ID’s

       input=name
           Name of file containing data in GRASS ASCII vector format
           ’-’ for standard input

       move=x,y,z
           Difference in x,y,z direction for moving feature or vertex

       threshold=float[,float,...]
           Threshold distance (coords,snap,query)
           ’-1’ for threshold based on the current resolution settings
           Default: -1,0,0

       ids=range
           Feature ids
           Example: 1,3,7-9,13

       cats=range
           Category values
           Example: 1,3,7-9,13

       coords=x,y[,x,y,...]
           List of point coordinates

       bbox=x1,y1,x2,y2
           Bounding box for selecting features

       polygon=x,y[,x,y,...]
           Polygon for selecting features

       where=sql_query
           WHERE conditions of SQL statement without ’where’ keyword
           Example: income < 1000 and population >= 10000

       query=string
           Query tool
           For ’shorter’ use negative  threshold  value,  positive  value  for
           ’longer’
           Options: length, dangle
           length: Select only lines or boundaries shorter/longer than thresh-
           old distance
           dangle: Select dangles shorter/longer than threshold distance

       bgmap=name[,name,...]
           Name of background vector map(s)

       snap=string
           Snap added or modified features in the given threshold to the near-
           est existing feature
           Options: no, node, vertex
           Default: no
           no: Not apply snapping
           node: Snap only to node
           vertex: Allow snapping also to vertex

       zbulk=value,step
           Starting value and step for z bulk-labeling
           Pair: value,step (e.g. 1100,10)

DESCRIPTION
       The module v.edit allows the user to edit a vector map via command line
       interface.

       v.edit supports only "simple" vector features: points, centroids, lines
       and   boundaries.   Currently,  only  2D  vector  features  (except  of
       tool=zbulk) are supported.

       Provides editing features’ geometry. Attribute data  connected  to  the
       vector map are not modified at all.

       Vector  features can be selected either by internal id, category number
       cats, coordinates coords, bounding box bbox, polygon,  where  statement
       (attribute  data) or by query. Selecting features by coordinates is af-
       fected by the current 2D resolution or by the threshold distance  given
       by  threshold.  The options are orthogonal, i.e. can be used in various
       combinations. For example:
       v.edit map=roads tool=select \
         coord=599505,4921010,603389.0625,4918292.1875 \
         threshold=10000 where="label=’interstate’"
       selects all features (and prints their id’s to standard output) covered
       by    two    bounding    boxes    (center    at    599505,4921010   and
       603389.0625,4918292.1875, size 2*10000)  with  attribute  label=’inter-
       state’.

NOTES
       If  no vector features are selected or the flag -b is used, topology is
       not build at the end.

USAGE
   Feature selection
       Vector features can be selected in several ways:

           •   ids - using internal (unique) feature id’s

           •   cats - using category numbers

           •   coords - using x,y coordinate pairs (center  of  bounding  box,
               size defined by threshold)

           •   bbox - using bounding box

           •   polygon - using polygon (at least 3 coordinate pairs have to be
               set)

           •   where - using where statement (attribute data)

           •   query - special query (e.g. minimal vector line length)
       Additional parameters for vector feature specification are:

           •   layer - layer number (currently used only with  cats  or  where
               option)

           •   threshold  -  threshold distance used for selecting vector fea-
               tures by coordinates

   Tool descriptioncreate - Create new (empty) vector map (see  also  v.in.ascii).
               Optionally  vector  features (in GRASS ASCII vector format) can
               be read from standard input (input=-) or  from  the  text  file
               given by the input option.

           •   add  -  Add  new vector features (defined in GRASS ASCII vector
               format) to existing vector map. Features can be read from stan-
               dard  input  or  from the given text file (input option). If no
               header is given, the -n flag must be used. Added  features  can
               be  snapped  (defined  by  snap parameter) to nodes or vertices
               based on threshold distance threshold.

           •   delete - Delete selected vector features from  existing  vector
               map.

           •   copy  -  Make  identical  copy  of selected vector features. If
               background map bgmap is given  copy  features  from  background
               map, not from currently modified vector map.

           •   move - Move selected features of existing vector map relatively
               to their current location. This tool requires move option.  The
               option  defines  coordinates  of  the movement direction. Moved
               features can be snapped (defined by snap parameter) to nodes or
               vertices based on threshold distance threshold.

           •   flip - Flip direction of selected vector lines (lines or bound-
               aries).

           •   catadd - Add new layer category(ies) to  selected  vector  fea-
               ture(s). Category can be later used for new database entry.

           •   catdel  -  Delete  layer  category(ies) of selected vector fea-
               ture(s).

           •   merge - Merge (at least two) selected vector  lines  or  bound-
               aries.  The geometry of the merged vector lines can be changed.
               If the second line from two selected lines is in  opposite  di-
               rection  to  the  first,  it  will  be flipped. See also module
               v.build.polylines.

           •   break - Split given vector line or boundary into two  lines  on
               location  given  by coords. If coords not given, breaks all se-
               lected  lines  at  each   intersection   (based   on   v.clean,
               tool=break).

           •   snap - Snap vector features in given threshold. See also module
               v.clean. Note that this tool supports only snapping  to  nodes.
               Parameters snap and bgmap are ignored.

           •   connect - Connect selected lines or boundaries, the first given
               line is connected to the second one. The second line is  broken
               if  necessary. The lines are connected only if distance between
               them is not greater than snapping threshold distance threshold.

           •   extend - Extend selected lines or boundaries  without  changing
               the current shape. Similar to connect, but the first and second
               lines are both extended until they intersect. The  second  line
               is broken if necessary. The lines are extended only if distance
               between them is not greater than  snapping  threshold  distance
               threshold.  If  the  first and second lines are parallel and do
               not intersect, no lines are extended. Use the -p flag to extend
               the first line across the parallel gap.

           •   extendstart  -  Similar  to  extend,  but extend at start nodes
               only. Start nodes are used to select the second  line  and  the
               end  node of that line can also be extended if it is within the
               snapping threshold distance given by threshold.

           •   extendend - Similar to extend, but extend at end nodes only.

           •   chtype - Change feature  type  of  selected  geometry  objects.
               Points  are  converted to centroids, centroids to points, lines
               to boundaries and boundaries to lines.

           •   vertexadd - Add vertex(ces) to the given vector lines or bound-
               aries.  Location of the new vertex is given by coord option. If
               -1 is given only first found line or boundary in  bounding  box
               is modified.

           •   vertexdel  -  Remove vertex(ces) specified by coords option. If
               -1 is given only first found line or boundary in  bounding  box
               is modified.

           •   vertexmove  -  Move vertex(ces) specified by coords option. Di-
               rection of the movement is specified by the move option. If  -1
               is  given  only first found line or boundary in bounding box is
               modified. Moved vertex can be snapped (defined snap)  to  nodes
               or vertices based on threshold distance threshold.

           •   zbulk  - Assign z coordinate to 3D vector lines in given bound-
               ing box. The first found line will get z  coordinate  based  on
               value  given by zbulk parameter. Z coordinate of other selected
               lines will be increased by step given by zbulk parameter.  This
               tool  strictly  requires  bbox  and zbulk parameter. Also input
               vector map must be 3D.

           •   select - Print comma separated list of selected line  id’s.  No
               editing is done.

EXAMPLES
   Create new vector map
       Create new (empty) vector map:
       v.edit tool=create map=vectmap
       Create new vector map and read data from file ’roads.txt’:
       v.out.ascii in=roads format=standard > roads.txt;
       v.edit tool=create map=vectmap input=roads.txt
       or alternatively
       cat roads.txt | v.edit tool=create map=vectmap input=-

   Add new features to existing vector map
       Add a new point to the vector map (without header):
       echo "P 1 1
        640794 214874
        1 1" | v.edit -n tool=add map=vectmap input=-
       # insert new row for each category in attribute table if doesn’t exist yet
       v.to.db map=vectmap option=cat
       The input must be in GRASS ASCII vector format.

       Add new features read from standard input:
       v.out.ascii in=railroads format=standard | v.edit tool=add map=vectmap input=-

   Delete selected features from vector map layer
       Remove all vector features with category number 1 or 2:
       v.edit tool=delete map=roads cats=1,2
       Remove  all vector features except of those with category number 1 or 2
       (reverse selection):
       v.edit -r tool=delete map=roads cats=1,2
       Remove  features  with  category  1  or  2   located   on   coordinates
       600952.625,4926107 (bounding box based on the current 2D resolution):
       g.region -d;
       v.edit tool=delete map=roads cats=1,2 coords=600952.625,4926107
       Remove all features with category 1 and 2 covered by two bounding boxes
       (center coordinates 592542.892,4924766.996 and  603389.062,4918292.187,
       size 1000 map units):
       v.edit map=roads tool=delete \
         coord=592542.892,4924766.996,603389.062,4918292.187 \
         threshold=1000 cat=1,2

   Copy selected features from background map
       Copy all features with category number 1 from background map:
       v.edit map=roads tool=copy bgmap=archsites cat=1

   Move features
       Move  feature  (vector  point) located on coordinates 602580,4918480 to
       coordinates 603580,4919480:
       v.edit tool=move map=archsites coord=602580,4918480 th=1e-2 move=1000,1000
       Move all features with category 1 1000 map units to the west  and  1000
       map  units to the south. Moved features snap to nodes in threshold dis-
       tance 10 map units:
       v.edit tool=move map=roads cat=1 move=1000,-1000 snap=node threshold=-1,10
       Move all features defined by bounding box 601530,4921560,602520,4922310
       (W,S,E,N) 1000 map units to the east and 1000 map units to the north:
       v.edit tool=move map=roads bbox=601530,4921560,602520,4922310 move=-1000,1000

   Flip direction of vector lines
       Flip direction of all vector lines:
       v.edit tool=flip map=streams cats=1-9999 type=line

   Add / delete layer category number
       Add  new layer/category 2/1, 2/3, 2/4, 2/5 to features covered by given
       polygon:
       v.edit tool=catadd map=roads \
         polygon=599877.75,4925088.375,597164.812,4922524.5,601338.562,4920914.625 \
         layer=2 cat=1,3-5
       Delete layer/category 1/1, line id 1:
       v.edit tool=catdel map=roads id=1 cats=5

   Merge lines
       Merge two lines with given category number:
       v.edit map=roads tool=merge cat=4

   Split line on given point
       Split line id 810 on coordinates 604268,4923570  in  threshold  50  map
       units:
       v.edit map=roads tool=break coords=604268,4923570 id=810 threshold=50

   Break selected lines at each intersection
       Break selected lines (with category number 1) at each intersection:
       v.edit map=roads tool=break cat=1

   Snap lines
       Snap all lines using threshold distance 20 map units:
       v.edit map=roads id=1-9999 tool=snap threshold=-1,20 type=line

   Connect lines
       Connect line id 48 to line id 565:
       v.edit map=roads tool=connect id=48,565
       Connect  line  id  48 to line id 565; line id 60 to line id 50. Maximum
       threshold distance is 700 map units:
       v.edit map=roads tool=connect id=48,565,60,50 threshold=-1,700

   Add vertex
       Add new vertex to the line located at 600952,4926107, threshold is  set
       to 1 map unit:
       v.edit tool=vertexadd map=roads coords=600952,4926107 threshold=1

   Delete vertices
       Delete  vertex  located at 593191.608,4925684.849 (threshold set to 0.1
       map units).  Modify only lines with category 1:
       v.edit tool=vertexdel map=roads coord=593191.608,4925684.849 \
         threshold=1-e1 cats=1

   Move vertices
       Move vertices located at  604441,4921088  (threshold  set  to  100  map
       units).  Modify only lines with categories 1-10:
       v.edit tool=vertexmove map=roads cats=1-10 coord=604441,4921088 \
         threshold=100 move=1000,1000

   Select features and print their id’s
       Print id’s of selected features, e.g.:
       v.edit map=soils@PERMANENT tool=select \
         bbox=595733.8125,4919781.75,598536.1875,4917396.75 --q
       Example with d.vect:
       d.erase;
       d.vect roads;
       d.vect -i map=roads cats=`v.edit map=roads tool=select \
         coord=592542.89243878,4924766.99622811,603389.0625,4918292.1875 \
         threshold=1000 --q` col=red
       Select all lines shorter (or equal) than 10 map units:
       v.edit map=roads tool=select query=length threshold=-1,0,-10
       Select from given bounding box all lines longer then 200 map units:
       v.edit map=roads tool=select bbox=598260,4919730,605100,4926240 query=length threshold=-1,0,200

   Fix height of contours
       Input vector map contains 2D lines representing contours. Height can be
       assign to the contours using tool=zbulk. First of all 2D lines need  to
       be converted to 3D lines:
       v.extrude input=line2 output=line3 height=0 type=line
       All  lines  which  intersect with the line given by coordinates will be
       modified. First found line will get height 1000 map  units,  height  of
       other selected lines will be increased by 10 map units.
       v.edit a2 tool=zbulk bbox=586121.25049368,4911970.21547109,603092.60466035,4927071.25713776 \
          zbulk=1000,10

SEE ALSO
         v.in.ascii,  v.info,  v.build, v.build.polylines, v.clean, v.extrude,
       v.split

       See also wxGUI vector digitizer.

AUTHORS
       Original author: Wolf Bergenheim - independent developer
       Initial updates: Jachym Cepicky, Mendel University of  Agriculture  and
       Forestry in Brno, Czech Republic
       Major  update  by  Martin  Landa, FBK-irst (formerly ITC-irst), Trento,
       Italy
       Extend tools by Huidae Cho

SOURCE CODE
       Available at: v.edit source code (history)

       Accessed: unknown

       Main index | Vector index | Topics index | Keywords index  |  Graphical
       index | Full index

       © 2003-2022 GRASS Development Team, GRASS GIS 7.8.7 Reference Manual

GRASS 7.8.7                                                     v.edit(1grass)

Generated by dwww version 1.14 on Fri Jan 24 09:33:54 CET 2025.