|
@@ -6,7 +6,7 @@
|
|
|
# AUTHOR(S): CERL?; updated to GRASS 5.7 by Michael Barton
|
|
|
# Converted to Python by Glynn Clements
|
|
|
# PURPOSE: To redraw current displayed maps to 24 bit PNG output
|
|
|
-# COPYRIGHT: (C) 2004 by the GRASS Development Team
|
|
|
+# COPYRIGHT: (C) 2004-2012 by the GRASS Development Team
|
|
|
#
|
|
|
# This program is free software under the GNU General Public
|
|
|
# License (>=v2). Read the file COPYING that comes with GRASS
|
|
@@ -35,12 +35,17 @@
|
|
|
#%end
|
|
|
#%option
|
|
|
#% key: percent
|
|
|
-#% type: integer
|
|
|
+#% type: double
|
|
|
#% answer: 50
|
|
|
-#% options : 1-99
|
|
|
+#% options : 0-100
|
|
|
#% description: Percentage weight of first map for color blending
|
|
|
#% required : no
|
|
|
#%end
|
|
|
+#% flag
|
|
|
+#% key: c
|
|
|
+#% description: Combine resulting R,G,B layers into single output map
|
|
|
+#%end
|
|
|
+
|
|
|
|
|
|
import sys
|
|
|
import os
|
|
@@ -61,8 +66,8 @@ def main():
|
|
|
if grass.find_file(map, element = 'cell', mapset = mapset)['file']:
|
|
|
grass.fatal(_("Raster map <%s> already exists.") % map)
|
|
|
|
|
|
- percent = int(percent)
|
|
|
- perc_inv = 100 - percent
|
|
|
+ percent = float(percent)
|
|
|
+ perc_inv = 100.0 - percent
|
|
|
|
|
|
frac1 = percent / 100.0
|
|
|
frac2 = perc_inv / 100.0
|
|
@@ -81,16 +86,32 @@ def main():
|
|
|
for ch in ['r','g','b']:
|
|
|
map = "%s.%s" % (output, ch)
|
|
|
grass.run_command('r.colors', map = map, color = 'grey255')
|
|
|
- grass.run_command('r.support', map = map,
|
|
|
- title = "Color blend of %s and %s" % (first, second), history="")
|
|
|
+ grass.run_command('r.support', map = map, history="",
|
|
|
+ title = "Color blend of %s and %s" % (first, second),
|
|
|
+ description = "generated by r.blend")
|
|
|
grass.run_command('r.support', map = map,
|
|
|
history = "r.blend %s channel." % ch)
|
|
|
grass.run_command('r.support', map = map,
|
|
|
history = " %d%% of %s, %d%% of %s" % (percent, first, perc_inv, second))
|
|
|
+ grass.run_command('r.support', map = output, history = "")
|
|
|
grass.run_command('r.support', map = map, history = os.environ['CMDLINE'])
|
|
|
|
|
|
- grass.message(_("Done. Use the following command to visualize the result:"))
|
|
|
- grass.message(_("d.rgb r=%s.r g=%s.g b=%s.b") % (output, output, output))
|
|
|
+
|
|
|
+ if flags['c']:
|
|
|
+ grass.run_command('r.composite', r = '%s.r' % output,
|
|
|
+ g = '%s.g' % output, b = '%s.b' % output, output = output)
|
|
|
+
|
|
|
+ grass.run_command('r.support', map = output, history="",
|
|
|
+ title = "Color blend of %s and %s" % (first, second),
|
|
|
+ description = "generated by r.blend")
|
|
|
+ grass.run_command('r.support', map = output,
|
|
|
+ history = " %d%% of %s, %d%% of %s" % (percent, first, perc_inv, second))
|
|
|
+ grass.run_command('r.support', map = output, history = "")
|
|
|
+ grass.run_command('r.support', map = output, history = os.environ['CMDLINE'])
|
|
|
+ else:
|
|
|
+ grass.message(_("Done. Use the following command to visualize the result:"))
|
|
|
+ grass.message(_("d.rgb r=%s.r g=%s.g b=%s.b") % (output, output, output))
|
|
|
+
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
options, flags = grass.parser()
|