<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">For web grass the ideal is to have a dedicated rendering system, based on GRASS data read by C++ in a buffer and rendered to html5 canvas or webgl directly. there is a gitter page if anyone is interested on web grass and want discuss its further development. <div class=""><br class=""><div class="">For the jupyter notebook IMHO the easiest way to interact with grass, is to use a js framework as canvas and load images by converting grass data to jpeg or to  tiled images (ipyleaflet or cesiumpy are good options) I use gdal2tiles and gdaldem to generate ipyleaflet friendly images. </div><div class=""><br class=""></div><div class="">The cons of this, as Rashad said, is that the grass data gets copied server side and will not be “in sync” in case the raster map is subject to some processing .. to keep the maps up-to-date I generate an sha-ash code for each raster and I connect it to a refresh button (ipywidgets) to regenerate the tiles or jpeg if the linked raster has changed.</div><div class=""><br class=""></div><div class="">The mapserver option introduce one more dependency … which can maybe annoying, but avoid to copy data by loading grass raster linked directly to the grass data  from a map file (needs goal-grass plugin)</div><div class=""><br class=""></div><div class="">I use the “js" method in a pyqt gui application loading leaflet and cesium in a qtwebengine, for personal use it works quite well .. but is hackish and suboptimal …</div><div class=""><br class=""></div><div class="">Massimo.</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">On Feb 3, 2017, at 2:14 PM, Margherita Di Leo <<a href="mailto:diregola@gmail.com" class="">diregola@gmail.com</a>> wrote:<div><blockquote type="cite" class=""><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class=""><br class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">On Thu, Jan 26, 2017 at 6:37 PM, Vaclav Petras <span dir="ltr" class=""><<a href="mailto:wenzeslaus@gmail.com" target="_blank" class="">wenzeslaus@gmail.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class="gmail_extra"><br class=""><div class="gmail_quote">[...]<br class=""><span class="gmail-"><div class=""><br class=""></div></span><div class="">Not directly related. Jupyter Notebook is independent and with some additions of interactive maps it could be used as a web interface for advanced or Python aware users. It can be used even now, but for visualization, you need to deal with d.* commands (which is fine in general but not for zooming, panning, ...) or you need to plug in other solution for visualization (like MapServer reading from GRASS GIS Database). There might be some code sharing between (some/any) web GRASS and Jupyter on the side of Python API or JavaScript map display (if applicable).<br class=""></div></div></div></div></blockquote><div class=""> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class="gmail_extra"><div class="gmail_quote"><div class=""></div><span class="gmail-"><div class=""></div></span></div></div></div></blockquote></div><div class="gmail_extra"><br class=""></div>See: <a href="https://github.com/SylvainCorlay/ipyleaflet" class="">https://github.com/SylvainCorlay/ipyleaflet</a><br clear="all" class=""><div class=""><br class=""></div>-- <br class=""><div class="gmail_signature"><div dir="ltr" class=""><div class=""><div dir="ltr" class=""><div class=""><div dir="ltr" class=""><div class=""><div dir="ltr" class=""><div class=""><font color="#666666" class="">Margherita Di Leo</font></div></div></div></div></div></div></div></div></div>
</div></div>
_______________________________________________<br class="">grass-dev mailing list<br class=""><a href="mailto:grass-dev@lists.osgeo.org" class="">grass-dev@lists.osgeo.org</a><br class="">https://lists.osgeo.org/mailman/listinfo/grass-dev</div></blockquote></div><br class=""></div></div></body></html>