<html><head></head><body><div style="font-family:Helvetica Neue, Helvetica, Arial, sans-serif;font-size:16px;"><div></div>
            <div>Dear Moritz, </div><div><br></div><div>thanks for the answer and the examples. </div><div>I'll try to put the functions and files in this format and test them like that.</div><div>I am not sure how to build these makefile files but I'll try to follow the patterns I find in the other examples of modules.</div><div>Once this is done, I'll post it here.</div><div><br></div><div>Which GRASS version I should use to do that?</div><div><br></div><div>Regarding the comparison with the other GRASS tools, LSMetrics is complementary to many of the functions the r.li suite offers. I still could not test r.pi since I had some trouble installing it, but I'll try it again  so that I can compare both packages. I believe they are also somehow complementary in many of the functions.</div><div><br></div><div>Best,</div><div>Bernardo</div><div><br></div><div><br></div><div><br></div>
            
            <div id="yahoo_quoted_8737843796" class="yahoo_quoted">
                <div style="font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:13px;color:#26282a;">
                    
                    <div>
                        Em quarta-feira, 7 de fevereiro de 2018 13:15:03 BRST, Moritz Lennert <mlennert@club.worldonline.be> escreveu:
                    </div>
                    <div><br></div>
                    <div><br></div>
                    <div><div dir="ltr">Dear Bernardo,<br clear="none"><br clear="none">On 07/02/18 14:55, Bernardo Santos wrote:<br clear="none">> Dear list,<br clear="none">> <br clear="none">> We have been developing a python application called LSMetrics to <br clear="none">> calculate landscape metrics for environmental management and ecological <br clear="none">> research. All functions/metrics use GRASS modules in the process of <br clear="none">> calculation. More information here:<br clear="none">> <a shape="rect" href="https://github.com/LEEClab/LS_METRICS/wiki" target="_blank">https://github.com/LEEClab/LS_METRICS/wiki</a><br clear="none"><br clear="none">Great, thanks !<br clear="none"><br clear="none">Out of curiosity: could you maybe explain how this application compares <br clear="none">to the existing r.li suite of modules in GRASS core <br clear="none">(<a shape="rect" href="https://grass.osgeo.org/grass74/manuals/r.li.html" target="_blank">https://grass.osgeo.org/grass74/manuals/r.li.html</a>) and the r.pi suite <br clear="none">of modules in GRASS addons (there seems to be a problem with building <br clear="none">the manual pages, but you can get an idea by looking at the <br clear="none">description.html file here: <br clear="none"><a shape="rect" href="https://trac.osgeo.org/grass/browser/grass-addons/grass7/raster/r.pi" target="_blank">https://trac.osgeo.org/grass/browser/grass-addons/grass7/raster/r.pi</a>) ? <br clear="none">I am no expert in the field of landscape metrics and am just wondering <br clear="none">how this all fits into the picture.<br clear="none"><br clear="none">> <br clear="none">> Basically we have several python functions, each of which calculates a <br clear="none">> different metric. All of them are then called by a single function that <br clear="none">> can coordinate the calculation of several metrics for several maps in a row.<br clear="none">> Currently the metrics can be calculated for input maps using a grafical <br clear="none">> interface (we call it from the GRASS shell using "python <br clear="none">> LS_metrics_v1_0_0.py") or by calling python shell from the GRASS shell <br clear="none">> and then using python scripting to call the functions (importing <br clear="none">> functions and then calling them directly). We wish to transform these <br clear="none">> function into one (or more than one) grass addon.<br clear="none">> <br clear="none">> Then I have two questions:<br clear="none">> - Do you think it would be better to build a single addon (e.g. called <br clear="none">> r.ls.metrics) so that each metrics is defined by a parameter (e.g. <br clear="none">> method = "patch_size", "fragment_size", "structural connectivity" ...), <br clear="none">> or rather a set of addons, each one corresponding to a single landscape <br clear="none">> metrics (e.g. r.ls.patch_size, r.ls.fragment_size, ...)?<br clear="none"><br clear="none">The other two suites have gone for separate modules for each metric. I'm <br clear="none">not sure what the rationale was behind that choice, but I guess we <br clear="none">should try to be consistent across similar module suites.<div class="yqt0632248053" id="yqtfd04587"><br clear="none"><br clear="none">> <br clear="none">> - Also, I have looked on how to build the addon in GRASS help pages but <br clear="none">> I am not sure about some details. Can you send me some references to <br clear="none">> ease that process?</div><br clear="none"><br clear="none">The basic idea for a module for addons is to create a directory with the <br clear="none">source file(s), the html file for the manual page and a Makefile.<br clear="none"><br clear="none">Please follow the general submitting rules as explained at <br clear="none">https://trac.osgeo.org/grass/wiki/Submitting.<br clear="none"><br clear="none">To get an idea of the structure of a suite of modules in Addons, you <br clear="none">could look at the recently added r.sentinel tools: <br clear="none"><a shape="rect" href="https://trac.osgeo.org/grass/browser/grass-addons/grass7/raster/r.sentinel" target="_blank">https://trac.osgeo.org/grass/browser/grass-addons/grass7/raster/r.sentinel</a><br clear="none"><br clear="none">Moritz<div class="yqt0632248053" id="yqtfd12006"><br clear="none"></div></div></div>
                </div>
            </div></div></body></html>