WxNviz GSoC 2008
		
		
		
		Jump to navigation
		Jump to search
		
See wxNviz page.
Accepted Google Summer of Code 2008 project, see also related GSoC 2010 and GSoC 2011 page.
Weekly Reports
- 2008-06-06
 - 2008-06-13
 - 2008-06-20
 - 2008-06-27
 - 2008-07-04
 - 2008-07-11
 - 2008-07-18
 - 2008-07-25
 - 2008-08-01
 - 2008-08-08
 - 2008-08-15
 
Final report
OGSF Library
Changes in OGSF library, diff before and after indentation relevant diffs:
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
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)
 
- Design experimental nvizlib used by CLI and wxPython NVIZ prototype
 
- Experimental prototype of NVIZ toolbox for wxGUI (based on NVIZ CLI functionality)
 
wxGUI Nviz extension
- Support for volumes
 
Nviz CLI
- To be updated (based on wxGUI Nviz functionality)