def init_finish(queue): gs.set_capture_stderr(True) location = "test" gs.core._create_location_xy( # pylint: disable=protected-access tmp_path, location) grass_setup.init(tmp_path / location) gs.run_command("g.region", flags="p") queue.put(os.environ["GISRC"]) grass_setup.finish()
def _set_notebook_defaults(): """ This function sets several GRASS environment variables that are important for GRASS to run smoothly in Jupyter. It also allows GRASS to overwrite existing maps of the same name. """ # We want functions to raise exceptions and see standard output of # the modules in the notebook. gs.set_raise_on_error(True) gs.set_capture_stderr(True) # Allow overwrite of existing maps os.environ["GRASS_OVERWRITE"] = "1"
def initialize_GRASS_notebook(binary, grassdata, location, mapset): # create GRASS GIS runtime environment gisbase = subprocess.check_output([binary, "--config", "path"], universal_newlines=True).strip() os.environ['GISBASE'] = gisbase sys.path.append(os.path.join(gisbase, "etc", "python")) # do GRASS GIS imports import grass.script as gs import grass.script.setup as gsetup # set GRASS GIS session data rcfile = gsetup.init(gisbase, grassdata, location, mapset) # default font displays os.environ['GRASS_FONT'] = 'sans' # overwrite existing maps os.environ['GRASS_OVERWRITE'] = '1' gs.set_raise_on_error(True) gs.set_capture_stderr(True) # set display modules to render into a file (named map.png by default) os.environ['GRASS_RENDER_IMMEDIATE'] = 'cairo' os.environ['GRASS_RENDER_FILE_READ'] = 'TRUE' os.environ['GRASS_LEGEND_FILE'] = 'legend.txt'