[GRASS-SVN] r63996 - in grass/branches/releasebranch_7_0: . raster/r.horizon

svn_grass at osgeo.org svn_grass at osgeo.org
Thu Jan 8 05:57:08 PST 2015


Author: neteler
Date: 2015-01-08 05:57:08 -0800 (Thu, 08 Jan 2015)
New Revision: 63996

Modified:
   grass/branches/releasebranch_7_0/
   grass/branches/releasebranch_7_0/raster/r.horizon/main.c
   grass/branches/releasebranch_7_0/raster/r.horizon/r.horizon.html
Log:
r.horizon: implement -c flag for compass oriented output


Property changes on: grass/branches/releasebranch_7_0
___________________________________________________________________
Modified: svn:mergeinfo
   - /grass/trunk:60817,61096,61141,61994,62105,62179-62180,62182,62190,62403,62422,62424,62437,62466,62469,62487,62491,62494,62501,62506,62508-62509,62515,62518-62519,62521,62526,62533,62539,62541,62555,62562,62566,62570,62573,62575,62585,62588,62597,62603,62606,62608-62609,62614,62618,62628,62632,62638,62642,62648-62649,62652,62654-62657,62666,62691,62705,62709,62723,62730,62739,62741,62743,62746,62750-62752,62757,62762,62785,62798,62800-62801,62803,62805,62812,62822,62824,62828,62831,62838,62845,62847,62850,62856,62879,62881,62886,62904,62907-62908,62910,62912,62914,62916,62918,62920,62925,62932-62933,62935,62940,62942,62944-62946,62949,62955-62956,62958,62960,62962,62964,62966-62968,62970,62973,62975,62977,62981,62983,62985,62987,62989,62991,62993,62995,62997,62999-63000,63003,63005,63007,63009,63011,63013,63015,63017,63020,63022,63024,63026,63028-63031,63033,63035,63037,63040,63043-63044,63047,63049,63051,63053,63055,63057,63060,63062-63064,63066,63068,63070-63071,63074,
 63076,63079,63081,63083,63085,63087,63089,63091,63093,63095,63098,63100,63102,63105,63107,63109,63111,63113-63114,63116,63119,63121,63123,63125,63130,63132-63133,63135,63137,63140,63143,63145,63147,63149,63151,63153-63154,63157,63160,63165,63170,63173,63175,63187,63192-63193,63196,63199-63200,63202,63209,63216,63220-63221,63224,63227,63240,63246,63250,63255,63259,63261,63275-63276,63279,63281,63283,63287,63290,63292,63297,63302,63304-63307,63315,63319,63327,63330,63332,63339,63342,63345,63361-63363,63367,63379,63389,63391,63393,63402,63408-63409,63416-63417,63425,63427,63429,63431,63433,63448,63451,63453,63457,63459,63464-63470,63473,63482,63497,63505,63508,63510,63515,63521-63524,63526,63536-63537,63551-63552,63554,63556,63558-63559,63562,63570,63576,63582,63589-63593,63602,63604,63608-63609,63616,63618,63624,63626,63628,63630,63634,63639,63642,63644,63650,63652,63656,63679,63685,63689,63691,63693,63695,63698,63700-63702,63704,63706-63707,63709,63711,63713,63715,63717-63718
 ,63721-63727,63731,63733,63736,63740-63742,63744-63749,63751-63752,63756,63758,63760-63761,63767,63777,63780,63783,63787,63793,63796-63798,63801,63803,63807-63808,63812,63814,63816,63821,63823-63824,63827-63828,63830-63831,63834-63835,63837-63839,63841,63843-63844,63846-63847,63849,63851,63853,63855-63856,63858-63859,63862,63865,63869,63871,63882,63884,63889-63890,63892-63895,63897-63898,63900,63902-63903,63905,63907,63909-63911,63913-63914,63927,63940-63941,63945,63954-63955,63960,63965
   + /grass/trunk:60817,61096,61141,61994,62105,62179-62180,62182,62190,62403,62422,62424,62437,62466,62469,62487,62491,62494,62501,62506,62508-62509,62515,62518-62519,62521,62526,62533,62539,62541,62555,62562,62566,62570,62573,62575,62585,62588,62597,62603,62606,62608-62609,62614,62618,62628,62632,62638,62642,62648-62649,62652,62654-62657,62666,62691,62705,62709,62723,62730,62739,62741,62743,62746,62750-62752,62757,62762,62785,62798,62800-62801,62803,62805,62812,62822,62824,62828,62831,62838,62845,62847,62850,62856,62879,62881,62886,62904,62907-62908,62910,62912,62914,62916,62918,62920,62925,62932-62933,62935,62940,62942,62944-62946,62949,62955-62956,62958,62960,62962,62964,62966-62968,62970,62973,62975,62977,62981,62983,62985,62987,62989,62991,62993,62995,62997,62999-63000,63003,63005,63007,63009,63011,63013,63015,63017,63020,63022,63024,63026,63028-63031,63033,63035,63037,63040,63043-63044,63047,63049,63051,63053,63055,63057,63060,63062-63064,63066,63068,63070-63071,63074,
 63076,63079,63081,63083,63085,63087,63089,63091,63093,63095,63098,63100,63102,63105,63107,63109,63111,63113-63114,63116,63119,63121,63123,63125,63130,63132-63133,63135,63137,63140,63143,63145,63147,63149,63151,63153-63154,63157,63160,63165,63170,63173,63175,63187,63192-63193,63196,63199-63200,63202,63209,63216,63220-63221,63224,63227,63240,63246,63250,63255,63259,63261,63275-63276,63279,63281,63283,63287,63290,63292,63297,63302,63304-63307,63315,63319,63327,63330,63332,63339,63342,63345,63361-63363,63367,63379,63389,63391,63393,63402,63408-63409,63416-63417,63425,63427,63429,63431,63433,63448,63451,63453,63457,63459,63464-63470,63473,63482,63497,63505,63508,63510,63515,63521-63524,63526,63536-63537,63551-63552,63554,63556,63558-63559,63562,63570,63576,63582,63589-63593,63602,63604,63608-63609,63616,63618,63624,63626,63628,63630,63634,63639,63642,63644,63650,63652,63656,63679,63685,63689,63691,63693,63695,63698,63700-63702,63704,63706-63707,63709,63711,63713,63715,63717-63718
 ,63721-63727,63731,63733,63736,63740-63742,63744-63749,63751-63752,63756,63758,63760-63761,63767,63777,63780,63783,63787,63793,63796-63798,63801,63803,63807-63808,63812,63814,63816,63821,63823-63824,63827-63828,63830-63831,63834-63835,63837-63839,63841,63843-63844,63846-63847,63849,63851,63853,63855-63856,63858-63859,63862,63865,63869,63871,63882,63884,63889-63890,63892-63895,63897-63898,63900,63902-63903,63905,63907,63909-63911,63913-63914,63927,63940-63941,63945,63954-63955,63960,63965,63995

Modified: grass/branches/releasebranch_7_0/raster/r.horizon/main.c
===================================================================
--- grass/branches/releasebranch_7_0/raster/r.horizon/main.c	2015-01-08 13:56:07 UTC (rev 63995)
+++ grass/branches/releasebranch_7_0/raster/r.horizon/main.c	2015-01-08 13:57:08 UTC (rev 63996)
@@ -107,7 +107,7 @@
 
 int ip, jp, ip100, jp100;
 int n, m, m100, n100;
-int degreeOutput = FALSE;
+int degreeOutput, compassOutput = FALSE;
 float **z, **z100, **horizon_raster;
 double stepx, stepy, stepxhalf, stepyhalf, stepxy, xp, yp, op, dp, xg0, xx0,
     yg0, yy0, deltx, delty;
@@ -171,7 +171,7 @@
 
     struct
     {
-	struct Flag *degreeOutput;
+	struct Flag *degreeOutput, *compassOutput;
     }
     flag;
 
@@ -308,7 +308,12 @@
     flag.degreeOutput->description =
 	_("Write output in degrees (default is radians)");
 
+    flag.compassOutput = G_define_flag();
+    flag.compassOutput->key = 'c';
+    flag.compassOutput->description =
+	_("Write output in compass orientation (default is CCW, East=0)");
 
+
     if (G_parser(argc, argv))
 	exit(EXIT_FAILURE);
 
@@ -343,6 +348,7 @@
     delty = fabs(cellhd.north - cellhd.south);
 
     degreeOutput = flag.degreeOutput->answer;
+    compassOutput = flag.compassOutput->answer;
 
     if (G_projection() == PROJECTION_LL)
         G_important_message(_("Note: In latitude-longitude coordinate system specify buffers in degree unit"));
@@ -865,7 +871,16 @@
 	else if (printangle >= 360.)
 	    printangle -= 360;
 
-	fprintf(fp, "%lf,%lf\n", printangle, shadow_angle);
+	if(compassOutput ){
+	    double tmpangle;
+	    
+	    tmpangle = 360. - printangle + 90.;
+	    if (tmpangle >= 360.)
+		tmpangle = tmpangle - 360.;
+	    fprintf(fp, "%lf,%lf\n", tmpangle, shadow_angle);
+	} else {
+	    fprintf(fp, "%lf,%lf\n", printangle, shadow_angle);
+	}
 
 	angle += dfr_rad;
 

Modified: grass/branches/releasebranch_7_0/raster/r.horizon/r.horizon.html
===================================================================
--- grass/branches/releasebranch_7_0/raster/r.horizon/r.horizon.html	2015-01-08 13:56:07 UTC (rev 63995)
+++ grass/branches/releasebranch_7_0/raster/r.horizon/r.horizon.html	2015-01-08 13:57:08 UTC (rev 63996)
@@ -24,16 +24,12 @@
 resulting cardinal directions represent true orientation towards the
 East, North, West and South. The only exception of this feature is
 LOCATION with x,y coordinate system, where this correction is
-not applied. 
+not applied.
 
+<p>
+Using the <b>-c</b> flag, the azimuthal angles will be printed in compass
+orientation (North=0, clockwise).
 
-<h3>Flags:</h3>
-<dl>
-  <dt><b>-d</b>
-  <dd>Output horizon height in degrees (the default is radians)</dd>
-</dl>
-
-
 <h3>Input parameters:</h3>
 <p>The <i>elevation</i> parameter is an input elevation raster map. If
 the buffer options are used (see below), this raster should extend
@@ -46,7 +42,8 @@
 360/5=72 directions (72 raster maps if used in the raster map mode). 
 
 <p>The <i>start</i> parameter gives the angle start (in degrees)
-for the calculation of the horizon. The default value is 0.
+for the calculation of the horizon. The default value is 0 (East with
+North being 90 etc.).
 
 <p>The <i>end</i> parameter gives the angle end (in degrees)
 for the calculation of the horizon. The end point is omitted!



More information about the grass-commit mailing list