[Git][debian-gis-team/grass][upstream] New upstream version 7.4.1~rc3

Bas Couwenberg gitlab at salsa.debian.org
Wed Jun 6 18:55:11 BST 2018


Bas Couwenberg pushed to branch upstream at Debian GIS Project / grass


Commits:
8e3586e3 by Bas Couwenberg at 2018-06-06T18:52:40+02:00
New upstream version 7.4.1~rc3
- - - - -


5 changed files:

- − ChangeLog_7.4.1RC2.gz
- + ChangeLog_7.4.1RC3.gz
- include/VERSION
- lib/vector/Vlib/intersect2.c
- raster/r.proj/main.c


Changes:

=====================================
ChangeLog_7.4.1RC2.gz deleted
=====================================
Binary files a/ChangeLog_7.4.1RC2.gz and /dev/null differ


=====================================
ChangeLog_7.4.1RC3.gz
=====================================
Binary files /dev/null and b/ChangeLog_7.4.1RC3.gz differ


=====================================
include/VERSION
=====================================
--- a/include/VERSION
+++ b/include/VERSION
@@ -1,4 +1,4 @@
 7
 4
-1RC2
+1RC3
 2018


=====================================
lib/vector/Vlib/intersect2.c
=====================================
--- a/lib/vector/Vlib/intersect2.c
+++ b/lib/vector/Vlib/intersect2.c
@@ -581,8 +581,8 @@ static int boq_load(struct boq *q, struct line_pnts *Pnts,
 int
 Vect_line_intersection2(struct line_pnts *APoints,
 		        struct line_pnts *BPoints,
-		        struct bound_box *ABox,
-		        struct bound_box *BBox,
+		        struct bound_box *pABox,
+		        struct bound_box *pBBox,
 		        struct line_pnts ***ALines,
 		        struct line_pnts ***BLines,
 		        int *nalines, int *nblines, int with_z)
@@ -594,7 +594,7 @@ Vect_line_intersection2(struct line_pnts *APoints,
     struct line_pnts **XLines, *Points;
     struct line_pnts *Points1, *Points2;	/* first, second points */
     int seg1, seg2, vert1, vert2;
-    struct bound_box abbox;
+    struct bound_box ABox, BBox, abbox;
     struct boq bo_queue;
     struct qitem qi, *found;
     struct RB_TREE *bo_ta, *bo_tb;
@@ -681,33 +681,46 @@ Vect_line_intersection2(struct line_pnts *APoints,
      *  we have to break both A and B  at once i.e. in one Vect_line_intersection () call.
      */
 
-    if (!same && !Vect_box_overlap(ABox, BBox)) {
+    /* don't modify original bboxes: make a copy of the bboxes */
+    ABox = *pABox;
+    BBox = *pBBox;
+    if (!with_z) {
+	ABox.T = BBox.T = PORT_DOUBLE_MAX;
+	ABox.B = BBox.B = -PORT_DOUBLE_MAX;
+    }
+
+    if (!same && !Vect_box_overlap(&ABox, &BBox)) {
 	return 0;
     }
 
     /* overlap box of A line and B line */
-    abbox = *ABox;
+    abbox = BBox;
     if (!same) {
-	if (abbox.N > BBox->N)
-	    abbox.N = BBox->N;
-	if (abbox.S < BBox->S)
-	    abbox.S = BBox->S;
-	if (abbox.E > BBox->E)
-	    abbox.E = BBox->E;
-	if (abbox.W < BBox->W)
-	    abbox.W = BBox->W;
-	if (abbox.T > BBox->T)
-	    abbox.T = BBox->T;
-	if (abbox.B < BBox->B)
-	    abbox.B = BBox->B;
+	if (abbox.N > ABox.N)
+	    abbox.N = ABox.N;
+	if (abbox.S < ABox.S)
+	    abbox.S = ABox.S;
+	if (abbox.E > ABox.E)
+	    abbox.E = ABox.E;
+	if (abbox.W < ABox.W)
+	    abbox.W = ABox.W;
+
+	if (with_z) {
+	    if (abbox.T > BBox.T)
+		abbox.T = BBox.T;
+	    if (abbox.B < BBox.B)
+		abbox.B = BBox.B;
+	}
     }
 
     abbox.N += rethresh;
     abbox.S -= rethresh;
     abbox.E += rethresh;
     abbox.W -= rethresh;
-    abbox.T += rethresh;
-    abbox.B -= rethresh;
+    if (with_z) {
+	abbox.T += rethresh;
+	abbox.B -= rethresh;
+    }
 
     if (APnts->n_points < 2 || BPnts->n_points < 2) {
 	G_fatal_error("Intersection with points is not yet supported");
@@ -1317,6 +1330,10 @@ Vect_line_check_intersection2(struct line_pnts *APoints,
 
     dig_line_box(APoints, &ABox);
     dig_line_box(BPoints, &BBox);
+    if (!with_z) {
+	ABox.T = BBox.T = PORT_DOUBLE_MAX;
+	ABox.B = BBox.B = -PORT_DOUBLE_MAX;
+    }
 
     if (!Vect_box_overlap(&ABox, &BBox)) {
 	return 0;
@@ -1332,17 +1349,21 @@ Vect_line_check_intersection2(struct line_pnts *APoints,
 	abbox.E = ABox.E;
     if (abbox.W < ABox.W)
 	abbox.W = ABox.W;
-    if (abbox.T > ABox.T)
-	abbox.T = ABox.T;
-    if (abbox.B < ABox.B)
-	abbox.B = ABox.B;
 
     abbox.N += rethresh;
     abbox.S -= rethresh;
     abbox.E += rethresh;
     abbox.W -= rethresh;
-    abbox.T += rethresh;
-    abbox.B -= rethresh;
+
+    if (with_z) {
+	if (abbox.T > ABox.T)
+	    abbox.T = ABox.T;
+	if (abbox.B < ABox.B)
+	    abbox.B = ABox.B;
+
+	abbox.T += rethresh;
+	abbox.B -= rethresh;
+    }
 
     /* initialize queue */
     bo_queue.count = 0;


=====================================
raster/r.proj/main.c
=====================================
--- a/raster/r.proj/main.c
+++ b/raster/r.proj/main.c
@@ -310,6 +310,11 @@ int main(int argc, char **argv)
     if ((in_proj_info = G_get_projinfo()) == NULL)
 	G_fatal_error(_("Unable to get projection info of input map"));
 
+    /* apparently the +over switch must be set in the input projection,
+     * not the output latlon projection */
+    if (curr_proj == PROJECTION_LL)
+	G_set_key_value("+over", "defined", in_proj_info);
+
     if ((in_unit_info = G_get_projunits()) == NULL)
 	G_fatal_error(_("Unable to get projection units of input map"));
 



View it on GitLab: https://salsa.debian.org/debian-gis-team/grass/commit/8e3586e30f1457fe4bfe05408b772ea9fd9a66c1

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/grass/commit/8e3586e30f1457fe4bfe05408b772ea9fd9a66c1
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20180606/d6c7a002/attachment-0001.html>


More information about the Pkg-grass-devel mailing list