d.rast.edit
Edits cell values in a raster map.
d.rast.edit input=name output=name [aspect=name] [width=integer] [height=integer] [size=integer] [rows=integer] [cols=integer] [--overwrite] [--verbose] [--quiet] [--qq] [--ui]
Example:
d.rast.edit input=name output=name
grass.script.run_command("d.rast.edit", input, output, aspect=None, width=640, height=480, size=12, rows=100, cols=100, overwrite=False, verbose=False, quiet=False, superquiet=False)
Example:
gs.run_command("d.rast.edit", input="name", output="name")
Parameters
input=name [required]
Name of input raster map
output=name [required]
Name for output raster map
aspect=name
Name of input aspect raster map
width=integer
Width of display canvas
Default: 640
height=integer
Height of display canvas
Default: 480
size=integer
Minimum size of each cell
Default: 12
rows=integer
Maximum number of rows to load
Default: 100
cols=integer
Maximum number of columns to load
Default: 100
--overwrite
Allow output files to overwrite existing files
--help
Print usage summary
--verbose
Verbose module output
--quiet
Quiet module output
--qq
Very quiet module output
--ui
Force launching GUI dialog
input : str, required
Name of input raster map
Used as: input, raster, name
output : str, required
Name for output raster map
Used as: output, raster, name
aspect : str, optional
Name of input aspect raster map
Used as: input, raster, name
width : int, optional
Width of display canvas
Default: 640
height : int, optional
Height of display canvas
Default: 480
size : int, optional
Minimum size of each cell
Default: 12
rows : int, optional
Maximum number of rows to load
Default: 100
cols : int, optional
Maximum number of columns to load
Default: 100
overwrite: bool, optional
Allow output files to overwrite existing files
Default: False
verbose: bool, optional
Verbose module output
Default: False
quiet: bool, optional
Quiet module output
Default: False
superquiet: bool, optional
Very quiet module output
Default: False
DESCRIPTION
The d.rast.edit program allows users to interactively edit cell category values in a raster map layer displayed to the graphics monitor using a mouse cursor.
Overview window
An overview window shows the entire map with a red box showing the current editing region. The edit window shows the cells within the selected area. Click on a new spot on the overview window to move the editing area.
Raster cell editing
Cell editing is done using the mouse cursor to indicate the cell(s) on the displayed raster map that are to be edited.
To change the value of a cell put the new value to use in the "New value" box at the bottom left of the edit window. A value of "*" indicates a NULL value should be used.
Important: the new value in the "New value" box must be confirmed with ENTER, otherwise it is not yet active.
Saving the edited map
To save the edited map, the "File" menu contains the entry Save. To leave d.rast.edit, use Exit in the menu.
Map pan with arrow keys
The map can be shifted using the arrow keys on the keyboard.
NOTES
There is no "undo" command nor way to exit edit mode without saving changes to the output map.
A raster mask in place will be respected both when reading the original raster map layer and when writing the new raster map layer, so any edits to the masked areas will be ignored.
Geographic Region Concerns
d.rast.edit reads the region definition for the raster map layer being edited from its internal cell header file. The new, edited copy of the raster layer will be created with the same resolution and region dimensions.
The primary bane of the d.rast.edit program involves large map layers with lots of rows and columns) and/or slow computers, since the program must read and write raster map layers row by row for the full size of the map layer as dictated by its region size and resolution. (The current region settings of north, south, east, and west will not limit the size of the edited copy of the map layer, since by use of the overview selection these values may change several times during the editing session).
EXAMPLE
Editing raster values in a LiDAR DEM, North Carolina sample data:
g.region raster=elev_lid792_1m -p
# pan to area of interest and edit raster cells (I used "102" as value to modify cells
# Use: File > Save to save
# then: File > Exit
d.rast.edit input=elev_lid792_1m output=elev_lid792_1m_modified
# comparison of raster statistics
# original stats, note the min value
r.univar -g elev_lid792_1m
# modified map stats, note the min value
r.univar -g elev_lid792_1m_modified
Figure: Editing of pixels in an elevation raster map using d.rast.edit
TODO
d.rast.edit should not create a new raster map layer if the user makes no cell edits while running the program and leaving it without saving.
It would be nice to incorporate a scrollable version of d.legend (such that one could see a label legend for files with many categories on a standard size sub-frame). It would be even nicer to be able to select the category values from a graphical legend when editing cell values (thereby saving a trip to the text frame to type in the new value).
Perhaps method(s) for multiple or mass cell edits would be useful. This could be done by providing modes in which the user may:
- edit a block of cells to a given value by drawing a box;
- be able to choose a given value which is automatically used as the new value on each cell chosen until a different value is desired.
There is no user-interrupt handling. This could leave files in .tmp or (rarely) result in half-baked raster maps. The original file would survive unscathed by an interrupt at most any point in execution. Beware of exiting the program by means other than using exit on the Main Menu.
SEE ALSO
d.rast.arrow, d.rast.num, wxGUI.rdigit
AUTHORS
Tcl/Tk (2007) and wxPython versions (2008): Glynn Clements
Replaces Xdriver version in C by Chris Rewerts, April 1991, Agricultural Engineering, Purdue University
SOURCE CODE
Available at: d.rast.edit source code
(history)
Latest change: Wednesday Feb 12 23:02:46 2025 in commit 9c11460