<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"><meta name="Generator" content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Verdana",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:130289632;
        mso-list-type:hybrid;
        mso-list-template-ids:1780920198 67567617 67567619 67567621 67567617 67567619 67567621 67567617 67567619 67567621;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l1
        {mso-list-id:1848910070;
        mso-list-type:hybrid;
        mso-list-template-ids:615813192 67567617 1976573378 67567621 67567617 67567619 67567621 67567617 67567619 67567621;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l1:level2
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Verdana",sans-serif;
        mso-fareast-font-family:Calibri;
        mso-bidi-font-family:"Times New Roman";}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<style type="text/css">body { font-family:'DejaVu Sans Mono'; font-size:12px}</style>
</head>
<body lang="DE" link="#0563C1" vlink="#954F72"><div>Hi Uwe,</div><div><br></div><div>Am 25.02.2016, 09:44 Uhr, schrieb Uwe Fischer <gisfisch@t-online.de>:<br></div><div><br></div><div><br></div><blockquote style="margin: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div class="WordSection1"><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif">Hello list,</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif">I have a line shapefile (call it input.shp, derived from polygons) that i'd like to turn it into clean lines (output.shp) using the processing toolbox (PT). Clean lines means: no duplicates, broken at intersections. Dangles and pseudo nodes are uninteresting here.</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif">In my understanding, it's necessary to perform the following steps: 1. snap vertices together within small threshold, 2. break lines, 2. remove duplicates.</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif">After entering my values and options in the v.clean.advanced input mask of the PT, some problems and questions come up (I tried QGIS 2.10 and 2.12 on Windows):</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><span style="font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">         </span></span></span><span style="font-family:"Verdana",sans-serif">the PT input mask does not accept more than one value in the input field for threshold. In fatal contrast to that, in the help text it reads that there have to be multiple threshold values entered if multiple cleaning tools are used. In my case, the box doesn't accept a comma separator nor an additional numeric value.</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l0 level1 lfo1"><span style="font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">         </span></span></span><span style="font-family:"Verdana",sans-serif">the system puts together a command string (found in PT history) containing values I never did enter and I don't want to use:</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal" style="margin-left:35.4pt"><i><span style="font-family:"Verdana",sans-serif">processing.runalg("grass:v.clean.advanced","D:/input.shp","snap,break,rmdupl",0.01,"655282.346386,662305.603469,5871019.54139,5877018.65557",-1,0.0001,"D:/output.shp",None)</span></i></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p></div></blockquote><div><br></div><blockquote style="margin: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div class="WordSection1"><p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l1 level1 lfo2"><span style="font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">         </span></span></span><span style="font-family:"Verdana",sans-serif">please note the above values before „D:/output.shp“: they smell like default values for snapping and small area threshold, but I never did choose those values! Where the hell do they come from?</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p></div></blockquote><div>The values you are wondering about derive from the default values for snapping and remove small areas (does not apply for lines anyway) under the hidden "Advanced parameters" field in the mask. -1 for snapping means no snapping, 0,000100 for removing small areas will most likely remove no area at all cause its too small (in case of polygons)</div><div><br></div><blockquote style="margin: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div class="WordSection1"><p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l1 level1 lfo2"><span style="font-family:Symbol"><span style="mso-list:Ignore">·<span style="font:7.0pt "Times New Roman"">         </span></span></span><span style="font-family:"Verdana",sans-serif">the result is poor: lines are not broken and dups are not removed.</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif">Does anybody know what went wrong?</span></p><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p></div></blockquote><div>I think the tool does not work as expected, cause you are not able to insert anything else than one number in threshold. Furthermore on a german OS, even switched to english language, the decimal separator in all tools is the comma and not a point. The comma gets changed to point for the algo, while the comma should be the separator for the threshold values. I think this can not work. How should the algo distinguish between a decimal input and a separator?</div><div> </div><div>Would be nice to know if this happens only on computers where the comma is the decimal separator, or if the threshold field does not accept multiple values in any scenario.</div><blockquote style="margin: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div class="WordSection1"><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif"><o:p> </o:p></span></p></div></blockquote><div>So best to do would be to skip the v.clean.advanced and to do it step by step with v.clean, while you can spare the snap part cause you can already set this in the "Advanced options" (While I never found out when this will be executed: before the main action or afterwards or even in between??? Documentation for grass is ... thin and only nerd-proof)</div><div><br></div><div><br></div><blockquote style="margin: 0 0 0.80ex; border-left: #0000FF 2px solid; padding-left: 1ex"><div class="WordSection1"><p class="MsoNormal"><span style="font-family:"Verdana",sans-serif;mso-fareast-language:DE">Best regards, Uwe</span></p><p class="MsoNormal"><o:p> </o:p></p></div></blockquote><div>Cheers</div><div>Bernd<br></div><br><br><div id="M2Signature"><div>-- </div><div>Bernd Vogelgesang<br>Siedlerstraße 2<br>91083 Baiersdorf/Igelsdorf<br>Tel: 09133-825374</div></div></body></html>