[GRASS-user] GRASS Environment Variables

Joseph Kariuki joehene at gmail.com
Wed Apr 5 05:43:29 PDT 2017


Hi Andres, I have run the code in pycharm but still raises an error

/usr/bin/python2.7 /home/hempire/PycharmProjects/GRASS/ingrass.py
> Traceback (most recent call last):
>   File "/home/hempire/PycharmProjects/GRASS/ingrass.py", line 43, in
> <module>
>     gscript.run_command('g.region', n=float(n), s=float(s), e=float(e),
> w=float(w), ewres=float(res), nsres=float(res))
> NameError: name 'gscript' is not defined
>
> Process finished with exit code 1
>


However on terminal it executes with no errors. I will stick to using
terminal. PyCharm is limiting.




Kind Regards,

*Joseph Kariuki*

*Geospatial Engineer** | **GIS / Web Developer*

On Wed, Apr 5, 2017 at 2:12 AM, Andres Solarte <e.andres.solartec at gmail.com>
wrote:

> Hello Joseph,
>
> This is the way I work with grass from python:
>
>
> #!/usr/bin/env python
> # -*- coding: utf-8 -*-
>
> import os
> import sys
>
> #1. Define function
>
> def conectar(location,mapset):
> # path to the GRASS GIS launch script
> grass7bin = '/usr/bin/grass72'
>
> # Set GISDBASE environment variable
> gisdb = "/media/andres/Andres/TesisGrass"
> os.environ['GISDBASE'] = gisdb
> # query GRASS 7 itself for its GISBASE
> gisbase = "/usr/lib/grass72"
> os.environ['GISBASE'] = gisbase
>
> # define GRASS-Python environment
> gpydir = "/usr/lib/grass72/etc/python"
> sys.path.append(gpydir)
> # import GRASS Python bindings
> import grass.script.setup as gsetup
>
> ############ launch session
> gsetup.init(gisbase, gisdb, location, mapset)
>
> #2. Now you can connect with your projects
>
> location = "your location"
> mapset = "your mapset"
>
> conectar(location,mapset)
>
> #3. Call function (examples)
>
> gscript.run_command('g.region', n=float(n), s=float(s), e=float(e),
> w=float(w), ewres=float(res), nsres=float(res))
>
> gscript.run_command("r.in.gdal", input="/home/..../image.tif",
> flags='e',output = "image")
>
> 2017-04-04 11:12 GMT-03:00 Joseph Kariuki <joehene at gmail.com>:
>
>> Hi?
>>
>> I have been trying to call GRASS modules using python outside GRASS
>> session, I am coding in PyCharm however, I am having a problem importing
>> grass scripts and the solution being provided is setting GRASS environment
>> variables. How do I go about that so to import GRASS modules in Pycharm?
>>
>>
>> Kind Regards,
>>
>> *Joseph Kariuki*
>>
>> *Geospatial Engineer** | **GIS / Web Developer*
>>
>> _______________________________________________
>> grass-user mailing list
>> grass-user at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/grass-user
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20170405/72c882f1/attachment.html>


More information about the grass-user mailing list