GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
r.li.daemon(1) GRASS GIS User's Manual r.li.daemon(1)

This documentation is focused on scientists and developers who wants to implement a new landscape index computation. Refer to the r.li modules overview and g.gui.rlisetup module for user-focused documentation.

r.li.daemon provides support for landscape index calculations on raster maps. It hides the management of areas, defined using g.gui.rlisetup command. It is not used like a standalone program, but its functions are a library used by all r.li.[index] commands.
This description is a tutorial for new index definition.
The developer has only to focus on a unique area, like in mathematical definitions, and has to write a C implementation of it.
The areas are defined using a struct called area_des and it members are explained in the source code (doxygen) documentation.

To write a new index only two steps are needed:

1
Define a function and insert its declaration on file index.h in r.li.daemon folder, which contains all index declarations. This function must be of this kind:

        int index(int fd, char ** par, area_des ad, double * result)

    
where:
  • fd is the raster map descriptor
  • par is a matrix for special parameter (like argv in main)
  • ad is the area descriptor
  • result is where to put the index calculation result
This function has to return 1 on success and 0 otherwise. This function type is defined using typedef named rli_func.
2
Create a main for command line arguments parsing, and call the function

        int calculateIndex(char *file, rli_func *f,
                           char **parameters, char *raster, char *output);

    
from the r.li library, for starting raster analysis.
It follows the meaning of parameters:
  • file name of configuration file created using g.gui.rlisetup
  • f pointer to index function defined above
  • parameters pointer to index special parameters
  • raster name of raster to use
  • output output file name

Compile it using a changed Makefile based on the file for r.li.patchdensity.

Refer to the r.li library documentation in the source code and implementation of r.li modules for details and examples.

Using GRASS library function to access raster rows can slow down moving windows execution. It is recommended to use

RLI_get_cell_row(int, int, area_des)
RLI_get_fcell_row(int, int, area_des)
RLI_get_dcell_row(int, int, area_des)


to use an ad hoc build memory management developed to speed up the system. The documentation is in doxygen files.

old r.le manual
r.li - package overview
g.gui.rlisetup

McGarigal, K., and B. J. Marks. 1995. FRAGSTATS: spatial pattern analysis program for quantifying landscape structure. USDA For. Serv. Gen. Tech. Rep. PNW-351. (PDF)

Claudio Porta and Lucio Davide Spano, students of Computer Science University of Pisa (Italy).
Commission from Faunalia Pontedera (PI)
Rewritten from "r.le.setup" by William L. Baker
Various bug fixes by Markus Metz
This program is free software under the GPL (>=v2) Read the COPYING file that comes with GRASS for details.

Main index | Topics index | Keywords index | Graphical index | Full index

© 2003-2021 GRASS Development Team, GRASS GIS 7.8.6 Reference Manual

GRASS 7.8.6

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.