<div dir="ltr">Adrien,<div><br></div><div>Thank you! I'll give it a try...</div><div><br></div><div>Tom</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Apr 7, 2015 at 10:44 AM, Adrien André <span dir="ltr"><<a href="mailto:adrien.andre@onf.fr" target="_blank">adrien.andre@onf.fr</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dylan, Tom,<br>
<br>
not about the main question, but to complete Tom's answer:<br>
<br>
I had once to vectorize a raster stream network according to flow direction.<br>
You can find here the Python script i wrote:<br>
<a href="https://github.com/adrienandrem/r.to.vect.dir" target="_blank">https://github.com/adrienandrem/r.to.vect.dir</a><br>
<br>
I hope this helps.<br>
<br>
<br>
Regards,<br>
<br>
Adrien<br>
<span class=""><br>
<br>
Le 05/04/2015 14:48, Thomas Adams a écrit :<br>
> Hi Dylan!<br>
><br>
> (I'm about to start a new position — more on that later). This may help…<br>
><br>
> I had a problem somewhat analogous to this a little while ago, where I<br>
> needed to create a text file that, among a couple of other things,<br>
> needed to identify the 'downstream' pixel for all grid cells within a<br>
> basin area. I was able to do that with help here, but an issue I had was<br>
> that the integer IDs needed to be numbered from 0-N in basically<br>
> upstream to downstream order, but after my GRASS analysis I had IDs with<br>
> some large number ranging to some other very large number for the IDs<br>
> and the 'downstream IDs' (with values skipped and not in order). I got<br>
> help writing a Perl script that uses hashes for a lookup table to relate<br>
> the old ID to the new ID.<br>
><br>
> Perhaps you could do something like this, starting with a new vector map<br>
> (copy) where you could simply update the attributes using an SQL query?<br>
> Some coding would be needed, obviously…<br>
><br>
> Just my 2 cents…<br>
><br>
> Cheers!<br>
> Tom<br>
><br>
> On Thu, Apr 2, 2015 at 6:31 PM, Dylan Beaudette<br>
</span><div><div class="h5">> <<a href="mailto:dylan.beaudette@gmail.com">dylan.beaudette@gmail.com</a> <mailto:<a href="mailto:dylan.beaudette@gmail.com">dylan.beaudette@gmail.com</a>>> wrote:<br>
><br>
>     Hi,<br>
><br>
>     Once again, I am reminded that complex spatial analysis in other<br>
>     software<br>
>     can usually be reduced to a couple of lines of code in GRASS-- thanks!<br>
><br>
>     Here is a fun question. Suppose you have a set of line segments, or<br>
>     boundaries that are the result of a digitizing process that generated<br>
>     segments out of "order":<br>
><br>
>           2             4              1           3<br>
>     O---------+-----------------+------------+------O<br>
><br>
>     'O' = start / end point<br>
>     '+' = vertex<br>
><br>
>     ... in this case "order" is associated with order in which records<br>
>     appear<br>
>     in the attribute table and the order in which segments are drawn on the<br>
>     screen.<br>
><br>
>     Is there a module, or set of modules that could be used to re-order the<br>
>     segments so that the order of records in the attribute table and drawing<br>
>     order is:<br>
><br>
>           1             2              3           4<br>
>     O---------+-----------------+------------+------O<br>
><br>
>     Note that I do not wan't to shuffle the linkages between geometry and<br>
>     attributes, rather, I would like to re-order the segments and attribute<br>
>     table according to the linear position within the set of contiguous<br>
>     boundaries or polyline.<br>
><br>
>     Here is an example set of lines in ASCII format, WGS84 GCS.<br>
><br>
>     ORGANIZATION:<br>
>     DIGIT DATE:<br>
>     DIGIT NAME:   dylan<br>
>     MAP NAME:<br>
>     MAP DATE:     Thu Apr  2 11:46:34 2015<br>
>     MAP SCALE:    1<br>
>     OTHER INFO:<br>
>     ZONE:         0<br>
>     MAP THRESH:   0.000000<br>
>     VERTI:<br>
>     B  6 1<br>
>      -118.71960108 36.71846736<br>
>      -118.71946261 36.71783146<br>
>      -118.71905508 36.71717314<br>
>      -118.71863837 36.71610377<br>
>      -118.71807413 36.71546352<br>
>      -118.71786286 36.71527706<br>
>      2     132<br>
>     B  3 1<br>
>      -118.7153795 36.73403608<br>
>      -118.71537992 36.73272737<br>
>      -118.71538933 36.73177277<br>
>      2     133<br>
>     B  3 1<br>
>      -118.71536851 36.76205202<br>
>      -118.7153724 36.7609144<br>
>      -118.71537619 36.75980591<br>
>      2     150<br>
>     B  2 1<br>
>      -118.73128842 36.69749903<br>
>      -118.73130166 36.69760244<br>
>      2     175<br>
>     B  5 1<br>
>      -118.71538933 36.73177277<br>
>      -118.7153944 36.73125742<br>
>      -118.71573607 36.73044156<br>
>      -118.71618977 36.72875872<br>
>      -118.71651025 36.72811846<br>
>      2     581<br>
>     B  15 1<br>
>      -118.71651025 36.72811846<br>
>      -118.71661716 36.72766138<br>
>      -118.71660977 36.7273294<br>
>      -118.71645785 36.72668322<br>
>      -118.71689758 36.7261392<br>
>      -118.71724087 36.72567564<br>
>      -118.71747107 36.7248177<br>
>      -118.71753527 36.72390024<br>
>      -118.71787045 36.72307308<br>
>      -118.71797278 36.72237579<br>
>      -118.71781832 36.72073331<br>
>      -118.71825483 36.72004703<br>
>      -118.71908689 36.71948153<br>
>      -118.71963768 36.71863545<br>
>      -118.71960108 36.71846736<br>
>      2     602<br>
>     B  8 1<br>
>      -118.7180943 36.70872005<br>
>      -118.71827421 36.7083356<br>
>      -118.71841915 36.7080259<br>
>      -118.7190169 36.70752707<br>
>      -118.72008403 36.70694237<br>
>      -118.72042476 36.70636815<br>
>      -118.72049695 36.70608245<br>
>      -118.7212077 36.70547966<br>
>      2     604<br>
>     B  15 1<br>
>      -118.7212077 36.70547966<br>
>      -118.721692  36.70506892<br>
>      -118.72256889 36.70442599<br>
>      -118.72372477 36.702873<br>
>      -118.72417965 36.70213899<br>
>      -118.72496002 36.70190631<br>
>      -118.72660809 36.70183505<br>
>      -118.72765407 36.70118732<br>
>      -118.72831767 36.70100376<br>
>      -118.72866574 36.7007615<br>
>      -118.72887421 36.70026501<br>
>      -118.72998965 36.69849669<br>
>      -118.73066541 36.69798083<br>
>      -118.73118943 36.69770441<br>
>      -118.73130166 36.69760244<br>
>      2     609<br>
>     B  8 1<br>
>      -118.7153867 36.75138736<br>
>      -118.7153804 36.7500365<br>
>      -118.7153634 36.7464107<br>
>      -118.7153465 36.742785<br>
>      -118.7153296 36.7391593<br>
>      -118.71533791 36.73753527<br>
>      -118.7153438 36.7363838<br>
>      -118.7153795 36.73403608<br>
>      2     610<br>
>     B  13 1<br>
>      -118.71786286 36.71527706<br>
>      -118.71763335 36.71507451<br>
>      -118.71748992 36.71480774<br>
>      -118.71754381 36.71369999<br>
>      -118.71750723 36.7131568<br>
>      -118.71786592 36.71228789<br>
>      -118.71745106 36.71129755<br>
>      -118.71716489 36.71079564<br>
>      -118.71709787 36.71043286<br>
>      -118.71712906 36.71006868<br>
>      -118.71740871 36.70978478<br>
>      -118.717644  36.709369<br>
>      -118.7180943 36.70872005<br>
>      2     612<br>
>     B  7 1<br>
>      -118.71411256 36.77582538<br>
>      -118.71445897 36.77550631<br>
>      -118.71478471 36.77508229<br>
>      -118.7149828 36.77446623<br>
>      -118.71532537 36.77406797<br>
>      -118.7153339 36.7717931<br>
>      -118.71534777 36.76808916<br>
>      2     613<br>
>     B  3 1<br>
>      -118.71534777 36.76808916<br>
>      -118.71536   36.7645405<br>
>      -118.71536851 36.76205202<br>
>      2     622<br>
>     B  4 1<br>
>      -118.71537619 36.75980591<br>
>      -118.7153848 36.7572883<br>
>      -118.7153973 36.7536622<br>
>      -118.7153867 36.75138736<br>
>      2     623<br>
><br>
><br>
>     I have been able to convert these segments into polylines, however, I am<br>
>     not sure how one would go about computing the position along the<br>
>     polylines.<br>
>     Perhaps a linear referencing system?<br>
><br>
><br>
><br>
>     Thanks!<br>
>     Dylan<br>
>     _______________________________________________<br>
>     grass-user mailing list<br>
</div></div>>     <a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.org</a> <mailto:<a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.org</a>><br>
<div class="HOEnZb"><div class="h5">>     <a href="http://lists.osgeo.org/mailman/listinfo/grass-user" target="_blank">http://lists.osgeo.org/mailman/listinfo/grass-user</a><br>
><br>
><br>
><br>
><br>
> --<br>
> Thomas E Adams, III<br>
> 718 McBurney Drive<br>
> Lebanon, OH 45036<br>
><br>
> <a href="tel:1%20%28513%29%20739-9512" value="+15137399512">1 (513) 739-9512</a> (cell)<br>
><br>
><br>
><br>
> _______________________________________________<br>
> grass-user mailing list<br>
> <a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.org</a><br>
> <a href="http://lists.osgeo.org/mailman/listinfo/grass-user" target="_blank">http://lists.osgeo.org/mailman/listinfo/grass-user</a><br>
><br>
</div></div><br>_______________________________________________<br>
grass-user mailing list<br>
<a href="mailto:grass-user@lists.osgeo.org">grass-user@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/grass-user" target="_blank">http://lists.osgeo.org/mailman/listinfo/grass-user</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Thomas E Adams, III<div>718 McBurney Drive</div><div>Lebanon, OH 45036</div><div><br></div><div>1 (513) 739-9512 (cell)</div><div><br></div></div>
</div>