WxNviz: Difference between revisions

From GRASS-Wiki
Jump to navigation Jump to search
m (WxNVIZ moved to WxNviz)
Line 76: Line 76:
* Vertical labels (take from geonames.org point data): like in http://tev.fbk.eu/marmota/blog/?p=82
* Vertical labels (take from geonames.org point data): like in http://tev.fbk.eu/marmota/blog/?p=82


== Google SoC Reports ==
# [http://lists.osgeo.org/pipermail/grass-dev/2008-June/038194.html 2008-06-06]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-June/038266.html 2008-06-13]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-June/038353.html 2008-06-20]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-June/038472.html 2008-06-27]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-July/038625.html 2008-07-04]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-July/038753.html 2008-07-11]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-July/038824.html 2008-07-18]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-July/039007.html 2008-07-25]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-August/039181.html 2008-08-01]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-August/039305.html 2008-08-08]
# [http://lists.osgeo.org/pipermail/grass-dev/2008-August/039503.html 2008-08-15]
=== Final report ===
==== OGSF Library ====
Changes in OGSF library, diff [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4032321&old=grass%2Ftrunk%2Flib%2Fogsf%4031313 before] and [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4032757&old=grass%2Ftrunk%2Flib%2Fogsf%4032585 after] indentation relevant diffs:
* [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4032658&old=grass%2Ftrunk%2Flib%2Fogsf%4032652 diff1]
* [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4032321&old=grass%2Ftrunk%2Flib%2Fogsf%4032034 diff2]
* [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4031684&old=grass%2Ftrunk%2Flib%2Fogsf%4031335 diff3]
* [http://trac.osgeo.org/grass/changeset?new=grass%2Ftrunk%2Flib%2Fogsf%4031323&old=grass%2Ftrunk%2Flib%2Fogsf%4031313 diff4]
==== Nviz command-line module ====
The nviz_cmd module currently supports:
* '''Surfaces''', attributes:
** topography - raster map or constant values used as elevation (z values) for the current surface.
** color - raster map or constant color to drape over the current surface.
** mask - raster map that controls the areas displayed from the current surface.
** transparency - raster map or constant value that controls the transparency of the current surface. The default is completely opaque.
** shininess - raster map or constant value that controls the shininess (reflectivity) of the current surface.
** emission - raster map or constant value that controls the light emitted from the current surface.
* For each loaded surface draw style:
** mode - coarse,fine,both
** style - wire,surface
** shading - flat,gouraud
** coarse and fine resolution
** wire color
* 2D/3D vector '''line''' features:
** line width, color
** mode - flat,surface (only for 2D)
** height (constant or above surface)
* 2D/3D vector '''point''' features:
** marker size, width, color
** marker - x,sphere,diamond,cube,box,gyro,aster,histogram
* '''Volume'''
** mode - isosurface,slice (currently only isosurface mode implemented)
** shading - flat,gouraud
** position, resolution
* Volume '''isosurface''' mode, attributes:
** level - reference isosurface level (height in map units).
** color - raster map or constant color to drape over the current volume.
** mask - raster map that controls the areas displayed from the current volume.
** transparency - raster map or constant value that controls the transparency of the current volume. The default is completely opaque.
** shininess - raster map or constant value that controls the shininess (reflectivity) of the current volume.
** emission - raster map or constant value that controls the light emitted from the current volume.
* '''Settings'''
** background color
* '''View''' parameters
** position, height, perspective, twist, zexag
* '''Output''' options
** filename, image size (width, height) and format (ppm, tif)
==== wxGUI Nviz extension ====


[[Category:Development]]
[[Category:Development]]

Revision as of 15:56, 23 May 2010

Back to wxGUI page.

Accepted Google Summer of Code 2008 project

wxNviz manual page.

Roadmap / Progress

Done

  • Initial cleaning underlying GRASS OpenGL gsurf OGSF Library
    • Doxygenization, code documentation
    • Eliminate fprintf(), changed to G_*_message(), G_warning(), G_fatal_error(), and G_debug()

wxGUI Nviz extension

  • Integration with Layer Manager, (un)loading data when map layer is (un)/checked
  • Integration with Map Display, auto-rendering functional
  • View settings (position, height, perspective, twist, z-exag), perspective can be changed by mouse wheel
  • Surface settings (attributes, draw mode)
  • Vector 2D/3D points and lines (including boundaries, areas, faces, volumes)
  • Saving layer properties in workspace file

What should work:

  • Start GRASS with NC dataset
  • Add raster map "elevation" and vector map "roadsmajor"
  • Start Nviz from Map display toolbar
  • Change view, surface attributes, draw mode (try also auto-rendering)
  • Enable/disable data layer from Layer Manager

In progress

  • Update OGSF Library documentation
  • Experimental prototype of CLI version of NVIZ (just very simple functionality)
http://trac.osgeo.org/grass/browser/grass/trunk/visualization/nviz2/cmd
  • Design experimental nvizlib used by CLI and wxPython NVIZ prototype
http://trac.osgeo.org/grass/browser/grass/trunk/lib/nviz
  • Experimental prototype of NVIZ toolbox for wxGUI (based on NVIZ CLI functionality)
http://trac.osgeo.org/grass/browser/grass/trunk/gui/wxpython/nviz
http://trac.osgeo.org/grass/browser/grass/trunk/gui/wxpython/gui_modules/nviz.py

wxGUI Nviz extension

  • Support for volumes

Nviz CLI

  • To be updated (based on wxGUI Nviz functionality)

Screenshots

Alpha prototype

2008-06-27: Display raster map from layer tree in 2.5D (surface)
2008-07-05: Support for vector data (2D lines) added
2008-07-26: Support for vector point data
2008-08-02: 3D vector data support
2008-08-09: Initial support for volumetric data

 

Ideas